2011-07-01 12 views
7

Può uno mi guida come stampare il contenuto della mia UIWebView,iOS Aria di stampa per UIWebView

PER EX: - vorrei stampare il mio doc, xls, ppt file da UIWebView per stampare il contenuto.

Si prega di ottenere alcuni link o codice di esempio per risolvere questo problema

Grazie in anticipo

+1

Sarei molto sorpreso se UIWebView potesse visualizzare file Word, Excel o Powerpoint, cosa ti fa pensare che possa? – DarkDust

+9

@DarkDust http://developer.apple.com/library/ios/#qa/qa1630/_index.html – Dolbz

+0

@Dolbz: Grazie, non lo so. – DarkDust

risposta

16
UIPrintInfo *pi = [UIPrintInfo printInfo]; 
pi.outputType = UIPrintInfoOutputGeneral; 
pi.jobName = webView.request.URL.absoluteString; 
pi.orientation = UIPrintInfoOrientationPortrait; 
pi.duplex = UIPrintInfoDuplexLongEdge; 

UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController]; 
pic.printInfo = pi; 
pic.showsPageRange = YES; 
pic.printFormatter = webView.viewPrintFormatter; 
[pic presentAnimated:YES completionHandler:^(UIPrintInteractionController *pic2, BOOL completed, NSError *error) { 
    // indicate done or error 
}]; 

Una più ampia sample sul sito dev di Apple.

0

Per stampare i contenuti di UIWebview, è necessario visualizzare i formattatori. Ho incollato il codice qui sotto.

UIPrintInteractionController *pic = [UIPrintInteractionController sharedPrintController]; 
//pic.delegate = self; 
UIPrintInfo *printInfo = [UIPrintInfo printInfo]; 
printInfo.outputType = UIPrintInfoOutputGeneral; 
printInfo.jobName = @"google.com"; 
printInfo.duplex = UIPrintInfoDuplexLongEdge; 
pic.printInfo = printInfo; 
pic.showsPageRange = YES; 

// Webvied print 
NSData *mydata=[NSData dataWithContentsOfURL: [NSURL URLWithString: @"http://www.google.com"]]; 
// Use this webview if your content is not loaded into webview, if webview already exists then give its reference here 
UIWebView *webview = [[UIWebView alloc] initWithFrame: CGRectZero]; 
[webview loadRequest: [NSURLRequest requestWithURL: [NSURL URLWithString: @"http://www.google.com"]]]; 
[webview loadData:mydata MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL: [NSURL URLWithString: @"http://www.google.com"]]; 
UIViewPrintFormatter *formatter = [webview viewPrintFormatter]; 
pic.printFormatter = formatter; 

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