Ottenere un file PDF da una Image

Da Gambas-it.org - Wikipedia.

E' possibile ottenere un file PDF dal contenuto grafico di un Oggetto Image.
In particolare, per ottenere il file PDF bisognerà far stampare dalla Classe Paint nell'Evento "_Draw()" dell'Oggetto Printer i dati immagine contenuti dall'Oggetto Image.
Si utilizzerà la Proprietà ".OutputFile". [nota 1]

Mostriamo un esempio pratico:

Private im As Image
Private printer1 As Printer


Public Sub Form_Open()

 im = Image.Load("/percorso/del/file/immagine")

 With printer1 = New Printer As "Printer1"
   .Paper = Printer.A4
   .GrayScale = False
   .Resolution = Desktop.Resolution
' Per creare un file PDF, imposta la Proprietà ".OutputFile":
   .OutputFile = "/tmp/file.pdf"
   .Print
 End With

End


Public Sub Printer1_Draw()

 With Paint
' Usa il Metodo "DrawImage():
   .DrawImage(im, 0, 0, im.W, im.H), 1.0, Null)
   .End
 End With

End

Ugualmente se il PDF debba essere ottenuto dall'immagine mostrata da una PictureBox.
In tal caso si raccoglieranno i dati immagine contenuti dalla Proprietà ".Image" della PictureBox [nota 2] o di una ImageView.

Private printer1 As Printer


Public Sub Form_Open()

 PictureBox.Image = Image.Load("/percorso/del/file/immagine")

 With printer1 = New Printer As "Printer1"
   .Paper = Printer.A4
   .GrayScale = False
   .Resolution = Desktop.Resolution
' Per creare un file PDF, imposta la Proprietà ".OutputFile":
   .OutputFile = "/tmp/file.pdf"
   .Print
 End With

End


Public Sub Printer1_Draw()

 With Paint
' Usa il Metodo "DrawImage():
   .DrawImage(PictureBox1.Image, 0, 0, PictureBox1.Image.W, PictureBox1.Image.H, 1.0, Null)
   .End
 End With

End


Note

[1] Vedere anche il seguente paragrafo: Stampare in un file PDF (creare un file PDF)

[2] Vedere anche la seguente pagina: Stampare il contenuto grafico di una PictureBox.