2013-07-03 15 views
6

Załadowałem plik PDF do UIWebView z pakunku zasobów.Powiększyć/ścisnąć plik PDF, który jest ładowany do pliku UIWebView

Nie mogę teraz powiększyć/uszczypnąć pliku PDF.

Znalazłem poniższe 2 odpowiednie linki, ale żadna z odpowiedzi są zaznaczone prawidłowe -

  1. How to zoom webView with pdf file

  2. Enable zooming/pinch on UIWebView

Jak zrobić PDF zoomable/pinchable, który został załadowany do UIWebView z pakietu zasobów, Czy poniższe rozwiązanie działa?

  1. Problem with pdf while opening in UIWebView

Dzięki za pomoc.

+0

Czy wypróbowałeś któreś z znalezionych rozwiązań? – Amar

+0

Dlaczego nie używać struktury Quick Look do wyświetlania plików pdf? –

+0

tylko ** yourwebView.scalesPageToFit = TAK; ** umożliwia powiększanie webView nic nie potrzeba - potrzebny jest dodatkowy kod po prostu ładuj PDF w webviwe i scalesPageToFit put yes –

Odpowiedz

7

W swojej WebView na Interfejs Builder check Dodaj do Scale strony, aby dopasować i włączyć szczyptę Powiększyć zoomout;)

Albo jeśli chcesz LAD lepsza PDF spróbuj spojrzeć ten kod:

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    [webView loadRequest:[NSURLRequest requestWithURL:@"http:pdfURL"]]; 

    NSString *path = [[NSBundle mainBundle] pathForResource:@"yourPDFFile" ofType:@"pdf"]; 
    NSURL *url = [NSURL fileURLWithPath:path]; 
    NSURLRequest * request = [NSURLRequest requestWithURL:url]; 
    [webView loadRequest:request]; 
    //--------------AND HERE USE SCALE PAGE TO FIT------------------// 
    [webView setScalesPageToFit:YES]; 

} 

UIWebView Mam nadzieję, że ci to pomoże.

3

// Spróbuj jak to

NSString *[email protected]"www.example.com/yy.pdf"; 
web=nil; 
web=[[UIWebView alloc] initWithFrame:CGRectMake(0, 98, 320, 367)]; 
web.delegate=self; 
[self.view addSubview:web]; 
[web loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:urlstr]]]; 
UIPinchGestureRecognizer *pgr = [[UIPinchGestureRecognizer alloc] 
           initWithTarget:self action:@selector(handlePinch:)]; 
pgr.delegate = self; 
[web addGestureRecognizer:pgr]; 

// Akcja docelowa

- (IBAction)handlePinch:(UIPinchGestureRecognizer *)recognizer 
{ 
    recognizer.view.transform = CGAffineTransformScale(recognizer.view.transform, recognizer.scale, recognizer.scale); 
recognizer.scale = 1; 
    } 

przed tym dodać UIGestureRecognizerDelegate w .h. Mam nadzieję, że to pomoże ..

1
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES); 

NSString *documentsDirectory = [paths objectAtIndex:0]; 

NSFileManager *fileManager = [NSFileManager defaultManager]; 

if ([fileManager fileExistsAtPath:documentsDirectory]) 
{ 
    NSURL *url = [NSURL fileURLWithPath:strFileName]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    [webView setScalesPageToFit:YES]; 
    [webview loadRequest:request]; 
}