WerWolv
98e9729267
fix: Preview fonts not being properly reset during soft-restarts
2025-09-21 22:11:28 +02:00
WerWolv
3905335c53
build: Update Tabler icons
2025-09-19 18:22:06 +02:00
WerWolv
76bb0e420d
fix: Rename font_size setting to not cause issues during upgrade
2025-08-30 18:11:06 +02:00
WerWolv
a80c35aa94
fix: Icon offsets being scaled incorrectly
2025-08-24 13:55:02 +02:00
WerWolv
fcda856198
fix: Font being scaled too large if main screen DPI is higher than secondary screen DPIs
...
#2419
2025-08-24 12:57:56 +02:00
WerWolv
0e800723f5
impr: Store points instead of pixels for font size in settings
2025-08-23 20:56:34 +02:00
WerWolv
7588a84e86
fix: Only update font size after letting go of slider
2025-08-17 23:36:02 +02:00
WerWolv
fbde2942de
build: Refactor ContentRegistry into multiple separate files
2025-08-14 21:22:03 +02:00
WerWolv
d920718b44
build: Refactor ImHexAPI into multiple separate files
2025-08-14 20:16:40 +02:00
WerWolv
6febe9982b
impr: Significantly reduce memory usage
2025-08-12 18:00:47 +02:00
WerWolv
b5a3a8b4c2
impr: Rewrite Localization Manager to use more standard format and load localizations on the fly
2025-08-12 18:00:10 +02:00
WerWolv
c30830a8ff
impr: Added Tabler Icons font
2025-08-09 17:55:39 +02:00
WerWolv
d922dbe04c
impr: Make Bold and Italic button icons configurable though localizations
2025-08-08 22:46:47 +02:00
WerWolv
09bc5b92f6
impr: Make font bold icon look more bold
2025-08-08 17:47:24 +02:00
WerWolv
c0ee243d64
fix: Various build issues
2025-08-06 00:03:18 +02:00
WerWolv
018c61890c
impr: Use icon buttons for bold and italic font settings
2025-08-05 23:32:44 +02:00
WerWolv
a2c4aefced
fix: Crashes when font failed to be loaded
2025-07-31 23:13:50 +02:00
WerWolv
0e855e10db
fix: Slightly adjust icon positions again
2025-07-31 20:54:56 +02:00
WerWolv
fd8bdbdc90
fix: Icons being too big for regular text
2025-07-31 20:32:59 +02:00
WerWolv
5c99974202
impr: Only show fonts in the font picker that can actually be used
2025-07-30 22:33:32 +02:00
WerWolv
896e05331c
feat: Preload fonts to display them in the font picker
2025-07-30 17:44:12 +02:00
WerWolv
6ab3353a15
fix: Font memory leak
2025-07-30 17:43:28 +02:00
WerWolv
a3c71b3955
fix: Settings onChange handlers running more than once in some cases
2025-07-28 18:02:33 +02:00
WerWolv
46b13b6606
impr: Nicer font registering API
2025-07-28 18:02:33 +02:00
WerWolv
bc644e324a
impr: Add extra suffixes for regular / bold / italic font variations
2025-07-26 14:30:30 +02:00
WerWolv
8782be593d
feat: Added ability to draw Bold and Italic text
2025-07-26 14:22:50 +02:00
WerWolv
2998cc0fd7
impr: Cleanup font loading
2025-07-26 14:01:31 +02:00
WerWolv
c1545b57c9
impr: Cleanup font loading API, fix CJK glyphs being rendered way too large
2025-07-25 23:06:44 +02:00
WerWolv
de62a4c71e
impr: Better icon centering in icon buttons
2025-07-17 20:12:38 +02:00
WerWolv
5782236379
impr: Disable hinting for pixel perfect font
2025-07-11 15:04:21 +02:00
WerWolv
88de5f6be4
impr: Better font settings window
2025-07-11 14:55:25 +02:00
WerWolv
4520637aed
fix: Pixel perfect font not scaling correctly
2025-07-11 14:54:54 +02:00
WerWolv
2ab54baa2c
fix: DPI scaling
2025-07-10 14:39:52 +02:00
Nik
d1840a2184
build: Update ImGui to v1.92.1 ( #2325 )
...
Update ImGui to the latest version and rewrite most of the font handling
code
2025-07-10 10:00:39 +02:00
WerWolv
69b07d40e4
build: Updated ImGui to v1.91.9b
2025-05-25 15:30:33 +02:00
WerWolv
b96692b1ba
fix: Global scale race condition during font loading
2025-05-25 15:11:09 +02:00
WerWolv
de16375903
impr: Slightly simplify subpixel rendering logic and required ImGui patches
2025-05-24 22:32:08 +02:00
WerWolv
c6548d5ad1
fix: Non-subpixel rendered glyphs appearing as white rectangles if subpixel rendering is enabled
2025-05-24 21:59:21 +02:00
WerWolv
c69a7012c5
fix: Unifont glyphs being rendered too far down
2025-05-24 16:09:15 +02:00
WerWolv
823013a3d9
fix: Fonts being smaller than their set size value
2025-05-24 11:47:46 +02:00
WerWolv
0f0bff1685
fix: Remaining Subpixel rendering issues
2025-05-19 00:00:32 +02:00
WerWolv
b6387c3f64
fix: Crash when loading subpixel font didn't work
2025-05-18 11:10:43 +02:00
WerWolv
a207969dec
fix: Unicode enable option not working correctly
2025-05-11 23:07:52 +02:00
WerWolv
5a095cc993
fix: Icon scaling when using pixel perfect font
2025-05-11 17:42:36 +02:00
paxcut
5c4cf7379f
feat: Added Subpixel Font rendering ( #2092 )
...
Proof of concept for implementing subpixel processing in ImGui. This is
work in progress, and it is bound to have problems.
What it does:
1) Uses freetype own subpixel processing implementation to build a
32-bit color atlas for the default font only (no icons, no unifont) . 2)
Avoids pixel perfect font conversion when possible. 3) Self contained,
no ImGui source code changes.
4) Results in much improved legibility of fonts rendered on low dpi LCD
screens that use horizontal RGB pixel layouts (no BRG or OLED or CRT if
they even exist anymore)
What it doesn't:
1) Fancy class based interface. The code is barely the minimum needed to
show it can work. 2) Dual source color blending. That needs to be
implemented in shader code, so it needs to change ImGui source code
although minimally. This will result in some characters appearing dimmer
than others. Easily fixed with small fragment and vertex shaders. 3)
subpixel positioning. If characters are very thin they will look
colored, or they can be moved to improve legibility. 4) deal with
detection of fringe cases including rare pixel layouts, non LCD screens,
Mac-OS not handling subpixel rendering and any other deviation from the
standard LCD. 5) tries to be efficient in speed or memory use. Font
Atlases will be 4 times the size they were before, but there are no
noticeable delays in font loading in the examples I have tried.
Any comments and code improvements are welcome.
---------
Co-authored-by: Nik <werwolv98@gmail.com >
2025-05-11 15:36:32 +02:00
WerWolv
d7960dccb4
fix: ID collision when having duplicate fonts installed
...
Fixes #2141
2025-02-25 11:52:46 +01:00
WerWolv
d3c2516f5f
fix: Occasional crash when switching fonts
2025-02-18 21:50:51 +01:00
WerWolv
02b5df03ab
impr: Drastically reduce font-related memory usage
2025-02-10 12:02:05 +01:00
WerWolv
403104dda1
fix: Properly scale unifont glyphs
2025-01-26 14:21:17 +01:00
WerWolv
8334fbb236
fix: Properly apply backing scaling to pixel perfect default font
2025-01-26 14:18:20 +01:00