{"id":23331042,"url":"https://github.com/insoft-uk/pixfont","last_synced_at":"2025-04-07T10:47:13.841Z","repository":{"id":233192652,"uuid":"786264731","full_name":"Insoft-UK/piXfont","owner":"Insoft-UK","description":"Create Adafruit GFX font from a bitmap file.","archived":false,"fork":false,"pushed_at":"2024-04-13T23:49:41.000Z","size":46,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-04-14T13:10:09.635Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Insoft-UK.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-04-13T23:17:55.000Z","updated_at":"2024-04-17T13:37:38.041Z","dependencies_parsed_at":"2024-04-17T13:37:37.329Z","dependency_job_id":"6e859d80-2b77-4d14-87fb-d4b22a590a27","html_url":"https://github.com/Insoft-UK/piXfont","commit_stats":null,"previous_names":["insoft-uk/pixfont"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Insoft-UK%2FpiXfont","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Insoft-UK%2FpiXfont/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Insoft-UK%2FpiXfont/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Insoft-UK%2FpiXfont/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Insoft-UK","download_url":"https://codeload.github.com/Insoft-UK/piXfont/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640509,"owners_count":20971553,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-20T22:30:10.725Z","updated_at":"2025-04-07T10:47:13.807Z","avatar_url":"https://github.com/Insoft-UK.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Adafruit GFX Pixel Font Creator\nThis is a handy utility that goes well with the original [fontconvert](https://github.com/adafruit/Adafruit-GFX-Library/tree/master/fontconvert) tool provided by [Adafruit](https://www.adafruit.com/) for converting TTF fonts to Adafruit_GFX `.h` format.\n\nThis utility tool provides the ability to generate an Adafruit_GFX `.h` format from an image file.\n\n## Fonts\n\n### HD44780\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/HD44780.bmp\" \u003e\n\n[HD44780.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/HD44780.h)\n[HD44780.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/HD44780.hpprgm)\n\n### BBC\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/BBC.bmp\" \u003e\n\n[BBC.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/BBC.h)\n[BBC.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/BBC.hpprgm)\n\n### IBM CGA CP437 8x8\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/CGA.bmp\" \u003e\n\n[CGA.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/CGA.h)\n[CGA.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/CGA.hpprgm)\n\n### IBM EGA CP437 8x14\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/EGA.bmp\" \u003e\n\n[EGA.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/EGA.h)\n[EGA.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/EGA.hpprgm)\n\n### IBM VGA CP437 9x16\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/VGA.bmp\" \u003e\n\n[VGA.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/VGA.h)\n[VGA.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/VGA.hpprgm)\n\n### ARCADE\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/ARCADE.bmp\" \u003e\n\n[ARCADE.h](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/ARCADE.h)\n[ARCADE.hpprgm](https://github.com/Insoft-UK/piXfont/blob/main/assets/fonts/ARCADE.hpprgm)\n\ne.g.\n### HD44780.h\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/HD44780.png\" width=\"20%\" \u003e\n\n```\npxfnt HD44780.bmp -o HD44780.h -f 32 -l 255 -w 5 -h 10 -F -i 3 -g v -H 1 -V 1 -x 1 -y 1\n```\nGlyphs range from ASCII code 32 `-f 32` to ASCII code 255 `-l 255`.\u003c/br\u003e\nEach glyph has a maximum width of 5 pixels `-w 5` and a height of 10 pixels `-h 10`, with a fixed width of 10 pixels `-F`.\u003c/br\u003e\nColor index 3 `-i 3` is used for pixel data, with a default value of 1.\u003c/br\u003e\nGlyphs in the image are arranged top to bottom, left to right `-g v`.\u003c/br\u003e\nGlyphs are spaced 1 pixel apart horizontally `-H 1` and 1 pixel apart vertically `-V 1`.\u003c/br\u003e\nThe glyphs begin 1 pixel from the left `-x 1` and 1 pixel from the top `-y 1` of the image.\u003c/br\u003e\n\n```\nInsoft Adafruit GFX Pixel Font Creator version, 1.0.8 (BUILD A0I87-25B5)\nCopyright (C) 2024-2025 Insoft. All rights reserved.\n\nUsage: pxfnt \u003cinput-file\u003e [-o \u003coutput-file\u003e] -w \u003cvalue\u003e -h \u003cvalue\u003e [-c \u003ccolumns\u003e] [-n \u003cname\u003e] [-f \u003cvalue\u003e] [-l \u003cvalue\u003e] [-a] [-x \u003cx-offset\u003e] [-y \u003cy-offset\u003e] [-u \u003cvalue\u003e] [-g \u003ch/v\u003e] [-s \u003cvalue\u003e] [-H \u003cvalue\u003e] [-V \u003cvalue\u003e] [-F] [-i] [-v]\n\nOptions:\n  -o \u003coutput-file\u003e   Specify the filename for generated .bmp, .h or .hpprgm file.\n  -w \u003cvalue\u003e         Maximum glyph width in pixels.\n  -h \u003cvalue\u003e         Maximum glyph height in pixels.\n  -c \u003ccolumns\u003e       Number of glyphs per column when generating a glyph atlas.\n  -n \u003cname\u003e          Font name.\n  -f \u003cvalue\u003e         First ASCII value of the first character.\n  -l \u003cvalue\u003e         Last ASCII value of the last character.\n  -a                 Auto left-align glyphs.\n  -x \u003cx-offset\u003e      X-axis offset where glyphs start within the image file.\n  -y \u003cy-offset\u003e      Y-axis offset where glyphs start within the image file.\n  -u \u003cvalue\u003e         Cursor advance distance in the x-axis from the\n                     right edge of the glyph (default: 1).\n  -g \u003ch/v\u003e           Set the glyph layout direction, horizontal or vertical.\n  -s \u003cvalue\u003e         Cursor advance distance in the x-axis for ASCII\n                     character 32 (space), if not using fixed width.\n  -H \u003cvalue\u003e         Horizontal spacing in pixels between glyphs.\n  -V \u003cvalue\u003e         Vertical spacing in pixels between glyphs.\n  -F                 Use fixed glyph width.\n  -2x                2x glyphs when generating a glyph atlas.\n  -3x                3x glyphs when generating a glyph atlas.\n  -4x                4x glyphs when generating a glyph atlas.\n  -i \u003cvalue\u003e         The color index used to represent a pixel in a glyph when using\n                     a non-monochrome image, for monochrome image value is 0 or 1.\n  -v                 Enable verbose output for detailed processing information.\n\nVerbose Flags:\n  f                  Font details.\n  g                  Glyph details.\n\nAdditional Commands:\n  pxfnt {--version | --help}\n    --version        Display version information.\n    --help           Show this help message.\n```\n\n```\npxfnt HD44780.h -o HD44780.hpprgm\n```\nThe HP Prime stores its data as a list of 64-bit unsigned integers. The bitmap, however, is stored in a specific bit order (little-endian) and where each byte of the 64-bit value is mirror-flipped.\n\ne.g.\n\u003cimg src=\"https://github.com/Insoft-UK/piXfont/blob/main/assets/Hart.png\" width=\"128\" \u003e\n```\n01101100 #6Ch to 00110110 #36h\n11111110 #FEh to 01111111 #7Fh\n11111110 #FEh to 01111111 #7Fh\n11111110 #FEh to 01111111 #7Fh\n01111110 #7Eh to 01111110 #7Eh\n00111000 #38h to 00011100 #1Ch\n00010000 #10h to 00001000 #08h\n00000000 #00h to 00000000 #00h := #00081C7E7F7F7F36:64h\n```\n\n### Little-Endian\n`#00081C7E7F7F7F36:64h`\n#### Glyphs\n`#--YYXXAAHHWWOOOO:64h = #--:8h #00:8h #00:8h #00:8h #00:8h #00:8h #0000:16h`\n\n### Big-Endian\n`#3CFEFEFE7E381000:64h`\n#### Glyphs\n`#--0000WWHHAAXXYY:64h =  #--:8h #0000:16h #00:8h #00:8h #00:8h #00:8h #00:8h`\n\n\n\u003e [!NOTE]\nThe only image file format currently supported by this utility tool is the Portable Network Graphic (**8-Bit PNG**), Portable Bitmap (**PBM**) P4 and Bitmap (**BMP**) format.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsoft-uk%2Fpixfont","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finsoft-uk%2Fpixfont","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsoft-uk%2Fpixfont/lists"}