Differenze tra le versioni di "Stampare un file PDF"
Da Gambas-it.org - Wikipedia.
Riga 61: | Riga 61: | ||
− | '''Public''' Sub Printer1_Draw() <FONT color=#006400>' ''Questo evento è richiamato per ogni pagina da stampare.''</font> |[[#Note|1]]| | + | '''Public''' Sub Printer1_Draw() <FONT color=#006400>' ''Questo evento è richiamato per ogni pagina da stampare.''</font> '''|[[#Note|1]]|''' |
<FONT color=#006400>' ''Queste sono le informazioni di ciò che si andrà a stampare:''</font> | <FONT color=#006400>' ''Queste sono le informazioni di ciò che si andrà a stampare:''</font> |
Versione delle 11:38, 21 mag 2013
Mostreremo di seguito due opzioni per stampare un file PDF.
Stampa con le sole funzioni di Gambas
Per stampare in modo elementare un file PDF con le sole funzioni di Gambas, possiamo utilizzare la seguente semplice modalità, per la quale sarà necessario:
- attivare il componente gb.pdf;
- inserire sul Form l'oggetto speciale Printer;
- inserire sul Form un Button;
- inserire sul Form una ScrollView della stessa dimensione del Form;
- all'interno della ScrollView si dovrà inserire una PictureBox della stessa dimensione.
Private pdf As New PdfDocument Private pc As Picture Public Sub Form_Open() With pdf ' Carichiamo il file PDF del documento da mostrare: .Open("percorso_del_mio_file.pdf") ' Se il file pdf è stato caricato correttamente... If .Ready = True Then ' ...allora convertiamo la prima pagina ("indice" delle pagine = 1) in una "Image", ' e quindi l' "image" in una "Picture"... pc = pdf[1].Image.Picture ' ...che così potremo caricare nella "PictureBox": PictureBox1.Picture = pc ' Adattiamo la dimensione della "PictureBox" alla dimensione della pagina pdf: PictureBox1.Resize(pdf[1].Width, pdf[1].Height) Else ' Altrimenti mostriamo una messaggio di avviso: Message.Error("<FONT color=darkred>Errore nel caricamento del file PDF !") Endif End With End ' Prevediamo l'utilizzo, volendo, anche di una "ScrollView", ' che agevolerà la visualizzazione anche in caso di ridimensionamento del Form: Public Sub Form_Resize() ScrollView1.Resize(FMain.W - 10, FMain.H - 10) End Public Sub Button1_Click() With Printer1 .Configure ' opzionale - apre la finestra di dialogo se si vuole impostare la stampante. .Orientation = 0 ' opzionale - (oppure: Printer1.Portrait) imposta la modalità di stampa "Verticale" (oppure "Orizzontale"). .Paper = 2 ' opzionale - imposta il tipo di carta ( 2 = A4). .Resolution = Desktop.Resolution ' opzionale - modificando il valore di questa proprietà si ottiene una stampa più grande o più piccola. .Print ' effettua la stampa su foglio. End With End Public Sub Printer1_Draw() ' Questo evento è richiamato per ogni pagina da stampare. |1| ' Queste sono le informazioni di ciò che si andrà a stampare: With Paint .DrawPicture(pc, PictureBox1.X, PictureBox1.Y, pc.W, pc.H) .Fill End With End
Utilizzare il codice HTML
Quest'altra modalità prevede una procedura mediata per giungere alla stampa del file PDF. Infatti il codice HTML aprirà il file PDF all'interno del programma predefinito di lettura dei file PDF. Da questo programma, poi, si procederà alla stampa.
Faremo uso di un MessageBox per contenere il codice HTML:
Public Sub Button1_Click() Message.Info("<A href=percorso_del_file.PDF>Apri file PDF") End
Note
[1] Per la stampa di più pagine mediante l'oggetto speciale Printer, vedere questa specifica pagina.