【问题标题】:How can I change page orientation within a multi page NSPrintOperation?如何在多页 NSPrintOperation 中更改页面方向?
【发布时间】:2019-09-05 03:33:32
【问题描述】:

假设我有一个三页的报告要打印出来,第一页是纵向的,第二页是横向的,第三页是纵向的。

我已经将一个特殊的 NSView 子类化为我的打印操作,但我得到的是三个页面,全部面向纵向,切断横向。我已经能够通过将每个页面分成一个单独的打印作业来解决它,但这是不可接受的,因为它忽略了来自

NSPrintOperation *printOperation = [NSPrintOperation printOperationWithView: printView printInfo: printInfo];

[printView setCurrentForm: [formSet objectAtIndex: 0]];

[printOperation setShowsPrintPanel:YES];
[printOperation runOperationModalForWindow: [self window] delegate: nil didRunSelector: nil contextInfo: nil];
[printOperation cleanUpOperation];
[NSPrintOperation setCurrentOperation: nil];

从第一页调用(例如,如果他们从该对话框中选择“PDF 在预览中打开”,我希望将这三个页面合并为一个作业,在预览中作为 PDF 打开。)

在呈现 NSView 的打印机版本的代码中,我需要做什么才能强制 NSPrintOperation 更改方向?

【问题讨论】:

    标签: objective-c nsprintoperation


    【解决方案1】:

    rectForPage:中设置方向

    NSPrintOperation.currentOperation.printInfo.orientation = NSPaperOrientationLandscape;
    

    NSPrintOperation.currentOperation.printInfo.orientation = NSPaperOrientationPortrait;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-02
      相关资源
      最近更新 更多