2013-07-28 26 views
7

Bir sunucudan indirdiğim bir PDF dosyası var, bazen kullanıcılar bozuk bir PDF yüklüyor ve uygulamanızın böyle bir dosyayı açıp açmayacağını kontrol etmem gerekiyor.iOS'ta bozuk bir PDF nasıl kontrol edilir?

PDF bozulmasını denetlemek için kullanabileceğim yerleşik bir yol var mı? Eğer değilse, yolsuzluğu görmek veya kontrol etmek için kullanabileceğim ücretsiz bir hafif PDF çerçevesi var mı?

Not: Şu anda bir UIWebView üzerinde PDF dosyalarını açıyorum.

+0

Yolsuzluk nasıl? Önemsiz ya da sadece belirli kusurları ayrıntılı olarak yarıştırın mı? – mkl

+0

Eh, dosyanın hangi bölümünün bozuk olduğundan emin değilim. Bir PDF okuyucu ile açmaya çalıştığımda bozuk olduğunu biliyordum (örneğin Adobe Reader). Benim durumumda bu dosyayı açarken sadece beyaz bir sayfa görüyorum, bu yüzden normal bir PDF okuyucu gibi dosyanın bozuk olduğunu kullanıcıya bildirmek istiyorum. –

cevap

14

CoreGraphics PDF çizim API'lerini kullanarak çözümü buldum. this answer için teşekkürler.

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

Teşekkürler bu bana yardımcı oldu – kevinl

+0

bu hiç çalışmıyor :(bozuk olup olmadığını kontrol etmek için herhangi bir alternatif yolu var mı? –

İlgili konular