我正在开发一个iOS自助服务终端类型的应用程序,它利用Air Print打印10页的文档。
这份文件需要很长时间才能打印(超过1分钟),人们在打印作业完成之前就会走开,因为他们认为已经完成了。它还打印前两页,等待大约20秒,然后再打印几页。这是人们走开的时候。
作为测试,我从一台Windows机器,同一台打印机和同一无线网络上打印了一张较长且图像密集的文档。这花了不到20秒,所以它不是打印机。此外,用于测试的wifi网络非常强大,打印机和iPad都在无线路由器附近。
我确保打印文档是灰度级的,并尽我所能来缩小文档,但打印时间总是相同。
为了创建打印作业,我有一个自定义类来创建打印文档,它根本不需要时间来创建。
以下是实际连接到打印机并发送作业的代码。时髦的唯一事情就是我全局存储打印机实例,这样客户就不必为每个打印作业选择打印机。
这一切都有效,但速度太慢了。关于如何加快打印的任何建议?
UIPrintInteractionController *printController = [UIPrintInteractionController sharedPrintController];
printController.delegate = self;
printController.printPageRenderer = [[KioskPrintRenderer alloc] initWithCustom:_currentCustom];
UIPrintInfo *info = [UIPrintInfo printInfo];
info.outputType = UIPrintInfoOutputGrayscale;
info.jobName = [NSString stringWithFormat:@"customID%@", _custom.Id];
printController.printInfo = info;
if ([customAppDelegate sharedPrinterFlag] ==FALSE) {
[self savePrinter];
}
else{
[[customAppDelegate sharedPrinter]
contactPrinter:^(BOOL available){
}];
}
if ([customAppDelegate sharedPrinter]) {
[ printController printToPrinter:[customAppDelegate sharedPrinter] completionHandler:^(UIPrintInteractionController *controller, BOOL completed, NSError *error) {
[self ClosePrintView];
}];
}
- 编辑 -
其他一些发现:
任何硬接线(ipad到路由器,打印机到路由器等)的速度没有任何差别。
这是打印到HP LaserJet Pro 400.即使从Windows设备打印效果很好,打印机本身也会出现问题吗?