gpt4 book ai didi

ios - UIPrintInteractionController 打印项目不显示/工作

转载 作者:行者123 更新时间:2023-12-03 21:11:31 33 4
gpt4 key购买 nike

很直接...

现在我认为自己是一名经验丰富的 iOS 开发人员,但这似乎是 iOS 中一个明显的错误,除非我遗漏了一些东西。

请看下面的代码。

文件路径指向两个一页的 PDF。

显示的是一个没有要打印的内容的打印交互 Controller 。

如果我一次只做 1 个文件,如下所示:

pc.printingItem = [NSURL fileURLWithPath:filePath1];

它就像一个冠军。

我在这里错过了什么?!
UIPrintInteractionController *pc = [UIPrintInteractionController sharedPrintController];
UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputPhoto;
printInfo.orientation = UIPrintInfoOrientationLandscape;
pc.printInfo = printInfo;

pc.printingItems = @[[NSURL fileURLWithPath:filePath1],
[NSURL fileURLWithPath:filePath2]];

[pc presentAnimated:YES completionHandler:completionHandler];

enter image description here

最佳答案

我遇到了同样的问题并通过设置 printingItem 解决了它带有我的 PDF 文件原始数据的属性。

// Here is a class I created that works with `UIActivityViewController`,
// feel free to tweak to your needs.

final class CustomActivityViewController: UIActivityViewController {

init(with filePath: URL, and fileData: Data?) {
super.init(activityItems: [filePath], applicationActivities: [])

completionWithItemsHandler = { activity, complete, items, error in

if activity == .print {

let printInfo = UIPrintInfo(dictionary: nil)
printInfo.jobName = filePath.lastPathComponent
printInfo.outputType = .general

let printer = UIPrintInteractionController.shared
printer.printingItem = fileData // <-- This is the cure.
printer.printInfo = printInfo

printer.present(animated: true, completionHandler: nil)
}
}
}
}

关于ios - UIPrintInteractionController 打印项目不显示/工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54488651/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com