לקבצי PDF יש פורמט מסמך פנימי הדורש אובייקט תוכנה ש"מבין "את הפורמט. מכיוון שרבים מכם עשויים להשתמש בפונקציות של Office בקוד ה- VB שלכם, בואו נסתכל בקצרה על Microsoft Word כדוגמא לעיבוד מסמך מעוצב כדי לוודא שאנחנו מבינים את המושג. אם אתה רוצה לעבוד עם מסמך Word, עליך להוסיף הפניה לספריית האובייקטים של Microsoft Word 12.0 (עבור Word 2007) ואז ליישר את האובייקט יישום Word בקוד שלך.
עמוק את myord כמו מיקרוסופט. משרד. אינטרופ. מילה. יישום Class
'התחל את Word ופתח את המסמך.
myWord = CreateObject ("Word. יישום")
מילה שלי. גלוי = נכון
מילה שלי. מסמכים. פתח ("C: \ myWordDocument.docx")
("יש להחליף את הנתיב בפועל למסמך בכדי לגרום לקוד זה לעבוד במחשב האישי שלך.)
מיקרוסופט משתמשת בספריית אובייקטים של Word כדי לספק שיטות ונכסים אחרים לשימושך. קרא את המאמר יכולת פעולה הדדית של COM-.NET ב- Visual Basic כדי להבין יותר אודות אינטרופ של Office COM.
אבל קבצי PDF אינם טכנולוגיה של מיקרוסופט. PDF - פורמט מסמכים נייד - הוא פורמט קובץ שנוצר על ידי Adobe Systems לצורך החלפת מסמכים. במשך שנים זה היה קנייני לחלוטין והיית צריך להשיג תוכנה שיכולה לעבד קובץ PDF מ- Adobe. ב- 1 ביולי 2008, סוכם PDF כסטנדרט בינלאומי שפורסם. כעת, לכל אחד רשאי ליצור יישומים שיכולים לקרוא ולכתוב קבצי PDF מבלי לשלם תמלוגים ל- Adobe Systems. אם אתה מתכנן למכור את התוכנה שלך, עדיין ייתכן שתידרש לקבל רישיון, אך Adobe מספקת להם ללא תמלוגים. (מיקרוסופט יצרה פורמט שונה בשם XPS המבוסס על XML. פורמט ה- PDF של אדובי מבוסס על Postscript. XPS הפך לתקן בינלאומי שפורסם ב- 16 ביוני 2009.)
השימושים של PDF
מכיוון שתבנית PDF היא מתחרה לטכנולוגיה של מיקרוסופט, הם לא מספקים הרבה תמיכה ואתה צריך להשיג אובייקט תוכנה ש"מבין "את פורמט ה- PDF מאדם אחר מלבד מיקרוסופט ברגע זה. Adobe מחזירה את העדפה. גם הם לא תומכים בטכנולוגיה של מיקרוסופט. ציטוט מתוך התיעוד האחרון (אוקטובר 2009) של Adobe Acrobat 9.1, "כרגע אין תמיכה בתמיכה זו פיתוח יישומי פלאגין בשפות מנוהלות כמו C # או VB.NET. "(" פלאגין "הוא תוכנה לפי דרישה רכיב. הפלאגין של אדובי משמש להצגת קובצי PDF בדפדפן. ")
מכיוון ש- PDF הוא סטנדרט, מספר חברות פיתחו תוכנה למכירה שתוכלו להוסיף לפרויקט שלכם שיעשה את העבודה, כולל Adobe. קיימות גם מספר מערכות קוד פתוח. אתה יכול גם להשתמש בספריות האובייקטים של Word (או Visio) לקריאה וכתיבה של קבצי PDF אך באמצעות מערכות גדולות אלה בלבד דבר אחד זה ידרוש תכנות נוספת, יש לו גם בעיות רישיון, ויגרום לתוכנית שלך להיות גדולה יותר מכפי שהיא צריכה להיות.
בדיוק כמו שצריך לקנות את Office לפני שתוכלו לנצל את Word, כך עליכם לקנות את הגרסה המלאה של Acrobat לפני שתוכלו לנצל יותר מסתם הקורא. היית משתמש במוצר Acrobat המלא באותו אופן שבו משתמשים בספריות אובייקטים אחרות, כמו Word 2007 לעיל. במקרה לא התקין את המוצר המלא של Acrobat כך שלא יכולתי לספק דוגמאות שנבדקו כאן.
איך ל
אבל אם אתה רק צריך להציג קבצי PDF בתוכנית שלך, Adobe מספקת פקד ActiveX COM שתוכל להוסיף לארגז הכלים VB.NET. זה יעשה את העבודה בחינם. זה אותו הדבר שבו אתה ככל הנראה משתמש בכדי להציג קבצי PDF בכל מקרה: Adobe Acrobat PDF Reader בחינם.
כדי להשתמש בבקרת הקורא, וודא תחילה שהורדת והתקנת את Acrobat Reader החינמי מ- Adobe.
שלב 2 הוא להוסיף את הפקד לארגז הכלים VB.NET. פתח את VB.NET והפעל יישום Windows רגיל. ("הדור הבא" של מיקרוסופט של המצגת, WPF, עדיין לא עובד עם הפקד הזה. סליחה!) כדי לעשות זאת, לחץ באמצעות לחצן העכבר הימני על כל כרטיסייה (כגון "פקדים נפוצים") ובחר "בחר פריטים ..." מתפריט ההקשר שצץ. בחר בכרטיסייה "רכיבי COM" ולחץ על תיבת הסימון שליד "Adobe PDF Reader" ולחץ על אישור. אתה אמור להיות מסוגל לגלול למטה לכרטיסייה "בקרות" בארגז הכלים ולראות שם את "Adobe PDF Reader".
עכשיו פשוט גרור את הפקד לטופס Windows שלך בחלון העיצוב וגודל אותו בהתאם. לדוגמה מהירה זו, אני לא מתכוון להוסיף שום היגיון אחר, אבל לשליטה יש הרבה גמישות שאגיד לך כיצד לגלות עליהם בהמשך. לדוגמה זו, אני עומד לטעון קובץ PDF פשוט שיצרתי ב- Word 2007. לשם כך, הוסף קוד זה לטופס הליך אירוע טען:
קונסולה. WriteLine (AxAcroPDF1.LoadFile (_
"C: \ משתמשים \ Temp \ SamplePDF.pdf"))
החלף את הנתיב ואת שם הקובץ של קובץ PDF במחשב שלך כדי להפעיל קוד זה. הצגתי את תוצאת השיחה בחלונות הפלט רק כדי להראות איך זה עובד. הנה התוצאה:
לחץ כאן כדי להציג את האיור
לחץ על כפתור הקודם בדפדפן כדי לחזור
אם ברצונך לשלוט בקורא, קיימות שיטות ותכונות לכך גם בבקרה. אבל האנשים הטובים באדובי עשו עבודה טובה יותר מכפי שיכולתי. הורד את Adobe Acrobat SDK ממרכז המפתחים שלהם ( http://www.adobe.com/devnet/acrobat/). התוכנית AcrobatActiveXVB בספריית VBSamples של SDK מראה לך כיצד לנווט במסמך, להשיג את מספרי הגרסאות של תוכנת Adobe בה אתה משתמש ועוד ועוד. אם עדיין לא מותקנת מערכת Acrobat המלאה - אותה יש לרכוש מ- Adobe - לא תוכל להריץ דוגמאות אחרות.