1

アプリケーションでさまざまな画像を印刷しています。問題は、プリンターが常にページ全体に画像を印刷することです。画像サイズが非常に小さい場合、プリンターでページ全体に印刷すると見栄えが非常に悪くなります。私は画像を印刷するために次のコードを使用しています:-

        NSData *dataFromPath = UIImageJPEGRepresentation(croppedImage, 1.0);
    if(printController && [UIPrintInteractionController canPrintData:dataFromPath]) {

        printController.delegate = self;
        UIPrintFormatter *my=[[UIPrintFormatter alloc]init];
        UIPrintInfo *printInfo = [UIPrintInfo printInfo];
        printInfo.outputType = UIPrintInfoOutputGeneral;
        printInfo.jobName = @"print image";
        printInfo.duplex = UIPrintInfoDuplexNone;
        printController.printInfo = printInfo;
        printController.showsPageRange = YES;
        printController.printingItem = dataFromPath;
        [printController presentFromRect:_btn_ShareAction.frame inView:_btn_ShareAction.superview animated:YES completionHandler:^(UIPrintInteractionController *printInteractionController, BOOL completed, NSError *error) {
            if (!completed && error) {
                NSLog(@"FAILED! due to error in domain %@ with error code %ld", error.domain, (long)error.code);
            }
        }];

    }
4

1 に答える 1

0

を使用する代わりにprintingItem、プロパティを使用しprintPageRendererて独自の印刷ロジックを実装できます。これにより、希望どおりの正確な位置とサイズで印刷できます。

于 2015-01-30T22:58:56.017 に答える