В настоящее время мое приложение создает изображение размером 2480 3508 (страница A4). Как отправить это изображение в AirPrint на странице A4? Как только изображение создано, оно сохраняется в приложении для фотографий, и я также хотел бы отправить его на печать. Любые идеи? Спасибо
AirPrint UIImage A4
Ответы (2)
Вам нужно будет использовать UIPrintInteractionController и установить изображение как printItem. В зависимости от выбранного вами качества печати (фоторежим или стандартное) бумага по умолчанию может быть меньше формата A4, но пользователь может выбрать формат A4 в диалоговом окне печати.
`- (void) printImage: (UIImage *) myImage {
UIPrintInteractionController *controller = [UIPrintInteractionController sharedPrintController];
UIPrintInfo *printInfo = [UIPrintInfo printInfo];
printInfo.outputType = UIPrintInfoOutputPhoto;
printInfo.jobName = @"Testprint";
printInfo.duplex = UIPrintInfoDuplexNone;
controller.printingItem = myImage;
controller.showsPaperSelectionForLoadedPapers = YES;
void (^completionHandler)(UIPrintInteractionController *, BOOL, NSError *) =
^(UIPrintInteractionController *pic, BOOL completed, NSError *error) {
if (!completed && error)
NSLog(@"FAILED! due to error in domain %@ with error code %u",
error.domain, error.code);
NSLog(@"Completed: %s", (completed?"YES":"NO"));
};
[controller presentAnimated:YES completionHandler:completionHandler];
}`
person
palugu
schedule
19.06.2015
СВИФТ 3 ВЕРСИЯ
func printNow(_ image: UIImage){
let controller = UIPrintInteractionController.shared
let printInfo = UIPrintInfo.printInfo()
printInfo.outputType = .photoGrayscale//.photo
printInfo.jobName = "Testprint";
printInfo.duplex = .none
controller.printingItem = image
controller.showsPaperSelectionForLoadedPapers = false
controller.present(animated: true) { (controller, completed, error) in
if (!completed && (error != nil)) {
print("FAILED! due to error \(error.debugDescription)")
}
print("Completed: \(completed)")
}
}
person
drpawelo
schedule
12.07.2017