Crisp font without hi-dpi

Hello,
is it possible to get sharp, crisp font on 4k, 5k, Retina etc. without the need to compile as hi-dpi?

Thanks Marco

On OSX, if you compile as normal, but have App Wrapper set the HiDpi setting, your menus etc will render sharply
Canvas work would probably need to simulate bitmap for caching: a bitmap twice the size of the display, text drawn to that, then rendered into the canvas using drawpicture so you get sub ‘pixel’ level

Uh… why would you not want HiDPI on?

…because i use a lot of container controls displaying in a scrollable canvas and with hi-dpi turned on it scrolls definetly slower…

On windows, linux or mac or both or all ?

mac is a bit slower, windows is much more slower…

so my canvas paint event is:

createCache
g.DrawPicture Bild, 0,0

and my createCache function:

if Bild <> Nil then Return

Bild = Self.BitmapForCaching(self.width*2, self.height*2)
Dim g as Graphics = Bild.Graphics
g.ForeColor=app.playerBG
g.FillRoundRect(0,0,g.width,g.Height,10,10)
g.TextSize=16
g.TextFont="Open Sans Semibold"
g.ForeColor=&cB1B1B1
g.DrawString(name_short,273,38)

am i missing something or why is my picture ‘bild’ not twice as big when drawn into the paint event?

or, in other words … can i use bitmapForCaching on a container control?

I personally have not tried using BitMapforCaching.
My ‘faux’ caching example would have had

Bild = new picture (canvas.width*2, canvas.height*2)

and a paint event of

createCache
g.DrawPicture Bild, 0,0,g.width, g.height, 0,0,bild.width,bild.height
Forum for Xojo Programming Language and IDE. Copyright © 2021 Xojo, Inc.