[Gambas-user] Drawing

javier romero cjro99 at ...67...
Tue Apr 25 20:23:49 CEST 2006


I try to do that, but in

     imageWidth *= scaleIsotropic
     imageHeight *= scaleIsotropic

the interpreter sends an error.
there is any error in there?.

Also i need convert a drawing area into a image, how i can do that?

Thanks
Javier
----------------------------------------
> From: timothy.marshal-nichols at ...247...
> To: gambas-user at lists.sourceforge.net
> Subject: RE: Re: [Gambas-user] Drawing
> Date: Mon, 24 Apr 2006 17:57:08 +0100
> 
> 
> This example shows how to print an image centred on the page. In includes
> code to scale an image for the printer resolution. If the image is the to
> large for the printer height or width resizes it to fit on the page -
> keeping the aspect ratio.
> 
> You will need something like this only with a drawing.
> 
> PRIVATE SUB PrintImage(img AS Image)
>   DIM imageToPrint AS Image
>   DIM imageWidth AS Integer
>   DIM imageHeight AS Integer
>   DIM scaleIsotropic AS Float
>   ' Dispaly printer dialog
>   IF Printer.Setup() THEN RETURN
>   INC Application.Busy
>   ' Get image size for the printer resolution
>   imageWidth = (img.Width * Printer.Resolution) / Desktop.Resolution
>   imageHeight = (img.Height * Printer.Resolution) / Desktop.Resolution
>   ' Adjust image size if it does not fit on the printer page
>   IF imageWidth > Printer.Width OR imageHeight > Printer.Height THEN
>     ' Scale Isotropic, keep aspect ratio of the image
>     scaleIsotropic = Min(Printer.Width / imageWidth, Printer.Height /
> imageHeight)
>     imageWidth *= scaleIsotropic
>     imageHeight *= scaleIsotropic
>   END IF
>   'PRINT "Width: " & imageToPrint, Printer.Width
>   'PRINT "Height: " & imageToPrint, Printer.Height
>   ' Scale image
>   imageToPrint = img.Stretch(imageWidth, imageHeight, TRUE)
>   ' Draw image centered on printer page
>   Draw.Begin(Printer)
>   Draw.Image(imageToPrint, (Printer.Width - imageWidth) / 2,
> (Printer.Height - imageHeight) / 2)
>   Draw.End
>   DEC Application.Busy
> END
> 
> 
> Thanks
> 
> 8-{)} Timothy Marshal-Nichols
> <mailto: timothy.marshal-nichols at ...247...>
> 
> 
> -----Original Message-----
> From: gambas-user-admin at lists.sourceforge.net
> [mailto:gambas-user-admin at lists.sourceforge.net]On Behalf Of javier
> romero
> Sent: Monday, 24 April 2006 14:37
> To: gambas-user at lists.sourceforge.net
> Subject: RE: Re: [Gambas-user] Drawing
> 
> 
> Ok, thanks, its works but the print is very small, i try scaling with this:
> 
>    draw.Begin(printer)
>      draw.drawing(p1,350,350, Printer.Width, Printer.Height)
>    draw.End
>    but dosent works the print is the same, little, i try then with
> 
>    draw.Begin(printer)
>      draw.drawing(p1,350,350, p1.Width, p1.Height)
>    draw.End
> and the same, very little, in both dont change
> 
> How i scale?
> 
> sorry about my very bad english
> 
> Regards
> Javier
> ----------------------------------------
> > From: christian.faurebouvard at ...357...
> > To: gambas-user at lists.sourceforge.net
> > Subject: Re: [Gambas-user] Drawing
> > Date: Sat, 22 Apr 2006 17:50:15 -0400
> >
> > El Viernes 21 Abril 2006 09:48, javier romero escribió:
> > > PUBLIC p1 AS Drawing
> > > PUBLIC pag AS DrawingArea
> > >
> > > PUBLIC SUB _new()
> > >     p1 = NEW Drawing
> > >     draw.Begin(p1)
> > >       draw.Text("Hello", 0, 0)
> > >     draw.End
> > >
> > > END
> > >
> > > PUBLIC SUB Form_Open()
> > >
> > > pag = NEW DrawingArea(sv1)
> > >
> > >   pag.Cached = TRUE
> > >   pag.Clear
> > >   pag.BackColor = color.White
> > >   pag.Width = printer.Width
> > >   pag.Height = printer.Height
> > >   pag.Border = 1
> > >   draw.Begin(pag)
> > >     draw.Drawing(p1, 0, 0)
> > >   draw.End
> > > ' This works OK
> > >   pag.Visible = TRUE
> > >
> > > END
> > >
> > > PUBLIC SUB Button1_Click()
> > >
> > >   draw.Begin(printer)
> > >     draw.drawing(p1,0,0, pag.Width, pag.Height)
> > >   draw.End
> > > ' This doesn't works
> > > END
> >
> > Hi Javier,
> >
> > Some printers can't print in (0,0)
> > Try
> >  draw.drawing(p1, 350, 350)
> >
> > it work, but very small, need to be scaled.
> >
> > Regards,
> > Christian
> >
> >
> > -------------------------------------------------------
> > Using Tomcat but need to do more? Need to support web services, security?
> > Get stuff done quickly with pre-integrated technology to make your job
> easier
> > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> > http://sel.as-us.falkag.net/sel?cmd=k&kid0709&bid&3057&dat1642
> > _______________________________________________
> > Gambas-user mailing list
> > Gambas-user at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gambas-user
> 
> _________________________________________________________________
> Descarga gratis la Barra de Herramientas de MSN
> http://www.msn.es/usuario/busqueda/barra?XAPID=2031&DI=1055&SU=http%3A//www.
> hotmail.com&HL=LINKTAG1OPENINGTEXT_MSNBH
> 
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job
> easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=k&kid0709&bid&3057&dat1642
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user
> 
> 
> 
> 
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> _______________________________________________
> Gambas-user mailing list
> Gambas-user at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gambas-user

_________________________________________________________________
Descarga gratis la Barra de Herramientas de MSN
http://www.msn.es/usuario/busqueda/barra?XAPID=2031&DI=1055&SU=http%3A//www.hotmail.com&HL=LINKTAG1OPENINGTEXT_MSNBH



More information about the User mailing list