Как я могу отформатировать / обрезать координаты печати Java на внешнем принтере?
Это приложение для выставления счетов (например, для выставления счетов на рынке). Я использовал следующий код, чтобы напечатать что-то на внешнем принтере по умолчанию (Posiflex)
Я работаю с spring-boot, maven, Java
,
package com.spring.utils;
import java.awt.Color;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Line2D;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterJob;
public class Printer implements Printable {
public static void main(String[] args) {
Printer example1 = new Printer();
System.exit(0);
}
private final double INCH = 25;
public Printer() {
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable(this);
try {
printJob.print();
} catch (Exception PrintException) {
PrintException.printStackTrace();
}
}
public int print(Graphics g, PageFormat pageFormat, int page) {
if (page == 0) {
Graphics2D g2d = (Graphics2D) g;
g.setFont(new Font("TimesRoman", Font.PLAIN, 10));
FontMetrics fontMetrics = g.getFontMetrics();
g2d.setColor(Color.black);
g2d.translate(pageFormat.getImageableWidth(), pageFormat
.getImageableHeight());
g.drawString("XYZ Textiles", 0, 10);
g.drawString("no 123, abc street, state", 0, 30);
g.drawString("country, zip xxxxxx", 0, 50);
g.drawString("sales@xyztex.com", 0, 70);
return (PAGE_EXISTS);
} else
return (NO_SUCH_PAGE);
}
}
Он успешно печатает текст на принтере. Но он начал печатать с середины рулона бумаги для принтера.
Я дал координату х как 0, хотя это началось с середины
фактический
------------------------------------
| |
| |
| XYZ Textiles |
| no 123, abc street, |
| country, zip xxxxxx |
| sales@xyztex.com |
| |
------------------------------------
ожидаемый
------------------------------------
| |
| |
| XYZ Textiles |
| no 123, abc street |
| country, zip xxxxxx |
| sales@xyztex.com |
| |
------------------------------------
Как я могу настроить это для печати, как ожидалось?