[Gambas-user] About Printer
Demosthenes Koptsis
demosthenesk at ...626...
Tue Jul 19 16:45:56 CEST 2011
On Tue, 2011-07-19 at 15:40 +0200, Benoît Minisini wrote:
> > Benoit,
> >
> > Paint.scale work good if there is not text ..; but if there is ...
> > then text font size is increased by the scale too
> >
>
> This is normal. This it the goal of that matrix: everything is scaled. I added
> a remark about that on the "How to print" wiki page.
> Regards,
>
At "How to print" page says:
Consequently, if a 10 points font is a good size for drawing text on the
screen, it may be too big for the paper: as the printer resolution is
far greater than the screen resolution, you usually print things
smaller.
We know that Desktop.Resolution uses 12 points Font, for example
Also we know Printer.Resolution, so X points Font should be on printer.
I made an example
---------
' Gambas class file
Public Sub Button1_Click()
If Not Printer1.Configure() Then
Printer1.Count = 1
Printer1.FullPage = True
Printer1.Print
Endif
End
Public Sub Printer1_Draw()
Dim X As Float
Dim Y As Float
Dim W As Float
Dim H As Float
Dim hFactor As Float
Dim wFactor As Float
hFactor = Paint.Height / Printer1.PaperHeight
wFactor = Paint.Width / Printer1.PaperWidth
Paint.Scale(wFactor, hFactor)
'Set brush
Paint.Brush = Paint.Color(Color.RGB(255, 0, 0, 0))
Paint.LineWidth = 0.45
'Set origin 0,0
X = 0
Y = 0
'Set width, height of printing area
W = Printer1.PaperWidth - Paint.LineWidth
H = Printer1.PaperHeight - Paint.LineWidth
'Draw printing area with red rectangle
Paint.Rectangle(X, Y, W, H)
Paint.Stroke
'Draw font
Paint.MoveTo(10, 10 + Paint.TextExtents("toto").Height)
Paint.Font.Name = "Times New Roman"
Paint.Font.Size = 12 * (Desktop.Resolution / Printer1.Resolution)
Paint.Text("toto")
Paint.Fill
End
-------------
You know allreay the code but check out the line
Paint.Font.Size = 12 * (Desktop.Resolution / Printer1.Resolution)
i think this line prints a good 12 points font on a pdf as i see.
Compare the result with an OpenOffice pdf. It has good success.
i attach the project.
--
Regards,
Demosthenes
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PrintFonts.tar.bz2
Type: application/x-bzip-compressed-tar
Size: 19049 bytes
Desc: not available
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20110719/ac486aa3/attachment.bin>
More information about the User
mailing list