Differenze tra le versioni di "Creare un file PDF con le risorse del Componente gb.cairo"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Il Componente di Gambas ''gb.cairo'' consente, fra l'altro, di creare file PDF disegnandovi figure, testo ed in generale ogni altro elemento di disegno. E' necessario imposta...") |
|||
Riga 1: | Riga 1: | ||
− | Il Componente di Gambas ''gb.cairo'' consente, fra l'altro, di creare file PDF disegnandovi figure, testo ed in generale ogni altro elemento di disegno. | + | Il Componente di Gambas ''gb.cairo'' consente, fra l'altro, di creare file PDF disegnandovi figure, testo, immagini ed in generale ogni altro elemento di disegno. |
E' necessario impostare innanzitutto la superficie grafica di tipo PDF, sulla quale disegnare; quindi iniziare il disegno con la Classe ''Cairo''. | E' necessario impostare innanzitutto la superficie grafica di tipo PDF, sulla quale disegnare; quindi iniziare il disegno con la Classe ''Cairo''. | ||
Riga 8: | Riga 8: | ||
Dim pdf As CairoPdfSurface | Dim pdf As CairoPdfSurface | ||
Dim x, y As Integer | Dim x, y As Integer | ||
+ | Dim im, im2 As Image | ||
+ | |||
<FONT Color=gray>' ''Specifica la superficie grafica da creare per disegnarvi sopra:''</font> | <FONT Color=gray>' ''Specifica la superficie grafica da creare per disegnarvi sopra:''</font> | ||
Riga 52: | Riga 54: | ||
Cairo.Source = Cairo.ColorPattern(Color.Violet) | Cairo.Source = Cairo.ColorPattern(Color.Violet) | ||
Cairo.Fill | Cairo.Fill | ||
+ | |||
+ | |||
+ | <FONT Color=gray>' ''Vengono inserite due immagini caricate da due file PNG:''</font> | ||
+ | im = Image.Load("''/percorso/del/primo/file.png''") | ||
+ | im2 = Image.Load("''/percorso/del/secondo/file.png''") | ||
+ | |||
+ | Cairo.Scale(1, 1) <FONT Color=gray>' ''Non imposta alcuna modifica scalare all'immagine''</font> | ||
+ | Cairo.Source = Cairo.ImagePattern(im, 200, 200) | ||
+ | Cairo.Paint <FONT Color=gray>' ''Imposta l'immagine sulla superficie PDF''</font> | ||
+ | |||
+ | Cairo.Scale(0.5, 0.5) <FONT Color=gray>' ''Riduce della metà la dimensione della seconda immagine da disegnare sulla superficie PDF''</font> | ||
+ | Cairo.Source = Cairo.ImagePattern(im2, 300, 300) | ||
+ | Cairo.Paint | ||
+ | |||
<FONT Color=gray>' ''Termina il disegno:''</font> | <FONT Color=gray>' ''Termina il disegno:''</font> | ||
Cairo.End | Cairo.End | ||
'''End''' | '''End''' |
Versione delle 20:27, 15 ago 2015
Il Componente di Gambas gb.cairo consente, fra l'altro, di creare file PDF disegnandovi figure, testo, immagini ed in generale ogni altro elemento di disegno.
E' necessario impostare innanzitutto la superficie grafica di tipo PDF, sulla quale disegnare; quindi iniziare il disegno con la Classe Cairo.
Mostriamo di seguito un semplice esempio:
Public Sub Main() Dim pdf As CairoPdfSurface Dim x, y As Integer Dim im, im2 As Image ' Specifica la superficie grafica da creare per disegnarvi sopra: pdf = New CairoPdfSurface("/percorso/del/file/pdf/da/creare", 210.0, 297.0) ' Inizia il disegno sulla superficie impostata: Cairo.Begin(pdf) ' Disegna un arco: Cairo.LineWidth = 10.0 Cairo.Arc(300, 300, 100.0, 45.0 * (Pi / 180.0), 180.0 * (Pi / 180.0)) Cairo.Source = Cairo.ColorPattern(Color.Blue) ' Imposta il colore dell'elemento del disegno Cairo.Stroke ' Disegna un arco colorato pieno: Cairo.LineWidth = 10.0 Cairo.ArcNegative(400, 300, 100.0, 45.0 * (Pi / 180.0), 180.0 * (Pi / 180.0)) Cairo.Source = Cairo.ColorPattern(Color.Orange) Cairo.Fill ' Scrive il testo: Cairo.Font.Size = 20 Cairo.Font.Name = "URW Palladio L" Cairo.Source = Cairo.ColorPattern(Color.Red) Cairo.MoveTo(100, 200) Cairo.DrawText("Drawtext") Cairo.Fill Cairo.Source = Cairo.ColorPattern(Color.Green) Cairo.MoveTo(400, 300) Cairo.Text("Text") Cairo.Fill ' Disegna 10x10 quadrati pieni: For x = 0 To 9 For y = 0 To 9 Cairo.Rectangle(200 + x * 10.0, 500 + y * 10.0, 5, 5) Next Next Cairo.Source = Cairo.ColorPattern(Color.Violet) Cairo.Fill ' Vengono inserite due immagini caricate da due file PNG: im = Image.Load("/percorso/del/primo/file.png") im2 = Image.Load("/percorso/del/secondo/file.png") Cairo.Scale(1, 1) ' Non imposta alcuna modifica scalare all'immagine Cairo.Source = Cairo.ImagePattern(im, 200, 200) Cairo.Paint ' Imposta l'immagine sulla superficie PDF Cairo.Scale(0.5, 0.5) ' Riduce della metà la dimensione della seconda immagine da disegnare sulla superficie PDF Cairo.Source = Cairo.ImagePattern(im2, 300, 300) Cairo.Paint ' Termina il disegno: Cairo.End End