【问题标题】:Print full page delphi打印整页delphi
【发布时间】:2015-02-28 15:53:49
【问题描述】:

每当我在 delphi 中打印 from 时,它都不会打印到整个页面。它横向使用所有页面,但纵向仅使用大约 3/4 的页面。

我的代码是:

printer.Orientation:=poLandscape;
form1.PrintScale:=poPrintToFit;
printer.Copies:=spinedit1.Value;
form1.Print;

有什么建议吗?谢谢

我已尝试更改表单大小,但尝试其他打印机没有结果,它打印的内容完全相同。

【问题讨论】:

  • 可能是您表单的纵横比造成的吗?增加表单的高度以测试是否是这种情况。
  • 同时检查您的打印机边框设置,看看它们是否不会影响您的最终结果。
  • 正如 SilverWarrior 所说:可以您的打印机打印到纸张边缘吗?
  • 您的表单(以像素为单位)和纸张(以英寸或毫米为单位)的大小是多少。由于您是横向打印,所以当您说 3/4 的页面垂直时是什么意思?当您将纸张变成横向时,垂直?使用您的设置,我可以一直打印到边缘,但不可打印区域除外,大约 5 毫米。在 210 x 297 毫米纸上使用 553 x 383 像素的表格(宽 x 高)进行测试(比率 0.71)。
  • 表格尺寸为 1056 x 1963。我使用的是 A4 纸,因此为 11.7 x 8.3 英寸。我的意思是当水平握住页面时,它不会打印到页面底部,它只打印到底部大约 3/4,它会一直打印到水平边缘而不是垂直边缘。

标签: delphi printing delphi-xe


【解决方案1】:

你得到的正是你想要的。打印机正在生成 1963 x 1056 的屏幕图像,它应该很好地映射到 11.7 x 8.3 纸张的顶部 3/4。前 3/4 约为 11.7 x 6.2。 (1963/1056 大约等于 11.7/6.2)您正在打印纵横比约为 2 比 1 的图像;打印的图像具有相同的纵横比。如果打印的图像填满整个页面,它会被扭曲,看起来太高或太窄,这取决于您的视角。如果您将一些其他控件放在靠近角落的表单上,您会更清楚地看到这一点。它们将显示在打印页面上。

【讨论】:

  • 打印时如何获取/强制它使用整个 A4 页面?感谢您的回复!
  • 查看 Delphi 帮助主题 TCustomForm.PrintScale。您使用了 poPrintToFit,我认为这是您的最佳选择。您可以选择 poProportional 或 poNone 并查看其中一个是否更适合您的需求。要使图像填满页面,您可以将窗口的比例更改为 11.7 x 8.3 的倍数,例如 1170 x 830 或 1755 x 1245
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多