फ़ीड-रीडिंग आईफोन ऐप पर काम करने में जो UIWebView में nsdata (html और pdf) प्रदर्शित करता है। मैं कुछ पीडीएफ सत्यापन तर्क में एक झगड़ा मार रहा हूँ। मेरे पास एक NSData ऑब्जेक्ट है जो मुझे पता है .pdf एक्सटेंशन वाली एक फ़ाइल है। मैं अमान्य पीडीएफ को आगे बढ़ने से रोकना चाहता हूं।मैं कैसे सत्यापित करूं कि एनएसडीटा एक पीडीएफ है?
// pdfData is an NSData *
NSData *validPDF = [[NSString stringWithString:@"%PDF"] dataUsingEncoding: NSASCIIStringEncoding];
if (!(pdfData && [[pdfData subdataWithRange:NSMakeRange(0, 4)] isEqualToData:validPDF])) {
// error
}
दुर्भाग्य से, एक नया पीडीएफ अपलोड किया गया था कुछ दिन पहले: यहाँ मेरी सत्यापन कोड का पहला प्रयास है, जो मामलों के बहुमत के लिए काम करने लगता है है। यह इस अर्थ में मान्य है कि UIWebView इसे ठीक दिखाएगा, फिर भी यह मेरे सत्यापन परीक्षण में विफल रहता है। मैंने इस मुद्दे को इस तथ्य को ट्रैक किया है कि शुरुआत में कचरा बाइट्स का एक गुच्छा था,% पीडीएफ हेक्स वर्णों के 14 वें सेट के माध्यम से मिडवे आ रहा था (25 या% बिल्कुल 54 वां बाइट है):
%PDF: 25504446
Breaking PDF: 00010000 00ffffff ff010000 00000000 000f0100 0000b5e0 04000200 01000000 ffffffff 01000000 00000000 0f010000 0099e004 00022550 44462d31 etc...
एनएसडीटा को पीडीएफ होने के लिए मान्य करने का सबसे अच्छा अभ्यास क्या है?
इस विशेष पीडीएफ के साथ क्या गलत हो सकता है (यह दावा करता है कि इसे पेपरपोर्ट 11.0 द्वारा एन्कोड किया गया था, जो कुछ भी है)?
धन्यवाद,
माइक
वहाँ ImageIO में कुछ भी नहीं है कि इस के साथ मदद कर सकते हैं क्या है? – nielsbot