Creare un file PDF con le risorse del Componente gb.cairo

Da Gambas-it.org - Wikipedia.
Versione del 15 ago 2015 alle 20:03 di Vuott (Discussione | contributi) (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...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

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 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
 
' 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
 
' Termina il disegno:
  Cairo.End
 
End