EtheaDev / IconFontsImageList

Four advanced components to simplify use of Icon Fonts as images and ImageList: TIconFontImage, TIconFontsImageCollection, TIconFontsVirtualImageList, TIconFontsImageList (for VCL and FMX). Full support for High-DPI apps. Rendering optimized with GDI+
Apache License 2.0
218 stars 55 forks source link
delphi demo fmx fonts gdi-plus icons icons-pack manage-icon-fonts material-icon-fonts material-ui vcl vcl-styles

## IconFontsImageList License

Four advanced components to simplify use of Icon Fonts as images and ImageList (for VCL and FMX). Full support for High-DPI apps. Rendering optimized with GDI+

Actual official version 3.3.3 (VCL+FMX)

Component Description
IconFontsImageCollectionComponentIcon.png TIconFontsImageCollection is collection of "Icon Fonts" for Delphi to provide a centralized list of images for IconFontsVirtualImageList (only for VCL)
IconFontsVirtualImageListComponentIcon.png TIconFontsVirtualImageList is a special "virtual" ImageList for Delphi linked to an IconFontsImageCollection (only for VCL) to simplify use of "Font Icons" (resize, color and more...)
IconFontsImageComponentIcon.png TIconFontImage is an extended Image component for Delphi (VCL+FMX) to show any Icon Font directly or included into a an IconFontsImageList with all functionality (stretch, color, opacity and more...)
IconFontsImageListComponentIcon.png TIconFontsImageList is an extended ImageList for Delphi (VCL+FMX) to simplify use of Icon Fonts (resize, color and more...). Use only for simple application with one form.

Available from Delphi 7 to Delphi 12 (32bit and 64bit platforms)

Delphi Support

Related links: https://www.embarcadero.com/ - https://learndelphi.org/

Sample image of VCL version https://github.com/EtheaDev/IconFontsImageList/blob/master/Demo/Images/Sample.jpg

Sample image of FMX version https://github.com/EtheaDev/IconFontsImageList/blob/master/Demo/Images/SampleFMX.jpg

Follow the guide in Wiki section to known how to use those components to modernize your Delphi VCL or FMX applications scalable, colored and beautiful with few lines of code.

Very important notice:

TVirtualImageList (available from D10.3) and TIconFontsVirtualImageList both use images from TIconFontsImageCollection. An important difference is that TVirtualImageList may use and create only a subset of the images in the collection, whereas TIconFontsVirtualImageList creates all images of the collection everytime it is needed (e,g. DPI change), which is slower and consumes more memory.

We advise that TIconFontsVirtualImageList should be used only for versions of Delphi before 10.3. For recent versions of Delphi the recommended combination should be TIconFontsImageCollection + TVirtualImageList. Don't forget also the importance of TVirtualImageList.PreserveItems when you have a large ImageCollection with many linked Actions. Without setting this property to "True", everytime you add or remove an icon in the collection, you have to check and change the ImageIndex of all the Actions.

Demos uses Material Design Icon Fonts

All demos included in this repo uses the Material Design Font available here. (the file "materialdesignicons-webfont.ttf" is renamed to "Material Design Icons.ttf" and included into Demo\Fonts folder)

Warning: "Material Font" has changed again

Take care of changed Font file used in the Demos starting from v3.3.2 release, as explained here.

RELEASE NOTES: 15 Sep 2024: version 3.3.3 (VCL+FMX)

03 May 2024: version 3.3.2 (VCL+FMX)

09 Nov 2023: version 3.3.1 (VCL+FMX)

28 Feb 2023: version 3.3.0 (VCL+FMX)

15 Sep 2022: version 3.2.2 (VCL+FMX)

17 Jun 2022: version 3.2.1 (VCL+FMX)

17 Mar 2022: version 3.2.0 (VCL+FMX)

24 Nov 2021: version 3.1.0 (VCL+FMX)

27 Aug 2021: version 3.0.0 (VCL+FMX)

20 Jul 2021: version 2.6.0 (VCL) and 1.8.0 (FMX)

23 Jan 2021: version 2.5.1 (VCL) and 1.7.1 (FMX)

17 Jan 2021: version 2.5.0 (VCL) and 1.7.0 (FMX)

12 Dec 2020: version 2.4.0 (VCL) and 1.6.1 (FMX)

06 Dec 2020: version 2.4.0 (VCL) and 1.6.0 (FMX)

16 Sep 2020: version 2.3.1 (VCL) and 1.5.1 (FMX)

05 Sep 2020: version 2.3 (VCL) and 1.5.1 (FMX)

04 Sep 2020: version 2.2.2 (VCL) and 1.5.1 (FMX)

27 Aug 2020: version 2.2.1 (VCL) and 1.5.0 (FMX)

15 July 2020: official 2.1 (VCL) and 1.5 version (FMX)

19 June 2020: official 2.0 (VCL) and 1.5 version (FMX)

08 June 2020: official 1.10 (VCL) and 1.5 version (FMX)

17 May 2020: official 1.9 (VCL) and 1.4 version (FMX)

13 May 2020: official 1.8 (VCL) and 1.3 version (FMX)

9 May 2020: official 1.2 version (FMX)

7 May 2020: official 1.1 version (FMX)

2 May 2020: official 1.7 version (VCL)

12 April 2020: official 1.6 version (VCL)

27 March 2020: official 1.5 version (VCL) and first 1.0 version (FMX)

Now you can use all the icons present in any "font collection" that containts those special characters: look here....

24 March 2020: official 1.4 version (VCL) and first Beta version (FMX)

30 January 2020: official 1.3 version

21 January 2020: official 1.2 version

13 December 2019: official 1.1 version

27 November 2019: first stable version 1.0:

Inspired by the "Font Icon Editor" project by Luca Minuti: https://github.com/lminuti/FontIconEditor