TPrintDialog和阅读方向参数

时间:2016-09-08 10:23:02

标签: delphi printdialog

是否有可能从用户选择的TPrintDialog页面方向(水平/垂直)进行阅读?

在经典解决方案中:

if PrintDialog1.Execute() then
begin
  Printer.Orientation := poLandscape //I want read this parameter from PrintDialog

  Printer.BeginDoc;
  ...
  Printer.EndDoc;
end;

我无法在TPrintDialog中找到方向。

1 个答案:

答案 0 :(得分:4)

TPrintDialog不提供该信息。相反,它允许用户选择打印机,打印范围和份数。

当您显示TPrintDialog时,用户可以选择为所选打印机设置属性,包括页面方向。然后,您需要从用于执行打印的TPrinter对象中读取该信息。

查看代码,您已经在使用代表所选打印机的全局Printer对象。此对象已具有用户指定的方向。换句话说,您只需删除尝试分配给Printer.Orientation的代码行,因为该属性已设置。