UIPrintInteractionController 无边框打印

UIPrintInteractionController borderless printing

我正在使用 UIPrintInteractionController 使用打印图像概念开发 iPhone 应用程序。我一直停留在一点,即 border,每当我尝试使用打印机打印任何图像时,它总是在所有面上显示边框,这不是必需的。图像应该使用整个纸张尺寸,因为我给出的图像尺寸与纸张宽度和高度相同,但它仍然显示边框。

我没有找到任何去除边框或减少纸张内容边框的方法。查看 iPhone 图片

您可以在附图中看到 ,在此我尝试打印来自 Mac 系统的图像,其中提供了边框和无边框选项。

我认为它应该在 UIPrintInteractionController framework 中,但没有找到任何人。

如果有人对此有经验,请帮助我。

提前致谢。您的帮助将不胜感激

[![A4][4]][4]

如果您想消除任何边框,您可以通过将 photo outputType 传递给 printInfo 对象来快速实现:

let printController = UIPrintInteractionController.shared
printController.printingItem = someImage
printController.showsPaperSelectionForLoadedPapers = true

let printInfo             = UIPrintInfo.printInfo()
printInfo.outputType      = .photo
printController.printInfo = printInfo

现在,如果您想更好地控制最终渲染,您可以探索 Apple's sample project 关于 UIPrintInteractionController

Objective-C版本

UIPrintInteractionController *printController = [UIPrintInteractionController sharedPrintController];
printController.printingItem = someImage;
controller.showsPaperSelectionForLoadedPapers=YES;

UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputPhoto;
printController.printInfo = printInfo;