Как напечатать изображение до его точного размера в приложении iOS?
Я печатаю разные изображения в моем приложении. Проблема в том, что принтер всегда печатает изображение на всей странице. если размер изображения очень маленький, распечатайте принтер на всей странице и он выглядит очень плохо. Я использую следующий код для печати изображения:-
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);
}
}];
}
1 ответ
Вместо того, чтобы использовать printingItem
Вы можете использовать printPageRenderer
Соблюдайте и реализуйте свою собственную логику печати, которая позволит вам печатать в точном месте и размере по вашему желанию.