Generare un file immagine da una DrawingArea
Vai alla navigazione
Vai alla ricerca
Per generare un file immagine da una DrawingArea, si può attuare la seguente procedura:
- disegno e/o scrivo nella DrawingArea;
- creo il file PDF mediante la proprietà .OutputFile della Classe Printer;
- utilizzando il file PDF, converto la pagina PDF in una Image (è necessario attivare il componente gb.pdf);
- quindi salvo detta Image con il suo metodo .Save in un file immagine.
Mostriamo di seguito un esempio:
Public Sub DrawingArea1_Draw()
With Paint
.Brush = Paint.Color(Color.Red)
.MoveTo(200, 200)
.RelLineTo(0, 100)
.Stroke
.DrawText("Testo con DrawText", 10, 10, 20, 20)
.End
End With
End
Public Sub Button1_Click()
With Printer1
.Configure
.Orientation = 0
.Paper = 2
.Resolution = Desktop.Resolution
' Stampa/crea un file .pdf:
.OutputFile = "/tmp/mio_file.pdf"
.Print
End With
End
Public Sub Printer1_Draw()
DrawingArea1_Draw()
End
Public Sub Button2_Click()
Dim pdf As New PdfDocument
Dim i As New Image
With pdf
.Open("/tmp/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":
i = pdf[1].Image
' Infine salviamo l'Image in un file immagine
' (è necessario scegliere il tipo di file immagine fra quelli supportati):
i.Save("/tmp/mio_file.xxx")
Else
Message.Error("<FONT color=darkred>Errore nel caricamento del file PDF !")
Endif
End With
End