0

社内で実行されているエンタープライズiPadアプリがあります。アプリケーション内でAirPrintを使用しており、WIFIネットワーク内に複数のAirPrinterがあります。

一部のユーザーグループにデフォルトのプリンターを設定し、他のすべてのプリンターを制限する必要があります。(プリンタリストに表示する必要はありません)

誰かがこれを行う方法を知っていますか?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

私が受け取ったAppleからの公式の返事は次のとおりです。

現在の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 に答える