【问题标题】:UWP PDF printingUWP PDF 打印
【发布时间】:2019-02-02 06:07:10
【问题描述】:

有没有办法从 UWP 应用程序打印 PDF?除了将其渲染为pngBitmapImage

我看过 Microsoft printing samplepdf rendering sample 通过将其渲染为位图图像来实现打印 pdf。但是,它会降低 pdf 的质量。想知道是否有任何其他有效的方法可用而不使用库

编辑(2018 年 12 月 31 日)

我试图在不使用库的情况下从 Microsoft 找到直接解决方案。但是,没有,所以我使用PDfSharp 在微软的AppServiceBridge 的帮助下解决了我的问题。我使用了 AppService 桥,因为 PdfSharp 不能直接用于 WinRT。

【问题讨论】:

  • 也许你可以试试this库。它支持Winrt。
  • 谢谢。但是,我希望在没有库的情况下解决这个问题。我会更新我的问题。
  • 位图图像太小会降低质量。打印机具有非常高的分辨率,在 600dpi 打印机上打印一张 11x8.5 英寸的纸需要 6600x5100 位图,128 兆字节。 PDF 旨在克服的问题 :) 现在您可能在图像映射中将 1 个像素映射到纸上约 6x6 的墨迹,因为您没有调整它的 dpi,需要很长的手臂才能看到.
  • “在没有库的情况下解决这个问题”是什么意思?如果 Microsoft 提供的示例不够好,我怀疑你会在没有任何 3rd 方库的情况下解决这个问题。
  • 我认为这个问题不是关于打印到 PDF(不是点击打印和接收 pdf 文件),而是直接从 UWP 应用程序打印 PDF(使用应用程序打开 pdf 文件,单击打印并获得 pdf文件发送到打印机)。

标签: c# uwp uwp-xaml


【解决方案1】:

我通过 Github 项目在 C# 中使用了虚拟打印机:Microsoft/Windows-driver-samples/print/XPSDrvSmpl。

https://github.com/Microsoft/Windows-driver-samples/tree/master/print/XPSDrvSmpl

安装者:http://wixtoolset.org/

应用程序:监听内部端口

流程:从单个安装程序安装打印机和应用程序。当应用程序侦听内部端口时,用户使用您的驱动程序打印一些东西。当发送数据时,应用程序会接收它。这是针对XPS的,可以转换成PDF,但是不管你打印什么,流程都差不多。

原答案:

https://stackoverflow.com/a/40370083/3850405

【讨论】:

    猜你喜欢
    • 2019-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-23
    • 1970-01-01
    • 2017-11-24
    • 2010-10-29
    • 2011-08-31
    相关资源
    最近更新 更多