【发布时间】:2011-07-23 20:43:30
【问题描述】:
我有一个使用 Java 和 Graphics2D 的图表工具。我想缩放生成的图表,使其在打印时完全适合 8.5 x 11 页面(横向)。
我在某处看到页面缩放为 72 英寸,但我不确定这与屏幕的 dpi 有何关系。为了让事情变得更复杂,我的屏幕以 144dpi 工作,但该软件包的大多数用户将使用 72dpi 或 96dpi(不确定哪个...?)。有没有人管理所有这些 dpi 的经验,包括打印?
使用 java.awt.print 包我可以打印我的图表,但是它们太大了,需要使用好几页。我可以使用Graphics.scale(double, double) 缩放它们,但是如何计算缩放因子以使图表适合一页? Graphics.scale(double, double) 到底是不是正确的工具?
【问题讨论】:
-
在一个屏幕上,通常一个单位是一个屏幕像素。在打印机上,它可能是 1 pt(= 1/72 英寸)。
-
您的问题到底是什么?
-
嗨 Paŭlo - 图表工具可以创建适合我屏幕的漂亮图表。但是,当我使用 awt.print 打印它们时,它使用的页面不止一页,而且我不希望用户必须使用胶带将页面粘在一起!所以我想缩放图表以适合一页。比例函数似乎工作,但我不知道如何计算比例因子。另外,我不确定 scale(double, double) 是合适的功能 - 是否有更适合这项工作的功能,例如打印属性? TIA
-
我在您的问题中添加了实际问题。不过,我自己没有任何使用 Java 打印的经验。
-
谢谢,Paŭlo - 太好了!希望有人可以为我指明正确的方向:-)
标签: java printing scaling graphics2d