[Lazarus] LCL High-DPI request for help adding images

Kostas Michalopoulos badsectoracula at gmail.com
Mon Feb 27 08:25:56 CET 2017

SVN is not ideal for icon formats. Beyond being too big (it is a verbose
XML file after all), vector icons do not good at arbitrary sizes. IMO the
best approach for vector icons is what Haiku OS is doing by using a custom
icon format that is designed for small sizes and -more importantly-
different elements in an icon can have a LOD range so that some elements
will be hidden in small sizes and others hidden in large sizes.

Details and an example for LOD is here:


The icon with the four colored triangles only show numbers in large sizes
and in small sizes the outline is replaced with a thicker one that is still
visible despite the small size (the original outline would be a smudge at
the smallest size).

More technical details for Haiku's format can be found here:


Of course this is probably the hardest approach to take (at minimum one
would need to make an editor for such icons), but IMO if a DPI-agnostic is
to be made, it is better to go with the technically superior approach if
such a solution is to remain around for years.

(note that i do not think that using the haiku format directly is a good
idea by itself, i'm just giving it as an example)

AFAIK SVG itself does not support LODs, although it is possible to emulate
it if the SVG loader supports CSS and media queries so one could use
something like @media screen and (max-width: 32px) for selecting 32px and
below sizes. With multiple of these one can adjust properties like stroke
widths and hide elements. But i'm not sure if any non-browser SVG loader
even support CSS, let alone CSS with media queries.

Regardless if there is support for that, information can be found here for


(search for 2.6. Responsive Images)

FWIW personally i think a dedicated format for vector icons (like what
Haiku uses) would be a better idea in the long term.

On Sun, Feb 26, 2017 at 11:13 PM, Ondrej Pokorny via Lazarus <
lazarus at lists.lazarus-ide.org> wrote:

> On 26.02.2017 17:01, Donald Ziesig via Lazarus wrote:
>> I agree.  I just spent most of two days rescaling the icons with gimp,
>> then registering them.  It looks good, but I sure would not want to have to
>> repeat for 200%, etc.
> Do you mean that you took Lazarus original 16px icons, scaled them up to
> 24px one by one and registered them for Lazarus?
> Ondrej
> --
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus-ide.org
> http://lists.lazarus-ide.org/listinfo/lazarus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20170227/b56c7efe/attachment.html>

More information about the Lazarus mailing list