0

我有一个在公司内部运行的企业 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.
4

2 回答 2

1

我收到的苹果官方回复如下。

当前的 iOS 打印系统无法做到这一点。欢迎提交错误报告,尽管我不能说我们会在未来的 iOS 版本中提供这样的机制。

于 2012-10-26T15:42:59.743 回答
-1

你可以试试这个(未测试):

- (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
    }
}
于 2012-10-24T07:48:33.770 回答