Premessa
Scopo dell'articolo è quello di riuscire a creare files PDF (Adobe Acrob) con MS Visual Basic e l'FDF Toolkit.
Costruiremo un modello PDF con dei campi nascosti e partendo da questo modello creeremo file valorizzi a nostro piacimento grazie a MS Visual Basic.
Le possibilità di utilizzo sono molteplici e finalizze ad avere stampe, report, documenti con una grafica pressochè perfetta.
I software necessari per realizzare il tutto sono i seguenti :
Microsoft Visual Basic
http://www.microsoft.com/italy/msdn/vstudio/evaluion/previous/default.asp
Adobe Acrob FDF ToolKit (Download Gruito)
http://partners.adobe.com/asn/developer/acrosdk/forms.html
Adobe Acrob (per la creazione dei campi nascosti sul documento pdf)
http://www.adobe.it
Adobe Acrob Reader (Download Gruito)
http://www.adobe.it/products/acrob/readstep.html
Le operazioni che compiremo saranno le seguenti :
1) Creiamo i campi nascosti su un modello PDF con Adobe Acrob
2) Scarichiamo l'Adobe Acrob FDF ToolKit (gris), lo installiamo sulla nostra macchina e registriamo le librerie.
3) Scriviamo il codice Visual Basic per la valorizzazione del modello PDF e la creazione del nostro file definitivo.
Creazione del Modello PDF
Per la realizzazione del nostro modello partiremo da un file pdf già pronto : Scarica il file PDF : Scheda.pdf.
Dopo aver scarico e aperto il file Scheda.pdf (figura 1)
andiamo ad inserire tramite il tasto Modulo(F) (figura 2)
5 caselle di testo negli appositi campi alla sinistra delle etichette : Nome, Cognome, Indirizzo, C.A.P. / Città / P.R. e Telefono.
L' unica proprietà dei campi che andremo a valorizzare, sarà : Nome (figura 3).
Impostiamo quindi i seguenti nomi di campo : txtNome, txtCognome, txtIndirizzo, txtCitta e txtTelefono.
Da notare come dalla maschera proprietà sia possibile impostare e modificare altri valori come il font, la dimensione, i colori ...
Inserite le 5 caselle di testo e imposti i nomi dei campi salviamo il tutto.
Adobe Acrob FDF ToolKit - fdfacx.dll e fdftk.dll
L'Adobe Acrob FDF ToolKit è un ottimo pacchetto sdk messo gruitamente a disposizione per tutti gli sviluppori.
Scarichiamo il pacchetto : Adobe Acrob FDF ToolKit.
Scomptiamo il file ZIP scarico, e copiamo (CTRL+C) e incolliamo(CRTL+V) le due dll fdfacx.dll e fdftk.dll all'interno della nostra cartella C:\winnt\system32\ .
Dopo aver copio le dll all'interno della cartella System32, registriamo il tutto con il comando regsvr32 fdfacx.dll, da finestra dos, oppure trascinando il suddetto file sull'eseguibile regsvr32.exe.
N.B. Registrando fdfacx.dll verrà registra automicamente anche la libreria fdftk.dll .
Per i più curiosi, all'interno del file ZIP è presente anche l' FDF Toolkit Overview and Reference, dove è possibile trovare tante utili informazioni ed esempi di codice e molti altri componenti.
Finalmente ... Visual Basic
Dopo aver creo i nostri campi nascosti nel file Scheda.pdf e dopo aver registro le Dll siamo finalmente pronti per scrivere il codice Visual Basic per poter valorizzare e creare tutti i file Acrob PDF che vogliamo.
Apriamo Visual Basic e creiamo un nuovo Progetto EXE Standard.
Per prima cosa dobbiamo inserire i Riferimenti della libreria (Dll) precedentemente registra.
Facciamo quindi click sul Menù Progetto e successivamente sulla voce Riferimenti.
Nella maschera Riferimenti andiamo a selezionare il riferimento FDFACX 1.0 Type Library (file : FdfAcX.dll) e facciamo click sul tasto OK.
N.B. La versione 1.0 potrebbe essere diversa, l'importante è che coincida il file FdfAcX.dll.
Inseriamo un CommandButton nel nostro Form e andiamo a scrivere il codice all'evento : Prive Sub Command1_Click() ; (Doppio click sul CommandButton per visualizzare l'evento).
Io ho tolto la dichiarazione di variabili obbligoria, Option Explicit, quindi non dichiarerò tutte le variabili.
'Creo l'Oggetto Fdf ToolKit ActiveX
Dim FdfAcx As New FDFACXLib.FdfApp
'Creo il documento FDF
Set myFDf = FdfAcx.FDFCree
'Valorizzo le 5 variabili che conterranno
'i di visualizzi nel File PDF
varNome="Mario"
varCognome="Rossi"
varIndirizzo="Via Unità d'Italia n°10"
varCitta="00100 Roma RM"
varTelefono="06/1234567"
'Riempio i campi del documento con le
'variabili precedentemente valorizze
myFDf.FDFSetValue "txtNome", varNome, False
myFDf.FDFSetValue "txtCognome", varCognome, False
myFDf.FDFSetValue "txtIndirizzo", varIndirizzo, False
myFDf.FDFSetValue "txtCitta", varCitta, False
myFDf.FDFSetValue "txtTelefono", varTelefono, False
'Punto al modello PDF con i campi testo
myFDf.FDFSetFile "C:\scheda.pdf"
'Salvo il file PDF Creo
myFDf.FDFSaveToFile "C:\file.pdf"
'Pulisco le variabili
myFDf.FDFClose
Set myFDf=Nothing
Set FdfAcx=Nothing
A questo punto non ci resta che avviare il progetto (Tasto F5), fare click sul pulsante e andare a verificare se in C:\ c'è il nostro file.
Visto come è semplice creare un file PDF.
Immaginiamo di inserire tale codice in un loop, magari per sfogliare un dabase e creare per ogni recordset un file PDF, con un pò di fantasia ci renderemo da quante cose potremmo fare : schede anagrafiche, etichette, tessere ... dichiarazioni dei redditti .... il tutto con una grafica eccellente.
Buon Lavoro !