Visualizzazione di un file PDF in un modulo VB.NET

I file PDF hanno un formato di documento interno che richiede un oggetto software che "comprenda" il formato. Poiché molti di voi potrebbero aver utilizzato le funzioni di Office nel codice VB, esaminiamo brevemente Microsoft Word come esempio di elaborazione di un documento formattato per essere sicuri di comprendere il concetto. Se si desidera lavorare con un documento di Word, è necessario aggiungere un riferimento alla libreria di oggetti Microsoft Word 12.0 (per Word 2007) e quindi creare un'istanza dell'oggetto Applicazione Word nel codice.

 Dim myWord As Microsoft. Ufficio. Interop. Parola. ApplicationClass
'Avvia Word e apri il documento.
myWord = CreateObject ("Word. Applicazione")
la mia parola. Visibile = Vero
la mia parola. Documenti. Open ( "C: \ myWordDocument.docx")

("" deve essere sostituito con il percorso effettivo del documento per far funzionare questo codice sul tuo PC.)

Microsoft utilizza la libreria di oggetti di Word per fornire altri metodi e proprietà per l'uso. Leggi l'articolo

instagram viewer
Interoperabilità COM -.NET in Visual Basic per saperne di più sull'interoperabilità COM di Office.

Ma i file PDF non sono una tecnologia Microsoft. PDF - Portable Document Format - è un formato di file creato da Adobe Systems per lo scambio di documenti. Per anni, era totalmente proprietario e dovevi ottenere software in grado di elaborare un file PDF da Adobe. Il 1 ° luglio 2008, il PDF è stato finalizzato come standard internazionale pubblicato. Ora, chiunque è autorizzato a creare applicazioni in grado di leggere e scrivere file PDF senza dover pagare royalties ad Adobe Systems. Se prevedi di vendere il tuo software, ti potrebbe essere richiesto di ottenere una licenza, ma Adobe li fornisce gratuitamente. (Microsoft ha creato un formato diverso chiamato XPS basato su XML. Il formato PDF di Adobe si basa su Postscript. XPS è diventato uno standard internazionale pubblicato il 16 giugno 2009.)

Gli usi del PDF

Poiché il formato PDF è un concorrente della tecnologia Microsoft, non forniscono molto supporto e tu deve ottenere un oggetto software che "comprenda" il formato PDF da qualcuno diverso da Microsoft in questo momento. Adobe restituisce il favore. Non supportano nemmeno la tecnologia Microsoft. Citando dall'ultima documentazione di Adobe Acrobat 9.1 (ottobre 2009), "Al momento non esiste supporto per sviluppo di plug-in usando linguaggi gestiti come C # o VB.NET. "(Un" plug-in "è un software su richiesta componente. Il plug-in di Adobe viene utilizzato per visualizzare i PDF in un browser. ")

Poiché il PDF è uno standard, diverse aziende hanno sviluppato software in vendita che è possibile aggiungere al progetto che farà il lavoro, incluso Adobe. Sono inoltre disponibili numerosi sistemi open source. Puoi anche usare le librerie di oggetti Word (o Visio) per leggere e scrivere file PDF ma usando questi grandi sistemi solo per questa cosa richiederà una programmazione extra, ha anche problemi di licenza e renderà il tuo programma più grande del necessario essere.

Proprio come è necessario acquistare Office prima di poter usufruire di Word, è necessario acquistare anche la versione completa di Acrobat prima di poter usufruire di più di un semplice Reader. Utilizzerai l'intero prodotto Acrobat nello stesso modo in cui vengono utilizzate altre librerie di oggetti, come Word 2007 sopra. Non ho installato l'intero prodotto Acrobat, quindi non ho potuto fornire esempi testati qui.

Come

Ma se hai solo bisogno di visualizzare i file PDF nel tuo programma, Adobe fornisce un controllo COM ActiveX che puoi aggiungere a VB.NET Toolbox. Farà il lavoro gratuitamente. È lo stesso che probabilmente utilizzerai per visualizzare comunque i file PDF: Adobe Acrobat PDF Reader gratuito.

Per utilizzare il controllo Reader, assicurarsi innanzitutto di aver scaricato e installato Acrobat Reader gratuito da Adobe.

Il passaggio 2 consiste nell'aggiungere il controllo alla casella degli strumenti VB.NET. Apri VB.NET e avvia un'applicazione Windows standard. (La "prossima generazione" di presentazione di Microsoft, WPF, non funziona ancora con questo controllo. Siamo spiacenti!) Per farlo, fai clic con il tasto destro del mouse su qualsiasi scheda (come "Comandi comuni") e seleziona "Scegli elementi ..." dal menu contestuale che si apre. Selezionare la scheda "Componenti COM" e fare clic sulla casella di controllo accanto a "Adobe PDF Reader" e fare clic su OK. Dovresti essere in grado di scorrere fino alla scheda "Controlli" nella casella degli strumenti e vedere "Adobe PDF Reader" lì.

Ora trascina il controllo sul tuo Windows Form nella finestra di progettazione e ridimensionalo in modo appropriato. Per questo rapido esempio, non aggiungerò altra logica, ma il controllo ha molta flessibilità di cui ti dirò come scoprirlo in seguito. Per questo esempio, ho intenzione di caricare un semplice PDF che ho creato in Word 2007. Per fare ciò, aggiungi questo codice al modulo Carica evento procedura:

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

Sostituisci il percorso e il nome del file PDF sul tuo computer per eseguire questo codice. Ho visualizzato il risultato della chiamata nelle finestre Output solo per mostrare come funziona. Ecco il risultato:


Fare clic qui per visualizzare l'illustrazione
Fare clic sul pulsante Indietro sul browser per tornare

Se si desidera controllare Reader, nel controllo sono presenti anche metodi e proprietà. Ma le brave persone di Adobe hanno fatto un lavoro migliore di quanto potessi. Scarica Adobe Acrobat SDK dal loro centro per sviluppatori ( http://www.adobe.com/devnet/acrobat/). Il programma AcrobatActiveXVB nella directory VBSamples dell'SDK mostra come navigare in un documento, ottenere i numeri di versione del software Adobe in uso e molto altro. Se non è installato il sistema Acrobat completo, che deve essere acquistato da Adobe, non sarà possibile eseguire altri esempi.

instagram story viewer