Create and use custom fonts for Adafruit_GFX libraries

Поделиться
HTML-код
  • Опубликовано: 26 авг 2017
  • if you use tft displays for your Arduino or Teensy projects, chances are you need custom fonts. This is the first ever tutorial on how to use and create your own custom fonts.
    Link to fontconvert.zip
    Virus free as of 8/18/2022 using trend micro version 14.0.10071
    github.com/KrisKasprzak/FontC...
    .
  • НаукаНаука

Комментарии • 202

  • @gc9n
    @gc9n 6 лет назад +1

    Kris i enjoy every video you make , keep up the great work

  • @alanbacknd3120
    @alanbacknd3120 6 лет назад +5

    Thank you!!!!!!
    I'm been so confused on how to get it to work.
    Thank you for taking the time and show us.
    Great Videos .... Keep up the great work

  • @robwray3563
    @robwray3563 Месяц назад +1

    This video was very helpful. It was refreshing to find content that is concise and clearly directed. Instructional videos of this caliber set a standard for educational content. Additionally, the absence of text-to-speech narration and background music enhanced the clarity and quality of the presentation. Thank you for your excellent work!

    • @KrisKasprzak
      @KrisKasprzak  Месяц назад

      I appreciate your very positive comments

  • @RoSi4You
    @RoSi4You 6 лет назад +1

    Great and good to know! Thanks for sharing.

  • @vicentevictorica1678
    @vicentevictorica1678 Год назад

    Very useful and clear explanation. Thanks!

  • @khaledmaliaklanalbanna3586
    @khaledmaliaklanalbanna3586 2 года назад +1

    It's a great and helpful project. Thank you for your effort.

  • @JuanFunQi
    @JuanFunQi 2 года назад

    thanks Kris great video

  • @4Geopiper
    @4Geopiper 6 лет назад +1

    Great video!!! Thanks!!! Downloaded your files and had my custom font in minutes!!! I couldn't make sense of the programs that are in the GFX font folder!

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      Glad you got it working. Took me for ever to figure out how to create the fontconvert.exe--thought I post to save others the pain.

    • @tamgaming9861
      @tamgaming9861 5 лет назад

      @@KrisKasprzak thanks that you share it and save us a lot of time!!!

  • @gusantor
    @gusantor 5 лет назад

    Hello & thanks
    I'm using Adafruit neomatrix 8x8 (with ws2812b leds)
    Is there a way to change (decreace) the space (unused leds) between numbers for numbers above 9?.
    Now number 10, has a couple of pixels or leds just blank, I would like to remove that "space" to optimize the pixel usage
    Is there any way to do that ?
    Thanks!

  • @NguyenDucMinhAnh
    @NguyenDucMinhAnh 3 месяца назад +1

    Thank you very much!

  • @grzybbak1088
    @grzybbak1088 2 года назад +1

    Thank you so much for this video! It helped a lot (:

  • @MPElectronique
    @MPElectronique 2 года назад +1

    Thank you so much! :)

  • @themonkey4465
    @themonkey4465 6 лет назад

    Can you do a tutorial on the setting up the Freetype library?

  • @DonBonin
    @DonBonin 7 дней назад +2

    When in the DOS cmd window and you are typing a path or file name, TAB is you best friend - it's basically auto complete based on the text you're typing.

  • @tamgaming9861
    @tamgaming9861 5 лет назад

    Really awesome - i wished you had more videos about how to make a good TFT Touch Menu and so on :-) Interesting how you spell Teensy - i have one but i never said TnS to it :-)

  • @yamahaman7796
    @yamahaman7796 6 лет назад +1

    great video and tool surrely gonna use it thx

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      You're very welcome. Glad I could help.

  • @youpattube1
    @youpattube1 4 года назад

    Very well explained, and it works. How would I go about including characters beyond the ~ ? For example at 0176 in the ascii table is the degree symbol.

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      sure use
      Display.drawChar(x, y, ascii value, fore_color, back_color, scale_factor);
      so if your wnat to print a red copyright symbol at screen 100, 100 in Arial
      Display.drawChar(x, y, 169, Display.color565(255,0,0), Display.color565(0,0,0), 1);
      notes
      1. delivered fonts do NOT have the extended character set so you will need to rebuld the font (just pass the last ascii value in the arg list. FontConvert font_file font_size first_char last char > YourFont.h
      2. ascii values between fonts may be different 1/2 symbol in adafruit fonts in 171 but in arial it's 189
      use this little font printer to see what you have
      #include
      Display.setFont(&YourFontName); // see inside .h file
      for (int i = 32; i < 256; i++) {
      Display.setCursor(0, 100);
      Display.print(i);
      Display.drawChar(50, 100, Display.color565(255,0,0), Display.color565(0,0,0), 1);
      delay(200);
      Display.fillScreen(C_BLACK);
      }
      Hope this helps

  • @behzadabf
    @behzadabf 5 лет назад

    Thank you so very MUCH..!

  • @philipanderson9434
    @philipanderson9434 3 месяца назад +1

    Brilliant 👏 video. Thank you.

    • @KrisKasprzak
      @KrisKasprzak  3 месяца назад

      Glad I could help. Keep inventing!

  • @thorstenpapendorff77
    @thorstenpapendorff77 6 лет назад

    now i can open the fontconverter online, but when i download it, it won´t work on my pc....and i don´t know how to include a ttf into the list to convert...

  • @EgeHalleri
    @EgeHalleri 3 года назад

    thanks, helped alot!

  • @MPElectronique
    @MPElectronique 4 года назад +1

    AMAZINGG!!!!!!!!!!!!!!!!!!!!!!!!

  • @firstsurname8931
    @firstsurname8931 6 лет назад

    unfortunately it seems that the anti-aliasing on the fonts is converted to solid pixels and makes characters look very distorted on the screen :(

  • @EmekElektromekanik
    @EmekElektromekanik 6 лет назад +1

    Hello. Thank you very much for this good video and good information. Many thanks..

  • @Dancopymus
    @Dancopymus 2 года назад +1

    Hi Kris, first of all thanks for the tutorial. I have a question:
    Does the Font have to be created in Bitmaps?
    Can't it be any other way, for example, to put the created font to open in a new tab in the Arduino IDE along with the .ino file? Sorry I don't understand about fonts! Thanks

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      You can, you could have the .h file in the same folder as you .ino (which will create a new tab). I'm not sure why you would want to do this--put the font .h in the library and leave it along.
      Yes fonts are bitmap. the library file has a bitmap definition for each character. There are no such think as vector drawn font libraries.

  • @chirathjayawardena1733
    @chirathjayawardena1733 6 лет назад

    when i was using a custom font .its not refresh the print overlap.

  • @MPElectronique
    @MPElectronique 4 года назад +1

    You should create a arduino library to draw an analog clock ?
    thank you sooo much!
    A donation will be done! :)
    Marc.

  • @durghamghanim4522
    @durghamghanim4522 5 лет назад

    Thank you!!!!!

  • @hiddenotebook
    @hiddenotebook 6 лет назад

    Thank you

  • @aryanjebelli705
    @aryanjebelli705 Год назад

    out of the default fonts, which one is the smallest? in theory, could i manjally change the pixel values so the font is smaller? how would i do that? thank you for your response! great video

    • @KrisKasprzak
      @KrisKasprzak  Год назад

      Smaller in terms of memory or physical size? If memory, there is no way to make the size smaller. Each pixel, used or not requires the same memory. You can change the start and end characters so if you only need numbers, font memory usage is much smaller.

  • @Auddy_s7395
    @Auddy_s7395 3 месяца назад +1

    Great and Thank you

    • @KrisKasprzak
      @KrisKasprzak  3 месяца назад

      Glad I could help, keep inventing.

  • @vitorheleno258
    @vitorheleno258 7 месяцев назад

    Thanks for the great tutorial. Do you have any idea how to convert fonts with umlauts chars (128 to 168)?. For some reason, the tools you refer do not covert such characters

    • @KrisKasprzak
      @KrisKasprzak  7 месяцев назад

      I don't know how fonts ? 127 can be generated with this adaftuit tool. There is a similar tool (much better) for the Teensy and ILI9341_t3 display driver and someone has a solution. Unfortunately this would require you to change your MCU. forum.pjrc.com/index.php?threads/ili9341_t3-font-editor.54345/

  • @LighhtouseSolar
    @LighhtouseSolar 3 года назад +1

    Thanks !

  • @dtiydr
    @dtiydr 3 года назад +1

    Thanks!!

  • @Darieee
    @Darieee 6 лет назад +1

    Awesome work - can't you write with WHITE text and BLACK background ? On OLEDs that's what I'm using and it works great w/ no flicker xD

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      With a proportional font you can because i occupies the same with as w, with non proportional fonts the width of i is much less than w, so the background for i will only paint a small range.

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад +1

      No you can't sent the background color with non-proportional fonts an "i" is a different width than a "w". I'm guessing you are using default fonts with the 1306 library (which are proportional--an i is the same width as a w).
      Personally i'm moving from Arduino MCU to Teensy 3.2--those suckers run at 72mhz and have 256k RAM. Also there is an ILI9341_t3 library that is blazing fast. Have a look at a short video I posted as a review of a the library in action www.amazon.com/gp/product/B01N3L01BB/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1

    • @Darieee
      @Darieee 6 лет назад

      Very nice ! (sorry I somehow missed your first reply). I'm definitely using monospaced fonts - and if need be adding some whitespaces at the end.
      This however doesn't seem to work with the "custom" font they do include ... So ... I'm also drawing black squares now :)

    • @DougWoodrow
      @DougWoodrow 6 лет назад +1

      Kris: You've got it the wrong way round - with a proportional font the wider looking characters (w) take proportionally more space than the narrower characters (i). "Monospace" is an easier term to understand. But your general point is good, and many thanks for the video. I must say though, I don't see the point in a proportional font that emulates a LCD segment display, a monospaced font would look much more realistic, and avoid the flickering problem.

    • @Darieee
      @Darieee 6 лет назад

      Sometimes they do look quite rad / retro if implemented nicely

  • @mustafakucukturkmen2363
    @mustafakucukturkmen2363 4 месяца назад

    Wonderful video thanks for this work. My panel works with 0 - 126 characters of any font. We can change any character (0 - 126) to what do you want to use

    • @KrisKasprzak
      @KrisKasprzak  4 месяца назад

      You *could* but would require you hand edit the bit map definition for the character but since all characters are combined in one const uint8_t, finding and editing the character will be very challenging. If you have the ability to switch your MCU to a Teensy, there is library support for editing characters. Have a look: ruclips.net/video/YNUbvpTaaCY/видео.html

  • @TheOldBlackCrow
    @TheOldBlackCrow 2 года назад

    Man, you rock! I've been going crazy for over a year trying to figure this out! Question, so I don't have to reinvent the wheel, do any of the included GFX fonts contain Greek characters? That's all I've been wanting to do! Thanks so much!

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      I doubt it the character set is only 0 through 127

    • @TheOldBlackCrow
      @TheOldBlackCrow 2 года назад

      @@KrisKasprzak so I would have to find or create a dedicated font?

    • @KrisKasprzak
      @KrisKasprzak  2 года назад +1

      @@TheOldBlackCrow Yeah just find a true type font with the Greek characters and convert that font. You can probably also find a free font on the web and download it and convert it. Just make sure it’s a true type fun.

  • @EmekElektromekanik
    @EmekElektromekanik 6 лет назад

    Hello Kris, i tried to make Turkish font.Turkish font starts from number 127 Ascii to 352.I used your program from 0 to 355 (ascii codes) and got the .c file. It is ok till number 127.But i could not get Turkish fonts.What can i do?

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      i just looked at the fontconvert.c source code and it's clamped at 127. maybe you can increase that value and compile it again. Get the Adafruit_GFX library and inside it will be a folder for fontconvert. the file fontconvert_win.md lists the instructions for compiling the .c file. I'm not sure if the libraries are setup for double -byte characters so I don't know if changing the 127 will even work

  • @mehdies294
    @mehdies294 6 лет назад +2

    Good job - I tried to convert an Arabic font with this method, but the LCD failed to show words properly and it just showed squared boxes instead. The interesting point is that this method works on numbers and the LCD actually showed Arabic number to me. Do you how can I solve my problem? I use a 2.4" TFT LCD and MCUFRIEND_kbv.h library.

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      Not sure, if numbers work, so should text. what font size are you trying? I know anything above say 100 points will produce very weird results. Have you tried your fonts with the adafruit graphics library? I believer the MCUFRIEND calls adafruit_gfx, but who know what happens between.

    • @marcschneiderphoto
      @marcschneiderphoto 5 лет назад

      @@KrisKasprzak can you elaborate on the known problems with big fonts? I'm having a use case where I do require fonts bigger than 100px and with your tool everything works fine for smaller fonts. But I can't position the bigger fonts propperly. turns out that the box where the font is put in is only 2px thick and the font itself is offset to somewhere else. Is that the issue you're aware off, or did I miss something while building the font using your tool?

    • @KrisKasprzak
      @KrisKasprzak  5 лет назад +1

      i recall the anchor point used to define the x y location for the font gets messed up. Some characters will draw where expected, some are way off.

  • @emaddoost
    @emaddoost 4 года назад

    Tnx for the video. I did all the steps and copied the font in the fonts folder of GFX library , but Arduino software says "No such file or directory" exists. It can not recognise the .h font file. What should I do?

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      That error is telling you the .h file doesn't exist. make sure its' in the correct folder, close and restart arduino IDE

  • @Ryxxi_makes
    @Ryxxi_makes 4 года назад +1

    cheers

  • @Cesar-dt9nl
    @Cesar-dt9nl 3 года назад

    Hello Mr. Kasprzak, any idea of how to make static images? im planning to use a heart for example and a drop for the gui, but dont want to use the sd, could be a customized font maybe?

    • @KrisKasprzak
      @KrisKasprzak  3 года назад

      Yes let me post some sample code

    • @KrisKasprzak
      @KrisKasprzak  3 года назад +1

      try this... note I ripped these lines out of an existing program so some defines may be missing.
      1. draw bitmap in paint or what ever, even download image file
      2. use this free converter to convert a BMP or other image into a hex file
      en.radzio.dxp.pl/bitmap_converter/
      3. Do a File | Save Output and the converter will create a hex file like below
      // in declarations add your hex image file saved from above (and add PROGMEM as shown)
      const unsigned char battery_icon []PROGMEM = {
      // 'Battery', 32x32px
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
      0x00, 0xf0, 0x0f, 0x00, 0x00, 0xf0, 0x0f, 0x00, 0x0f, 0xff, 0xff, 0xf0, 0x0f, 0x9f, 0xf9, 0xf0,
      0x0c, 0x00, 0x00, 0x30, 0x0c, 0x00, 0x06, 0x30, 0x0c, 0x00, 0x06, 0x30, 0x0d, 0xf8, 0x1f, 0xb0,
      0x0d, 0xf8, 0x1f, 0xb0, 0x0c, 0x00, 0x06, 0x30, 0x0c, 0x00, 0x06, 0x30, 0x0c, 0x00, 0x00, 0x30,
      0x0c, 0x00, 0x00, 0x30, 0x0c, 0x00, 0x00, 0x30, 0x0f, 0xff, 0xff, 0xf0, 0x0f, 0xff, 0xff, 0xf0,
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
      0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
      };
      // in declarations section create a display object as you normally do
      Adafruit_ILI9341 Display = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);
      // in setup
      Display.begin();
      // some where in your program draw icon with this code
      drawBitmap(240, 20, battery_icon, 32, 32, C_RED); //draw positive signal status
      // some where if your code add the drawBitmap function
      void drawBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color) {
      int16_t i, j, byteWidth;
      uint8_t sbyte;
      byteWidth = (w + 7) / 8;
      for (j = 0; j < h; j++) {
      for (i = 0; i < w; i++) {
      if (i & 7) sbyte

    • @Cesar-dt9nl
      @Cesar-dt9nl 3 года назад

      @@KrisKasprzak Thanks so much for the effort and time to answer. I will try to get it working

    • @Cesar-dt9nl
      @Cesar-dt9nl 3 года назад

      @@KrisKasprzak It worked with the battery icon, but when i try to make my own, i just get a very distorted image

    • @KrisKasprzak
      @KrisKasprzak  3 года назад

      Let me look at that converter I don't recall if that's the one I actually use in the past

  • @donvukovic
    @donvukovic 5 лет назад

    Thank You Kris, I could not get the font convert program too compile.
    Has anyone been able to update to freetype-2.9.tar.gz and get it to compile ??

    • @KrisKasprzak
      @KrisKasprzak  5 лет назад

      I'll check the link later on but check out my description I thought I put a download to the compiled files and everything that you need

    • @donvukovic
      @donvukovic 5 лет назад

      Yes, I did get those files. The date is 08/25/2017. So I thought that was older and not the newest version. Also there is a problem as my antivirus calls a virus in the fontconvert.exe. I can send you a pic of the warning if you'd like.

    • @KrisKasprzak
      @KrisKasprzak  5 лет назад

      @@donvukovic Odd I just downloaded the files on a different machine and no virus issues. I'm using Trend Micro. The files are the compiled exe and the required dll, you should be able to use the files as is.

    • @donvukovic
      @donvukovic 5 лет назад

      I have Avira antivirus. I also got the virus message when I tried to compile the source files. Go Figure.
      I could not get the compiler to work on the source files. Errors that I do not understand and do not have the time to trouble shoot.
      Thank You for the compiled version and extra .dll.

  • @pieteroosthuizen6142
    @pieteroosthuizen6142 6 лет назад

    Great video, how do I get 7-Segment look a like library?

  • @jzany2000
    @jzany2000 4 года назад

    Thank you very much for font convert exe file.

  • @lyrana
    @lyrana 2 года назад +1

    What is that custom font that looks like the numbers on a digital clock?

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      Digital-7 is what I typically use. There are free TTF sources that can be downloaded.

  • @deladrierejl
    @deladrierejl 6 лет назад

    did you noticed that most font are gone ... where can I convert the Orbitron font ? Any ideas ? thx

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      It's been a while sine I used that site, didn't realize so many were removed. Maybe send the website owner a message?

    • @deladrierejl
      @deladrierejl 6 лет назад

      Ok, thanks. In the meantime, I found how to run the application on my pc (and it comes with all the fonts)

  • @manuellucero5048
    @manuellucero5048 6 лет назад

    i just want to know how do you make work the Adafruit TFT LCD!

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      hard to answer that question. What MCU, what display, SPI interface?

    • @manuellucero5048
      @manuellucero5048 6 лет назад

      I have an Adafruit TFT LCD HX8357D, that has SPI and 8-BIT interface

  • @seaha3750
    @seaha3750 6 лет назад +1

    Is there a way on a color display to use custom font without flickering

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад +1

      I use a Teensy with the ILI9341_t3 and it's highly optimized--way faster than the Adafruit version. I get no text flickering.

    • @chirathjayawardena1733
      @chirathjayawardena1733 6 лет назад

      when i was using a custom font .its not refresh the print overlap.

  • @mibrahim4245
    @mibrahim4245 Год назад

    Thank you so much .. but why do I get an error that the font "something.h" is not found ? although I checked for the files and it is there ! ..

    • @KrisKasprzak
      @KrisKasprzak  Год назад

      What is something.H I’m not familiar with that library

    • @mibrahim4245
      @mibrahim4245 Год назад

      @@KrisKasprzak I meant one font from the list.. they have long names .. that's why I said something 😃

  • @haunguyenvan813
    @haunguyenvan813 2 года назад

    Hi, Kris Kasprzak, is there a way to get characters greater than 127. I'm creating a Vietnamese font, pls

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      I don't see a way how this tool can be used a command in the fontconvert source code says
      "Currently this only extracts the printable 7-bit ASCII chars of a font."
      I tried to create fonts from space to 255 using the command line:
      fontconvert arial.ttf 8 32 255 > somefont.h
      and it wrote most of the characters except for 128 to 160 or so. note writing 32 to 255 using wingdng3.ttf fails on some characters
      Implementing in Arduino is done by:
      tft.setFont(&arial12pt8b);
      tft.write(180);
      But with missing characters, the created .h is useless.
      If you are willing to draw your own fonts and are able to switch to a Teensy, there is a better font convert that will let you draw your own fonts (up to 255).
      This vid shows how to use the tool and create a character:
      ruclips.net/video/YNUbvpTaaCY/видео.html

  • @orhanyor
    @orhanyor 4 года назад +1

    thanks for the tutorial. this flickering problem is really annoying and its probably biggest downside of GFX library. i implemented custom fonts with a reduced flickering in a way that value is printed only if the value is changed and it helps alot. lets say if you print some sensor value and it does flicker only when the value has changed. this can be done easily by putting the printed value in a variable and check it everytime in the loop if the old value is different than the new one. if its a new value print it and update the variable otherwise do nothing.

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      I hear you I wrote a flicker-free print library that does just that blazing fast updates without the flickering problems someday I'll create a video and post it

    • @orhanyor
      @orhanyor 4 года назад

      @@KrisKasprzak thats awesome can we test it? is it available?

  • @devvveloper9931
    @devvveloper9931 5 лет назад +1

    This font is works to TVout librarie

  • @DeeGeeDeFi
    @DeeGeeDeFi 3 года назад

    More than 3 years later, and my sketches aren't successfully compling when I try to introduce a font. I get this: 'class Adafruit_SSD1306' has no member named 'setFont'

    • @KrisKasprzak
      @KrisKasprzak  3 года назад

      The SSD1306 will not have a setFont method, but the Adafruit_GFX will. Try this
      // use custom fonts in the adaftuit_gfx\font folder or....
      // create custom Adafruit_GFX fonts at this site
      // oleddisplay.squix.ch/#/home
      // make sure you select Adafruit GFX font for the library type
      #include
      #include
      #include
      // font that delivers with the GFX library
      // make sure your .h has the right display resolution around line 42 or so uncomment the correct pixel size
      Adafruit_SSD1306 display(OLED_RESET);
      display.setFont(&FreeSans9pt7b); // passing by ref so don't forget to include the &
      display.setCursor(0,0);
      display.print("the cat in the hat");

    • @DeeGeeDeFi
      @DeeGeeDeFi 3 года назад

      @@KrisKasprzak So, I learned a lesson. I am now using the Tools->Include Library method of including libraries to sketches. This way, dependent libraries are also loaded. When I added the Adafruit_GFX library this time, a number of dependencies also loaded up, and I now have access to very nice fonts for my 1306! Simply typing in #include or whatever doesn't cut it, at least for me. Thank you for your reply!

    • @KrisKasprzak
      @KrisKasprzak  3 года назад

      @@DeeGeeDeFi Glad I could help.

  • @youpattube1
    @youpattube1 4 года назад

    at about 0:11 seconds you show a list of fonts on your computer in folder ...Adafruit_GFX/Fonts. There are some fonts listed there that might solve a problem I have, but for the life of me I cannot find them anywhere, either in my arduino installation, on my computer or on the internet. Will you tell me how to navigate to them ?

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      Which fonts? Some of those I created and aren't delivered with the adafruit_gfx libs

    • @youpattube1
      @youpattube1 4 года назад

      @@KrisKasprzak Thank you thank you for replying. I have been trying for days and days to figure out how to get a font about 1" high (I think that is 72pt) to run on my new 3.5" tft lcd ili9486 (or ili9481 lcd chipset) running on an arduino mega. I want to be able to see it from across the room (wind speed & water pressure). but the largest i have found is 24pt. I use the adafruit_gfx.h library, but apparently there are no large fonts in that library.
      Then I saw your video, and in the list of fonts that you briefly show are some fonts that are very large (c_windows_fonts_digital_750pt7b.h). In answer to your question, any font that is quite large. i have tried typing some of those listed in google and don't get helpful results.

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      @@youpattube1 yes you will have to build a custom font my experience has been anything above 99 points doesn't work very well

  • @gabrielmarisy4699
    @gabrielmarisy4699 4 года назад

    hey i have the error message "Font load error :1" when i try to convert a custom font downloaded online. Anyone has solved this issue ?

    • @KrisKasprzak
      @KrisKasprzak  4 года назад

      Not sure what it could be I looked at the source code and it's a pretty generic error is this thought you're trying to convert a truetype font? Maybe that has something to do with it if it's not

  • @__youngnatethegreat1441
    @__youngnatethegreat1441 6 лет назад

    Can we use a font library with glyphs ???

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      __Youngnate Thegreat if you are glyph can be found in a truetype font then yes. This utility will convert any truetype font

  • @apostolosn5536
    @apostolosn5536 Год назад

    Hi. Did anyone manage to show characters other than English, like Greek, Russian, Turkish ..e.t.c ?

  • @ernestorivero9909
    @ernestorivero9909 2 года назад

    As I could change the size of one of the letters of the gfx library to my liking

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      I'm not sure what you are asking, but if you want to change any of the fonts, this is not possible with the adafruit libraries.
      If you can switch to a teensy MCU (which looks like an Arduino NANO but some 100x better) and are usign and ILI9341 display, this tool will let you tweak indivitual characters. It creates fonts specific to a Teensy using the ILI9341_t3 library.
      This video shows what you can do. ruclips.net/video/YNUbvpTaaCY/видео.html

  • @themonkey4465
    @themonkey4465 6 лет назад

    I'm so close, just in the msys when I try to configure the mingw, it can't find the file. I need help with this step

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      this process is a pain, i recall having to put some DLLs in the folder where the source code is. Cant' remember though...

    • @themonkey4465
      @themonkey4465 6 лет назад

      Kris Kasprzak ok, let me know if you remember how to do it, thank you.

    • @Pelnied
      @Pelnied 6 лет назад

      Extract into the C drive and rename it to something like ft27 or ft29. Make sure that when you go into the ft29 folder it doesn't have another freetype folder deeper within it or else when you do the ./configure command it won't be able to find the file. In that case do another cd command to get one layer deeper into the file directory and then retry the ./configure command. At least that is what happened to me.

  • @dutodiboa
    @dutodiboa 11 месяцев назад

    Vídeo top, mas sua tela muito grande não dá pra ver nada... Poderia deixar em uma resolução um pouco menor ou dar um zoom...

  • @funinger8610
    @funinger8610 2 года назад

    How to display unicode text using Adafruit GFX?

    • @KrisKasprzak
      @KrisKasprzak  2 года назад

      I’m not sure what you’re asking, what font or character are you trying to display. Note that fonts are stored as bitmap images

  • @SMFH_84
    @SMFH_84 4 года назад

    font convert not opening in win 7

  • @exodointerno
    @exodointerno 6 лет назад

    Excuse`me, "Font load error: 1"... :-(

  • @gc9n
    @gc9n 6 лет назад

    works for Adafruit_SSD1306 also ? (OLED)

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад +1

      Yes, it should, keep in mind the display initialize and display are a bit different, the Adafruit 1306 library actually has a video buffer that you write to and a display() call to send the buffer to the display.

    • @gc9n
      @gc9n 6 лет назад

      One more silly question after the display.setFont(&MYFONT); statement , How do i revert back to the default font? i m asking because i
      want partial part of the fonts in my screen be with default font.

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад +1

      display.setFont();

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      display.setFont();

    • @marinehm
      @marinehm 6 лет назад +1

      Yes it does. I just tried it on mine. This is the video I needed! Thanks Kris.

  • @ameyer8926
    @ameyer8926 3 года назад

    How do I reset back to the default font? tft.setFont() and tft.setFontNULL) don't work... (ILI9341_t3)

    • @KrisKasprzak
      @KrisKasprzak  3 года назад +1

      If you are using the ili9341_t3 driver try xxx.setFontAdafruit();

    • @ameyer8926
      @ameyer8926 3 года назад

      Thanks!

  • @bierhoch1011
    @bierhoch1011 4 года назад

    die Website ist leider nicht mehr online

  • @ATS3788
    @ATS3788 6 лет назад

    Danke für den download. I didn't get it.

  • @soundstream32
    @soundstream32 6 лет назад

    i get font load error 1 how do i fix this ?

    • @rensvanbreukelen3762
      @rensvanbreukelen3762 6 лет назад

      dont know if you fixed it already but this error means it can't find the ttf file. Make sure you put .ttf behind your file!

    • @bitman4204
      @bitman4204 3 года назад

      this is because your file name it's wrong or it has an invalid character.

    • @bitman4204
      @bitman4204 3 года назад

      I had the same problem and fixed it by renaming my file

  • @thorstenpapendorff77
    @thorstenpapendorff77 6 лет назад

    Hello..... i want to include a new Font into the lib so that i can use it in the sketch and show it on the tft display.....but i can´t open the converter....is there somone who can help me?

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      is it a true type font? What error is shown? Hard to debug with what's provided.

    • @thorstenpapendorff77
      @thorstenpapendorff77 6 лет назад

      It´s the Font for Aurebesh, it´s the offical type in the Star Wars Univers, i installed in on my desktop and it´s included in words, so i can write letters in Aurebesh if i want....i want to build an shootcounter for an Blaster, so i need the numbers for the Counter.....
      i downloaded the link above for the converter, but i can´topen the exe.file, the zip-file is allready depacked

    • @thorstenpapendorff77
      @thorstenpapendorff77 6 лет назад

      And yes it´s a True Type

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      I just tried downloading the zip file and was able to. If you are using chrome, look for the download icon in the upper right of the browser. I just downloded the font aurebesh.ttf and created a 60 point font--and it worked. Note for some odd reason i got an error from the fontconvert utility with 20 point, but when i tried again with a 10 point it worked, then I was able to create a 20, and 60 point font. from the prompt I typed fontconvert aurebesh.ttf 20 >aurebesh20.h. What font size are you looking for?

    • @thorstenpapendorff77
      @thorstenpapendorff77 6 лет назад

      My Windows defender block the opening of the exe.file of the converter

  • @bierhoch1011
    @bierhoch1011 4 года назад

    website down

  • @lohikarhu734
    @lohikarhu734 Месяц назад

    Everything looked great, until .... *.EXE * .... A PC! ARGHHHH !!
    any other way to build the bitmap on Mac or Linux?
    Even without that, good baseline... And, with 16M of flash, even 512K on F411, a few fonts could be doable.
    Thx!

    • @KrisKasprzak
      @KrisKasprzak  Месяц назад

      I did not write the font convert too, i'm only showing how to use it.

  • @j.g.holstein2125
    @j.g.holstein2125 5 лет назад

    Hi Kris, nice but not good enough. I see flickering this comes form how you refresh your value, or with old and new value and if you overwrite it with black.
    void tftvalue(String value, String old_value, String eenh, int x, int y, int spacing, int fcolor, int bcolor, int len, int just, int first){
    value = value + eenh;
    old_value = old_value + eenh;
    if (just == 1){
    value = " " + value;
    int slen = value.length();
    value = value.substring(slen-len, slen);
    old_value = " " + old_value;
    slen = old_value.length();
    old_value = old_value.substring(slen-len, slen);
    }
    int tvol;
    int vol = value.length();
    int ovol = old_value.length();
    if (ovol > vol){tvol = ovol;} else {tvol=vol;}
    for (int i = 0; i < tvol; i++) {
    char voch = value.charAt(i);
    char ovoch = old_value.charAt(i);
    if (voch != ovoch || first == 1){
    if (i < ovol){
    tft.setCursor(x+i*spacing,y);
    tft.setTextColor(bcolor);
    tft.print(ovoch);
    }
    if (i < vol){
    tft.setCursor(x+i*spacing,y);
    tft.setTextColor(fcolor);
    tft.print(voch);
    }
    }
    }
    }

    • @KrisKasprzak
      @KrisKasprzak  5 лет назад

      Thanks for adding this. I was hoping for a good solution to avoid repaints and this works unless a decimal point is in the number, then a large spacing around the decimal results. I tried setting position based on getCursor but that only works if something was drawn. The ILI9341 doesn't have a "getCharWidth" function so hard to know where to draw characters--I see you just hard coded the spacing--works but gives too much space around a decmial. Do you ever run into memory fragment issues with String data types?

  • @orlandorezende9304
    @orlandorezende9304 7 месяцев назад

    OLA AMIGO PODE ME AJUDAR NESSE PROJETO SEU ESTOU COM POBLEMAS DE BAIXAR AS FONTES TODAS QUE EU BAIXO DA ERRO QUERO MUITO FAZER ESSE PROJETO SEU ME AJUDA

    • @KrisKasprzak
      @KrisKasprzak  7 месяцев назад

      Fonts come with the GFX library, this utility will help you create more. What font's are you trying to create?

    • @orlandorezende9304
      @orlandorezende9304 7 месяцев назад

      @@KrisKasprzak seria a mesma que o senhor usou porem essa tela lcd aqui no brasil eu não encontro

    • @orlandorezende9304
      @orlandorezende9304 7 месяцев назад

      @@KrisKasprzak oque eu quero montar seria mover a régua da serra porem quando eu adicionar as medidas em milímetros que eu inserir

    • @orlandorezende9304
      @orlandorezende9304 7 месяцев назад

      @@KrisKasprzak tenho aqui uma lcd i2c porem não sei colocar ela no programa

  • @ATS3788
    @ATS3788 6 лет назад

    Could you please so kind and upload a new virus free version from fontconvert.exe

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      What virus checker are you using? According to mine which is
      McAfee SecurityCenter
      v 16.7
      build 16.7.126
      engine version 3252.0
      Last update 2/10/2018
      there are no viruses.

    • @ATS3788
      @ATS3788 6 лет назад

      AVIRA IT tells me HEUR/APC (CLOUD)
      I think someone attached it, in the cloud, to fontconvert Exe the file I'm downloaded has 45,8 KB (46.910 Bytes)

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      just re-uploaded, try this link drive.google.com/open?id=1M12mM9rOhCYabiJZKsfMk_Zu_kY1YVlw

    • @ATS3788
      @ATS3788 6 лет назад

      I check this out something is odd

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад

      Fontconvert.exe size is 45.8 KB (46,910 bytes), i uploaded a ZIP that includes it and the required dll.

  • @user-tk7ox9zu1w
    @user-tk7ox9zu1w 6 лет назад

    Hello)) Это я ваш друг из России. Скажите пожалуйста а возможно ли делать через нашу с вами программу ( Adobe Premiere Elements ) glitch effect?

    • @KrisKasprzak
      @KrisKasprzak  6 лет назад +1

      Where do you seen this in the video (at what time mark)?

  • @1990DomDom
    @1990DomDom 4 года назад

    i am getting this, i have everything installed properly
    CombinedSliderControl:11:10: fatal error: Fonts/FreeSans9pt7b.h: No such file or directory
    Multiple libraries were found for "Adafruit_GFX.h"
    #include // Hardware-specific library
    Used: C:\Users\p\Documents\Arduino\libraries\Adafruit_GFX
    ^~~~~~~~~~~~~~~~~~~~~~~
    Not used: C:\Users\p\Documents\Arduino\libraries\Adafruit_GFX_Library
    compilation terminated.
    Not used: C:\Users\p\Documents\Arduino\libraries\Adafruit-GFX
    Not used: C:\Users\p\Documents\Arduino\libraries\Adafruit-GFX-Library-master
    Multiple libraries were found for "Adafruit_TFTLCD.h"
    Used: C:\Users\p\Documents\Arduino\libraries\Adafruit_TFTLCD
    Not used: C:\Users\p\Documents\Arduino\libraries\TFTLCD-Library-master
    Not used: C:\Users\p\Documents\Arduino\libraries\TFTLCD-Library-a857c4960fd9c539309651db6efda8931e114b58
    Not used: C:\Users\p\Documents\Arduino\libraries\Adafruit_TFTLCD_Library
    Multiple libraries were found for "TouchScreen.h"
    Used: C:\Users\p\Documents\Arduino\libraries\TouchScreen
    Not used: C:\Users\p\Documents\Arduino\libraries\Adafruit_TouchScreen-master
    exit status 1
    Fonts/FreeSans9pt7b.h: No such file or directory

  • @ATS3788
    @ATS3788 6 лет назад

    In the file fontconvert.exe is a virus My Virus Scanner reported this

  • @billglass5160
    @billglass5160 11 месяцев назад

    I just wanted to display a few accented French characters on my tft screen using the Arduino IDE on my PC, a Teensy 4.0, and the Adafruit libraries Adafruit_GFX, and Adafruit_ILI9341.
    I didn't want to hassle with special fonts and modifying libraries.
    Here's my simple program for printing the character é on the tft screen:
    #include "Adafruit_GFX.h"
    #include "Adafruit_ILI9341.h"
    .
    etc.....
    .
    String Strtemp;
    #ifdef FRENCH
    Strtemp="Prévisions Météo";
    Strtemp.replace("é", (char)0x82);
    #else
    Strtemp="Weather Forecast:";
    #endif
    tft.print(Strtemp);
    Hope this helps someone out there like me, a beginning software hobbyist.