2013-07-28 35 views
7

Tôi có tệp PDF mà tôi đã tải xuống từ máy chủ, đôi khi người dùng tải lên tệp PDF bị hỏng và tôi cần kiểm tra xem ứng dụng của tôi có thể mở tệp đó hay không.Làm cách nào để kiểm tra tệp PDF bị hỏng trong iOS?

Vì vậy, có cách tích hợp mà tôi có thể sử dụng để kiểm tra tham nhũng PDF không? Nếu không có một khuôn khổ PDF nhẹ miễn phí mà tôi có thể sử dụng để xem hoặc kiểm tra tham nhũng?

Lưu ý: Hiện tại tôi đang mở tệp PDF trên UIWebView.

+0

Bị hỏng như thế nào? Rác rác hoặc chỉ một số lỗi nhất định? – mkl

+0

Vâng, tôi không chắc chắn phần nào của tệp bị hỏng. Tôi biết rằng nó bị hỏng khi tôi cố mở nó bằng trình đọc PDF (ví dụ Adobe Reader). Trong trường hợp của tôi, tôi chỉ thấy một trang trắng khi mở tệp đó, vì vậy tôi muốn thông báo cho người dùng rằng tệp bị hỏng giống như trình đọc PDF thông thường sẽ làm. –

Trả lời

14

Tôi đã tìm thấy giải pháp bằng cách sử dụng API bản vẽ CoreGraphics PDF. Cảm ơn bạn đã this answer.

NSString *path = [[NSBundle mainBundle] pathForResource:@"A_Corrupted_PDF" ofType:@"pdf"]; 
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path]; 

CGDataProviderRef provider = CGDataProviderCreateWithCFData((__bridge CFDataRef)data); 
CGPDFDocumentRef document = CGPDFDocumentCreateWithProvider(provider); 

if (document == nil) { 
    NSLog(@"The PDF is corrupted"); 
} 
CGDataProviderRelease(provider); 
CGPDFDocumentRelease(document); 
+0

cảm ơn điều này đã giúp tôi ra – kevinl

+0

này không phải là ở tất cả các công việc :(có cách nào khác để kiểm tra xem liệu có bị hỏng hay không? –

Các vấn đề liên quan