[Gambas-user] Please help me!

Fabien Bodard gambas.fr at ...626...
Thu Jun 30 15:53:06 CEST 2011


Le 30 juin 2011 14:00, Benoît Minisini <gambas at ...1...> a écrit :
>> Yes, Benoit,
>> still even if change the synthax to:
>>
>> Public Sub PrintID()
>> Dim i As Integer
>> Dim tagok As String[]
>> samsung = New Printer As "samsung"
>> If samsung.Configure() Then Return
>> samsung.Count = 1
>> samsung.Print
>>
>> End
>>
>> Public Sub samsung_Begin()
>>
>> End
>>
>> Public Sub samsung_Draw()
>> Dim i As Integer
>> Dim tagok As String[]
>> tagok = Split(datae[curr], ";")
>> For i = 0 To tagok.Count - 1
>> Paint.Font = Font["Lucida Sans"]
>> Paint.Font.Size = lett[i]
>> Paint.DrawText(tagok[i], CFloat(xcor[i]), CFloat(ycor[i]))

'hey tou forgot that !!

Paint.fill




>> Next
>> End
>>
>> It prints blank pages only, while the Printer example works O.K.
>> I don't understand this at all. I'm wrestling with this since 3 days.
>>
>
> If you send me a project, I will be able to look deeper in your problem!
>
> --
> Benoît Minisini
>
> ------------------------------------------------------------------------------
> All of the data generated in your IT infrastructure is seriously valuable.
> Why? It contains a definitive record of application performance, security
> threats, fraudulent activity, and more. Splunk takes this data and makes
> sense of it. IT sense. And common sense.
> http://p.sf.net/sfu/splunk-d2d-c2
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
>


when you are using paint it have 2 time :

creating the path

filling or trace it


To fill it : Paint.fill

To trace the border : Paint.Stroke

You can do the both :

Paint.Fill(true)
Paint.Stroke


If you want to have a letter With a border Red and the middle yellow
Paint.Font.Size = 16
Paint.Text("a",1,1)
Paint.Brush = Paint.Color(color.yellow)
Paint.Fill(true)
Paint.Brush = paint.Color(Color.red)
Paint.Fill



So now your code will be



-- 
Fabien Bodard

Public Sub samsung_Draw()
  Dim i As Integer
  Dim tagok As String[]
  tagok = Split(datae[curr], ";")
  For i = 0 To tagok.Count - 1
    Paint.Font = Font["Lucida Sans"]
    Paint.Font.Size = lett[i]
    Paint.DrawText(tagok[i], CFloat(xcor[i]), CFloat(ycor[i]))
    Paint.Fill
  next
end

If you forgot the fill statement ... the printer draw nothing

Paint class work like cairo, and is really different of the draw class.

Take a look at the painting example.

--
Fabien Bodard




More information about the User mailing list