Indeed, I second the newbie question: how do we set TrueType fonts :)?

Doru


On Tue, Mar 26, 2013 at 11:29 AM, Tristan Bourgois <
tristan.bourg...@gmail.com> wrote:

> 2013/3/25 Stéphane Ducasse <stephane.duca...@inria.fr>:
> >
> >
> > Begin forwarded message:
> >
> > From: Igor Stasenko <siguc...@gmail.com>
> > Subject: Re: Some question and request for Athens
> > Date: March 25, 2013 2:57:33 PM GMT+01:00
> > To: Tristan Bourgois <tristan.bourg...@gmail.com>
> > Cc: Stéphane Ducasse <stephane.duca...@inria.fr>, LE PORS Eric
> > <eric.lep...@fr.thalesgroup.com>
> >
> > On 25 March 2013 11:45, Tristan Bourgois <tristan.bourg...@gmail.com>
> wrote:
> >
> > Hi Igor!
> >
> > I have some questions and request for Athens :)
> >
> > 1 Do exist a possibility in Athens to draw a Surface on a Surface?
> > For example :
> > aSurf drawSurface: anOtherSurface at: aPosition
> > (I need it for draw image on a surface)
> >
> >
> > yes. You can use Forms or surfaces as paints so they act like 2D
> textures:
> >
> > canvas setPaint: someSurface.
> > canvas drawShape: myRect.
>
> Thanks that's works fine :)
>
> >
> > 2 About my first question, I try to draw a png image on a Surface and
> > I get some strange behavior. When nothing is applied on my first
> > surface and draw the image in a rectangle path I crash the VM!
> > This an example I tried and crash my VM:
> >
> > |surf pharoLogo ref path patternPaint|
> > surf := AthensCairoSurface extent: 600@600.
> >
> > ref := 'pharo.png' asFileReference.
> > pharoLogo := AthensCairoSurface createFromFile: ref fullName
> ifFailed:[nil].
> >
> > surf drawDuring: [:can|
> >        surf clear.
> >        patternPaint := can setPaint: pharoLogo.
> >        patternPaint setExtend: #None.
> >        can drawShape: (0@0 extent: pharoLogo extent).
> > ].
> > Display getCanvas drawImage: surf asForm at: 0@0.
> >
> > If you need more information about the crash and my environment ask it :)
> >
> > weird... it should be working fine.
>
> I try it on a new clean image and again get a VM crash.
>
> > 3. Do exist something in Athens to create some text and get the extent
> > of the text? I tried to draw text but I only succeed to draw a text
> > without font (only width) and I don't found how to get the extent of
> > this text :( This is really important for the next of the porting
> > because I'm blocking on that and the textModel is not necessary for
> > the next of my work because they already have a layoutManager for the
> > text.
> >
> > You can use freetype to measure text extent. Please look how i doing it
> with
> > AthensTextScanner.
> > Because the default methods of freetype using rounding for font size(s),
> > which is not really nice.
> > I added more precise methods, which do not do any rounding and using
> > them for measuring
> > text extent.
> >
> > Try this:
> >
> > text := 'asdsdgs' asText.
> > lines := (AthensTextComposer scan: text for: AthensTextScanner new)
> lines.
> >
> > lines first width.
> >
> > will give you the width.
> >
> > (but for that to work, your default font should be TTF font)
>
> Sorry for the newbie question but how I can change the default font to TTF
> font?
>
> > Thanks Igor :)
> >
> > Tristan
> >
> > PS: The porting advance as well :) I have animation and that's really
> > amazing :)
> >
> >
> >
> >
> > --
> > Best regards,
> > Igor Stasenko.
> >
> >
>
>


-- 
www.tudorgirba.com

"Every thing has its own flow"

Reply via email to