gpt4 book ai didi

java - 缩小边距 - Java 打印

转载 作者:搜寻专家 更新时间:2023-11-01 03:28:17 25 4
gpt4 key购买 nike

我正在使用此代码在纸上打印:

//Overriden from printable interface
public int print(Graphics g, PageFormat pageFormat, int pageIndex)
throws PrinterException {

if (pageIndex != 0) {
return Printable.NO_SUCH_PAGE;
}

Paper a4 = new Paper();
a4.setImageableArea(0, 0, a4.getWidth(), a4.getHeight());
pageFormat.setPaper(a4);
pageFormat.setOrientation(PageFormat.PORTRAIT);

Graphics2D g2d = (Graphics2D)g;
//g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY());
this.setDoubleBuffered(false);
panel.print(g2d);
JOptionPane.showMessageDialog(null, new ImageIcon(image));
this.setDoubleBuffered(true);

return Printable.PAGE_EXISTS;
}

我正在尝试以编程方式减小边距的大小。无论我做什么,图像两侧似乎总是缺少一大块(除非我从打印对话框中删除边距 - 但正如我所说,我想以编程方式删除它们以自动化整个过程)。

最佳答案

US Letter例如,尺寸为 8½ x 11 英寸的纸张。每英寸 72 点,即 612 x 792。

在选择了该尺寸纸张的典型打印机上,PageFormat对象报告以下区域。

System.out.println(pf.getImageableX() + " " + pf.getImageableY()
+ " " + pf.getImageableWidth() + " " + pf.getImageableHeight());
18.0 18.0 576.0 734.018.0 18.0 576.0 734.0

很少有消费类打印机是 full-bleed , 因此可打印区域小于纸张的物理尺寸建议。实际上,打印机无法在无法打印的地方添加墨水。

关于java - 缩小边距 - Java 打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7535443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com