Air printing is very slow

I am working on an iOS kiosk-like application that uses Air Print to print a 10-page page document.

This document takes a very long time to print (more than 1 minute), and people leave before the completion of the print job, because they believe that this is done. It also prints the first two pages, waiting for about 20 seconds, and then prints a few more. This is when people leave.

As a test, I printed a document with a longer and more saturated image from a Windows machine, to the same printer and on the same wireless network. It took less than 20 seconds, so this is not a printer. In addition, the Wi-Fi network for testing is very durable, and the printer and iPad are next to the wireless router.

I made sure that the print document is in gray scale and tried everything in my power to reduce the document, but it always takes the same amount of time to print.

To create a print job, I have my own class for creating a print document, which does not take time to create.

Below is the code that actually connects to the printer and sends the job. The only thing that scares me is that I keep a copy of the printer all over the world, so the client does not need to select a printer for each print job.

It all works, it's too slow. Any tips on how to speed up printing?

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];



}];

}

- Edit -

Some additional findings:

Hard wiring (ipad to router, printer for a router, etc.) did not matter in speed.

HP LaserJet Pro 400. - , Windows ?

+4

All Articles