First commit
This commit is contained in:
commit
46926935fb
14 changed files with 1089 additions and 0 deletions
28
examples/00-knownMac.go
Normal file
28
examples/00-knownMac.go
Normal file
|
@ -0,0 +1,28 @@
|
|||
package main
|
||||
|
||||
import "git.massivebox.net/massivebox/go-catprinter"
|
||||
|
||||
func main() {
|
||||
|
||||
const mac = "41:c2:6f:0f:90:c7"
|
||||
|
||||
c, err := catprinter.NewClient()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
c.Debug.Log = true
|
||||
|
||||
opts := catprinter.NewOptions()
|
||||
defer c.Stop()
|
||||
|
||||
if err = c.Connect(mac); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
err = c.PrintFile("../demo.jpg", opts)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
}
|
44
examples/01-unknownMac.go
Normal file
44
examples/01-unknownMac.go
Normal file
|
@ -0,0 +1,44 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"git.massivebox.net/massivebox/go-catprinter"
|
||||
"log"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
const name = "x6h"
|
||||
|
||||
c, err := catprinter.NewClient()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
c.Debug.Log = true
|
||||
|
||||
opts := catprinter.NewOptions()
|
||||
defer c.Stop()
|
||||
|
||||
// let's find the MAC from the device name
|
||||
var mac string
|
||||
devices, err := c.ScanDevices(name)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
for deviceMac, deviceName := range devices {
|
||||
// you should ask the user to choose the device here, we will pretend they selected the first
|
||||
log.Println("Connecting to", deviceName, "with MAC", deviceMac)
|
||||
mac = deviceMac
|
||||
break
|
||||
}
|
||||
|
||||
if err = c.Connect(mac); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
err = c.PrintFile("../demo.jpg", opts)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
}
|
46
examples/02-options.go
Normal file
46
examples/02-options.go
Normal file
|
@ -0,0 +1,46 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"git.massivebox.net/massivebox/go-catprinter"
|
||||
"image/jpeg"
|
||||
"os"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
const mac = "41:c2:6f:0f:90:c7"
|
||||
|
||||
c, err := catprinter.NewClient()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
c.Debug.Log = true
|
||||
defer c.Stop()
|
||||
|
||||
if err = c.Connect(mac); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
// note that for this we need to open the image as image.Image manually!
|
||||
file, _ := os.Open("../demo.jpg")
|
||||
defer file.Close()
|
||||
img, _ := jpeg.Decode(file)
|
||||
|
||||
// for now, we will use default options
|
||||
opts := catprinter.NewOptions()
|
||||
fmtImg := c.FormatImage(img, opts)
|
||||
|
||||
// now you should display your image to the user and ask for what they want to change
|
||||
// in this example, we will pretend they want to disable dithering
|
||||
opts = opts.SetDither(false)
|
||||
fmtImg = c.FormatImage(img, opts)
|
||||
|
||||
// you can show the image again and make all the adjustments you see fit with opts.SetXYZ
|
||||
// when the user decides to print, we can use
|
||||
err = c.Print(fmtImg, opts, true) // NOTE THE TRUE HERE! It means the image is already formatted
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue