【问题标题】:Printing PDF/Doc/Docx from Mac OS X application?从 Mac OS X 应用程序打印 PDF/Doc/Docx?
【发布时间】:2013-08-29 13:38:39
【问题描述】:

有什么方法可以打印 .doc、.docx、.pdf 文件,而无需在 Cocoa 中打开本机应用程序,

有什么方法可以从我的应用程序中调用 NSPrintPanel,它可能会调用打印 与给定文件的对话框。

我是 COCOA 编程的新手,非常感谢任何帮助。

【问题讨论】:

    标签: macos cocoa


    【解决方案1】:

    打印需要视图。如果我没记错的话,默认行为是打印主窗口的内容视图。

    因此,最简单的方法是将主窗口的唯一视图(在内容视图中)设置为 PDFView 或 NSTextView,您已将 PDF 或 Word 文件的内容加载到其中。

    如果您想拥有其他视图,则需要自定义打印,在这种情况下,我将您定向到the Printing Programming Guide

    【讨论】:

    • 嗨彼得,我已经自定义了 QLPreview 并在其中显示文档,在这种特定情况下,每当我说打印时,它会在 PrintPreview 面板中显示正确的第一页,但由于其他页面不可见,因此PrintpreviewPanel 保持空白的页面
    • @AnupRojekar:使用 PDFView 或 NSTextView 可能比将 QLPreviewView 扭曲成这种形状更容易。正如您所说,预览视图一次只显示文档的某些部分;它无法确保显示整个文档。 (而对于 PDF,你真的不能:如果它是 QLPreviewPanel 之类的东西,QLPreviewView 总是一次显示一页 PDF,不管它有多高。)
    • 非常感谢 Peter 的回答,但在 NSTextView 中显示 Doc/Docx 文件时出现问题,由于文档的完整性丢失,因此我使用了 QLPreview。
    猜你喜欢
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多