iOS AirPrint-设置默认打印机
Posted
技术标签:
【中文标题】iOS AirPrint-设置默认打印机【英文标题】:iOS AirPrint-Set default printer 【发布时间】:2012-10-24 07:34:16 【问题描述】:我有一个在公司内部运行的企业 iPad 应用程序。我在应用程序中使用 AirPrint,并且我的 WIFI 网络中有几台空中打印机。
我需要为某些用户组设置默认打印机并限制其他所有打印机。 (无需显示在打印机列表中)
有人知道怎么做吗?我在 UIPrintInfo 中看到了一个 printerId 属性。也许我可以用这个。不确定。
printerID
An identifier of the printer to use for the print job.
@property(nonatomic, copy) NSString *printerID
Discussion
This property is set through user selection in the printing user interface. You may provide a printer ID as a hint (for example, the last printer used from a particular print job). The default value is nil.
【问题讨论】:
【参考方案1】:我收到的苹果官方回复如下。
目前的 ios 打印系统无法做到这一点。欢迎提交错误报告,尽管我不能说我们会在未来的 iOS 版本中提供这样的机制。
【讨论】:
【参考方案2】:你可以试试这个(未测试):
- (IBAction)printContent:(id)sender
UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController];
if (pic && [UIPrintInteractionController canPrintData: self.myPDFData] )
pic.delegate = self;
UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputGeneral;
printInfo.jobName = [self.path lastPathComponent];
printInfo.duplex = UIPrintInfoDuplexLongEdge;
//Set the printer ID you want to use
printInfo.printerID = thePrinterIDYouWant;
//Set the printInfo to the pritnController
pic.printInfo = printInfo;
//Enhance the print here
【讨论】:
这只是设置默认打印机还是隐藏其他打印机?以上是关于iOS AirPrint-设置默认打印机的主要内容,如果未能解决你的问题,请参考以下文章
从 uiwebview (iOs) 打印本地 html 文件
如何在 swift 3 中使用 UIPrintInteractionController.print 设置要打印的页数?