【问题标题】:How to shrink to printable area in C#?如何在 C# 中缩小到可打印区域?
【发布时间】:2008-11-30 19:59:44
【问题描述】:

您好,

我遇到问题(尝试从 c# 打印到某些没有大打印区域的打印机时。有没有办法缩小到可打印区域(如 Adob​​e Acrobat)?谢谢!

【问题讨论】:

    标签: c# printing


    【解决方案1】:

    您可以确定图像的大小,然后确定打印区域的大小(从打印机设置和边距 - 如另一篇文章中所述),然后计算水平或垂直收缩的比率(以较高者为准,所以图像未裁剪)。在绘制页面内容之前,在打印机图形上下文的比例变换中使用此比率。

    【讨论】:

      【解决方案2】:

      你用什么来打印?您很可能必须查询打印机的边距,然后调整绘图代码以在可打印区域内打印。

      换句话说 - 你必须“手工”完成。

      【讨论】:

        【解决方案3】:

        在 .Net 中,您应该使用 System.Drawing.Printing 命名空间中的类来打印。当你这样做时,你从PrintDocument 对象调用Print() 方法。这将引发PrintDocumentPrintPage 事件。该事件的PrintPageEventArg 参数的Graphics 属性具有ClipBounds 属性。使用此属性检查可打印区域。

        【讨论】:

          猜你喜欢
          • 2012-02-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-09-19
          • 1970-01-01
          • 1970-01-01
          • 2013-06-28
          • 2011-11-14
          相关资源
          最近更新 更多