Java Ubuntu POS打印机手动设置和图像打印

Java Ubuntu POS打印机手动设置和图像打印,java,ubuntu,printing,ubuntu-16.04,linux-device-driver,Java,Ubuntu,Printing,Ubuntu 16.04,Linux Device Driver,我有来自厦门荣达科技的RP58E型热敏收据打印机。我知道这个没有Linux驱动程序,但我设法手动设置了它。我所做的:打印机->添加打印机->选择未知->转发->在“从数据库选择打印机”下,我选择了“通用建议->转发->这里我选择了“仅文本建议”,然后完成。但这样我只能打印文本而不能打印图像,我也想打印图像。我有没有办法做到这一点? 我正在为打印制作一个Java程序,我是这样写的: public void printImage(String printerName, String imgLocat

我有来自厦门荣达科技的RP58E型热敏收据打印机。我知道这个没有Linux驱动程序,但我设法手动设置了它。我所做的:打印机->添加打印机->选择未知->转发->在“从数据库选择打印机”下,我选择了“通用建议->转发->这里我选择了“仅文本建议”,然后完成。但这样我只能打印文本而不能打印图像,我也想打印图像。我有没有办法做到这一点? 我正在为打印制作一个Java程序,我是这样写的:

public void printImage(String printerName, String imgLocation) throws PrintException, IOException {
        DocFlavor flavor = DocFlavor.INPUT_STREAM.PNG;
        PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
        aset.add(new PrinterResolution(205, 205, PrinterResolution.DPI));
        aset.add(new MediaPrintableArea(0, 0, 48, 48, MediaPrintableArea.MM));
        PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
        for(PrintService printService : services) {
            if(printService.getName().equals(printerName)) {
                DocPrintJob pj = printService.createPrintJob();
                FileInputStream fis = new FileInputStream(imgLocation);
                Doc doc = new SimpleDoc(fis, flavor, null);
                pj.print(doc, aset);
            }
        }
    }
如果我的打印机设置为纯文本,是否可以打印图像

EDDIT:以下是设置打印机时可供选择的选项的屏幕截图:


我通过安装找到了解决此驱动程序问题的方法 这个司机


我发现,大多数热敏打印机都有相同的打印命令,所以几乎没有变化。到目前为止,我注意到的唯一问题是,打印的文本比原始驱动程序稍大。

如果它只显示文本,为什么希望它打印图像?有文本和图像选项吗?@mwarren是的,有很多选项可供选择。只推荐文本是我选择的选项,因为它是推荐的。我将在问题中添加选项图片。我希望这是推荐的选项,因为它最有可能起作用,其他选项也可能起作用,它们只是不能保证起作用。@mwarren是的,我已准备好使用PDF和PostScript,但没有起作用。我总是打印随机的东西。我编辑了问题并添加了图片。我会首先查看打印机制造商的网站,看看打印机支持什么格式。使用PCL或GDI可能会更幸运,但请先检查打印机支持什么。