2010-06-24 59 views
2

我是新来的GraphicsGraphics2D在Java中。 现在我有一个项目,我必须将发票打印到A4尺寸的工作表。Java印刷:我该如何去做?

我一直在阅读Sun's tutorial打印。

我意识到我需要先在JFrame上渲染账单,所以我知道它会是什么样子。

现在,我该如何去设置合适的尺寸? 我的意思是 - 如果我在JFrame (595, 842)上设计账单 - 我如何将所有形状的坐标正确地映射到打印上?

我基本上不知道从哪里开始。请指点一下吗?

谢谢。 :)

+0

你必须看看报告工具。 – adatapost 2010-06-24 05:10:47

+0

检查这个问题http://stackoverflow.com/questions/12794382/how-to-print-strings-with-line-breaks-in-java – Harsha 2012-10-15 07:03:57

回答

1

如果你把你的发票一起使用JPanel(好于JFrame,如果你不想标题栏等),可以实现Printable,并且在其print方法中,可以使用Graphics对象传入以呈现您的发票。 Graphics对象PrintJob传递到Printable可用于您的面板的paint方法,但它不是绘画到屏幕上,而是绘制到打印机。您可能需要暂时关闭双缓冲。

关于如何设计发票,你会想挑选出您的JPanel一个LayoutManager并添加JLabel个一串,或者你可以使用一个JList与自定义呈现。