PNG画像を吐き出すために、ラベルプリンター(具体的にはEPSON TM-T88V)を使用しようとしています。
画像のサイズ(72dpiで220x175)を印刷している場合を除いて、印刷することができますが、印刷された画像の上に空白の塊があり、これは紙の無駄だと思います。
紙の無駄を最小限に抑える方法について何かアイデアはありますか? 余白を最小限に抑えて画像だけを印刷してから、紙をカットしたいのです。
これが私のコードです
AttributeSet aset = new HashAttributeSet();
aset.add(new PrinterName(printerName, null));
/* locate a print service that can handle the request */
PrintService[] services = PrintServiceLookup.lookupPrintServices(DocFlavor.INPUT_STREAM.PNG, aset);
if (services.length >= 1) {
/* create a print job for the chosen service */
DocPrintJob pj = services[0].createPrintJob();
DocAttributeSet das = new HashDocAttributeSet();
das.add(PrintQuality.HIGH);
das.add(MediaSizeName.ISO_A7); // I know the problem is here somewhere. This Media size seems to work best currently
try {
/*
* Create a Doc object to hold the print data.
*/
Doc doc = new SimpleDoc(imageByteIs, DocFlavor.INPUT_STREAM.PNG, das);
/* print the doc as specified */
pj.print(doc, null);
} catch (PrintException e) {
System.err.println(e);
}
}