2010-12-16 5 views
3

私はiOS 4.2 UIWebView + AirPrintで遊んでいます。ただし、UIWebViewからviewPrintFormatterを取得すると、DOC、DOCX、PPT、PPTXなどではなくPDFや画像を印刷できます。これらのファイルはUIWebViewに正しく表示されますが、Airprintは空白のページを印刷します。私はそれが動作MIMEタイプを使用しない場合は、何らかの理由で、それを修正する方法を見つけiOS 4.2 - Apple AirPrintでDOC、PPT、XLSなどを印刷していますか?

[internalWebView loadData:[[printContent objectAtIndex:0] data] MIMEType:mimeType textEncodingName:nil baseURL:nil]; 

UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController]; 
//pic.delegate = self; 

UIPrintInfo *printInfo = [UIPrintInfo printInfo]; 
printInfo.outputType = UIPrintInfoOutputGeneral; 
printInfo.jobName = [[printContent objectAtIndex:0] fileName]; 
pic.printInfo = printInfo; 

pic.printFormatter = [internalWebView viewPrintFormatter]; 
pic.showsPageRange = YES; 

void (^completionHandler)(UIPrintInteractionController *, BOOL, NSError *) = 
^(UIPrintInteractionController *printController, BOOL completed, NSError *error) { 
if (!completed && error) { 
    NSLog(@"Printing could not complete because of error: %@", error); 
} 
}; 

[pic presentAnimated:YES completionHandler:completionHandler]; 
+0

doc&pptファイルを印刷しようとしています – siva

答えて

1

は、ここに私のコードです。ファイルをローカルストレージに保存しただけで、URLだけに基づいてコンテンツをロードするwebviewにもう1つのloadメソッドを使用しました。希望すると助かります...

1

ありがとう、私はあなたのヒントに従って、今すぐ動作します。代わりにloadRequestを使用してください:

[internalWebView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:path]]]; 
関連する問題