问题背景
一些打印机需要的都是1bit color bmp图片,但是golang中没有直接的办法,官方image库最低bpp为8,打印机无法使用。
在github上找到了很多资源,都没有直接能转的,突然看到一个老外,可以支持plattered图片转位1bit color bmp图片,然后自己先把图片转位plattered黑白图片,继续使用该黑白图片转位1bit color bmp,果断写了一段测试代码,没想到直接成功了。
这样打印机就能直接用了。从而实现程序自动化打印。
解决方法
package main
import (
"bufio"
"github.com/sergeymakinen/go-bmp"
"image"
"image/color"
"image/draw"
_ "image/jpeg"
_ "image/png"
"os"
)
func main() {
// 解码PNG图像
file, err := os.Open("./logo.png")
if err != nil {
panic(err)
}
//img, _, err := image.Decode(file)
//if err != nil {
// panic(err)
//}
// 解码