阿尔梅勒 2021-09-30 15:00 采纳率: 25%
浏览 152
已结题

java将png或jpg图片转为单色BMP格式的图片。

img

最近需要做一个佳博标签打印机打印标签。
里面会出现图片。如何将这种图片转换成单色BMP图片。现在处理完全是黑色,不对。

img

代码如下:


     public static void image2RGB565Bmp(String filePath, String newFileName) {
        try {
            BufferedImage sourceImg = ImageIO.read(new File(filePath));
            int h = sourceImg.getHeight(), w = sourceImg.getWidth();
            int[] pixel = new int[w * h];
            PixelGrabber pixelGrabber = new PixelGrabber(sourceImg, 0, 0, w, h, pixel, 0, w);
            pixelGrabber.grabPixels();

            MemoryImageSource m = new MemoryImageSource(w, h, pixel, 0, w);
            Image image = Toolkit.getDefaultToolkit().createImage(m);
            // 单色为图
            BufferedImage buff = new BufferedImage(w, h, BufferedImage.TYPE_BYTE_BINARY);
            buff.createGraphics().drawImage(image, 0, 0 ,null);
            ImageIO.write(buff, "BMP", new File(saveFileName));
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

还有一个问题。

// 将a图片下载到打印机缓存里,缓存名为VCC.BMP
TscLibDll.INSTANCE.downloadbmp("C:\\a.png", "VCC.BMP");
//打印VCC.BMP图片
TscLibDll.INSTANCE.sendcommand("PUTBMP 130,1000,\"VCC.BMP\"");

如何将VCC.BMP打印时旋转90度

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 10月8日
    • 创建了问题 9月30日

    悬赏问题

    • ¥15 孟德尔随机化结果不一致
    • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
    • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
    • ¥15 谁有desed数据集呀
    • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
    • ¥15 关于#hadoop#的问题
    • ¥15 (标签-Python|关键词-socket)
    • ¥15 keil里为什么main.c定义的函数在it.c调用不了
    • ¥50 切换TabTip键盘的输入法
    • ¥15 可否在不同线程中调用封装数据库操作的类