Afișarea unui fișier PDF într-un formular VB.NET

click fraud protection

Fișierele PDF au un format de document intern care necesită un obiect software care „înțelege” formatul. Întrucât mulți dintre voi ați folosit funcțiile Office în codul VB, să analizăm succint Microsoft Word ca exemplu de procesare a unui document formatat pentru a ne asigura că înțelegem conceptul. Dacă doriți să lucrați cu un document Word, trebuie să adăugați o referință la biblioteca de obiecte Microsoft Word 12.0 (pentru Word 2007) și apoi să instanțați obiectul aplicației Word în codul dvs.

 Dim myWord Ca Microsoft. Birou. Interop. Cuvânt. ApplicationClass
'Porniți Word și deschideți documentul.
myWord = CreateObject („Word”. Aplicație ")
cuvantul meu. Vizibil = Adevărat
cuvantul meu. Documente. Deschideți ( "C: \ myWordDocument.docx")

("" trebuie înlocuit cu calea reală a documentului pentru ca acest cod să funcționeze pe computerul dvs.)

Microsoft folosește biblioteca de obiecte Word pentru a furniza alte metode și proprietăți pentru utilizarea dvs. Citește articolul COM -.NET Interoperabilitate în Visual Basic pentru a înțelege mai multe despre interop Office Office COM.

instagram viewer

Dar fișierele PDF nu sunt o tehnologie Microsoft. PDF - Format document portabil - este un format de fișier creat de Adobe Systems pentru schimbul de documente. Ani de zile, era cu totul proprietate și trebuia să obții un software care să poată prelucra un fișier PDF de la Adobe. La 1 iulie 2008, PDF a fost finalizat ca standard internațional publicat. Acum, oricui i se permite să creeze aplicații care pot citi și scrie fișiere PDF fără a fi nevoiți să plătească redevențe către Adobe Systems. Dacă intenționați să vindeți software-ul, vi se poate solicita totuși să obțineți o licență, însă Adobe le furnizează fără drepturi. (Microsoft a creat un format diferit numit XPS care se bazează pe XML. Formatul PDF al Adobe este bazat pe Postscript. XPS a devenit un standard internațional publicat la 16 iunie 2009.)

Utilizările PDF

Întrucât formatul PDF este un concurent al tehnologiei Microsoft, acestea nu oferă multă asistență și dumneavoastră trebuie să obțineți un obiect software care „înțelege” formatul PDF de la altcineva decât Microsoft acum. Adobe returnează favoarea. De asemenea, nu acceptă tehnologia Microsoft. Citând din cea mai recentă (octombrie 2009) documentație Adobe Acrobat 9.1, „În prezent nu există suport pentru dezvoltarea de plug-in-uri folosind limbi gestionate precum C # sau VB.NET. "(Un„ plug-in "este un software la cerere componentă. Plug-in-ul Adobe este folosit pentru a afișa PDF-uri într-un browser. ")

Deoarece PDF este un standard, mai multe companii au dezvoltat software de vânzare pe care îl puteți adăuga la proiectul dvs. care va face treaba, inclusiv Adobe. Există, de asemenea, o serie de sisteme open-source disponibile. De asemenea, puteți utiliza bibliotecile de obiecte Word (sau Visio) pentru a citi și scrie fișiere PDF, dar folosind aceste sisteme mari doar acest lucru va necesita programare suplimentară, are și probleme de licență și va face programul dvs. mai mare decât trebuie fi.

La fel cum trebuie să cumpărați Office înainte de a putea profita de Word, trebuie să cumpărați și versiunea completă a Acrobat înainte de a putea profita de mai mult decât de Reader. Ați folosi produsul Acrobat complet în același mod în care sunt utilizate alte biblioteci de obiecte, cum ar fi Word 2007 de mai sus. Nu se întâmplă să am produsul Acrobat complet instalat, așa că nu am putut oferi niciun exemplu testat aici.

Cum să

Dar dacă aveți nevoie să afișați doar fișiere PDF în programul dvs., Adobe oferă un control ActiveX COM pe care îl puteți adăuga în caseta de instrumente VB.NET. Va face treaba gratuit. Este același lucru pe care îl utilizați probabil pentru a afișa fișiere PDF oricum: gratuit Adobe Acrobat PDF Reader.

Pentru a utiliza controlul Reader, mai întâi asigurați-vă că ați descărcat și instalat gratuit Acrobat Reader de la Adobe.

Pasul 2 este să adăugați controlul în caseta de instrumente VB.NET. Deschideți VB.NET și porniți o aplicație Windows standard. („Generația următoare” de prezentare Microsoft, WPF, nu funcționează încă cu acest control. Ne pare rău!) Pentru a face acest lucru, faceți clic dreapta pe orice filă (cum ar fi „Controluri comune”) și selectați „Alege elemente ...” din meniul contextual care apare. Selectați fila „Componentele COM” și faceți clic pe caseta de lângă „Adobe PDF Reader” și faceți clic pe OK. Ar trebui să puteți derula până la fila „Controluri” din caseta de instrumente și să vedeți „Adobe PDF Reader” acolo.

Acum doar trageți controlul în formularul Windows în fereastra de proiectare și dimensionați-l în mod corespunzător. Pentru acest exemplu rapid, nu voi adăuga nicio altă logică, dar controlul are multă flexibilitate despre care vă voi spune cum să aflați mai târziu. Pentru acest exemplu, voi încărca doar un PDF simplu pe care l-am creat în Word 2007. Pentru aceasta, adăugați acest cod la formularul Procedura de încărcare a evenimentului:

 Consolă. WriteLine (AxAcroPDF1.LoadFile (_)
"C: \ Users \ Temp \ SamplePDF.pdf"))

Înlocuiți calea și numele fișierului unui fișier PDF pe propriul computer pentru a rula acest cod. Am afișat rezultatul apelului în ferestrele de ieșire doar pentru a arăta cum funcționează. Iată rezultatul:


Faceți clic aici pentru a afișa ilustrația
Faceți clic pe butonul Înapoi din browser pentru a vă întoarce

Dacă doriți să controlați Cititorul, există și metode și proprietăți pentru asta în control. Dar oamenii buni de la Adobe au făcut o treabă mai bună decât am putut. Descărcați Adobe Acrobat SDK din centrul lor de dezvoltatori ( http://www.adobe.com/devnet/acrobat/). Programul AcrobatActiveXVB din directorul VBSamples din SDK vă arată cum să navigați într-un document, să obțineți numerele de versiune ale software-ului Adobe pe care îl utilizați și multe altele. Dacă nu aveți instalat sistemul Acrobat complet - care trebuie achiziționat de la Adobe - nu veți putea rula alte exemple.

instagram story viewer