HTML-файл AirPrint, сделанный локально для iPhone

В настоящее время я создаю HTML-файл и храню его локально, я даю пользователю возможность отправить HTML-файл в формате HTML или распечатать.

По некоторым причинам это не в состоянии печатать. если я проверю -

     if([UIPrintInteractionController canPrintData:myData]){

это не проходит мимо этого пункта.

Можно ли распечатать локальные файлы HTML, если так, как это сделать.

Дэн

редактировать код для создания HTML -

   NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *Daily = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.html",self.title]];
[urlToLoad  writeToFile:Daily atomically:YES encoding:NSUTF8StringEncoding error:NULL];


NSString *fileName = [NSString stringWithFormat:@"%@/%@.html", documentsDirectory,self.title];
NSData *myData = [NSData dataWithContentsOfFile:fileName]; 

1 ответ

Решение

[UIPrintInteractionController canPrintData:] ожидает, что данные будут содержать правильно отформатированные данные PDF, а не HTML.

Попробуйте сделать это вместо этого:

UIPrintFormatter *formatter = [[UIMarkupTextPrintFormatter alloc] initWithMarkupText:html];

[[UIPrintInteractionController sharedPrintController] setPrintFormatter:formatter];
Другие вопросы по тегам