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 回答