Commit Graph

85 Commits

Author SHA1 Message Date
Jonathan G Rennison
cbdd9f84d8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/console_gui.cpp
#	src/lang/korean.txt
#	src/video/sdl2_v.cpp
#	src/video/sdl2_v.h
#	src/window.cpp
#	src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee Cleanup: Removed SVN headers 2019-11-10 17:59:20 +00:00
Jonathan G Rennison
dbc5f1baed Merge branch 'master' into jgrpp-nrt
# Conflicts:
#	src/fontcache.cpp
#	src/game/game_text.cpp
#	src/lang/korean.txt
#	src/os/macosx/crashlog_osx.cpp
#	src/os/windows/crashlog_win.cpp
#	src/station_cmd.cpp
#	src/viewport.cpp
2019-07-11 20:03:23 +01:00
Michael Lutz
d2ed426077 Codechange: [Win32] Pass a native GDI font description around when we have one, instead of repeatedly guessing the font. 2019-05-14 11:21:36 +01:00
Michael Lutz
2675762ae9 Add: [Win32] GDI engine for font glyph rendering as a replacement for including FreeType.
Building with FreeType is still possible and will take precedence over the GDI renderer, but
the project files don't include FreeType anymore by default. Combining GDI rendering with ICU
text layout is untested.
2019-05-14 11:21:36 +01:00
Jonathan G Rennison
674732cd68 Merge: Codechange: Use null pointer literal instead of the NULL macro 2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
Jonathan G Rennison
2003a86932 Merge remote-tracking branch 'origin/master' into jgrpp
# Conflicts:
#	src/string.cpp
2018-12-10 18:40:05 +00:00
Michael Lutz
32ce1ce347 Add: [OSX] Text layout using the native CoreText API.
By default, the native API will be used instead of ICU, but if ICU is
forced in using configure, it will take precedence.
2018-12-08 20:13:27 +01:00
Jonathan G Rennison
b48a6ef368 Revert "Revert "Add: [Win32] Uniscribe configure options for MinGW targets.""
This reverts commit ca4a4869a2.
2018-06-25 18:39:59 +01:00
Jonathan G Rennison
ca4a4869a2 Revert "Add: [Win32] Uniscribe configure options for MinGW targets."
Revert "Change: [Win32] Use Uniscribe instead of ICU for text caret handling."
Revert "Change: [Win32/MSVC] Make the Uniscribe text layouter the windows default and remove usage of the deprecated ICU layout libs."
Revert "Add: [Win32] Text layout using the native Windows Uniscribe library."
Revert "Codechange: Move ParagraphLayouter-specific functions into factory classes instead of relying on overloads."
Revert "Add: [Win32] Native natural sort implementation."

This reverts commit cd966f3810.
This reverts commit eec3f40931.
This reverts commit 33829dc6ab.
This reverts commit 768a31bfe3.
This reverts commit a4278c302b.
This reverts commit f4394debdc.

This is to fix various problems and crashes with text rendering
and font handling on Windows.

See #58.
2018-06-13 01:46:19 +01:00
Jonathan G Rennison
8e9d68048a Merge branch 'master' into jgrpp
# Conflicts:
#	src/string.cpp
2018-06-07 06:49:18 +01:00
Michael Lutz
768a31bfe3 Add: [Win32] Text layout using the native Windows Uniscribe library.
Uniscribe is sometimes producing different results compared to ICU, especially
when RTL and LTR content is mixed. Comparing the results to other programs
(like editors or web browsers) leads me to believe that the result are at least
not worse than ICU and possibly better.
2018-06-06 21:37:09 +02:00
Jonathan G Rennison
30d8cb2d4c Fix font height cache when changing GUI scaling. 2016-01-03 14:52:30 +00:00
Jonathan G Rennison
5aad0b51a3 Cache font heights in a static fixed array.
This is to avoid significant per-call overhead to get font heights,
as this is performed very frequently.
2016-01-01 21:47:34 +00:00
peter1138
aa6fdf6f13 (svn r27004) -Codechange: Make GUI size apply to (sprite-font) text as well. 2014-10-12 20:43:25 +00:00
peter1138
1088ad48fc (svn r27004) -Codechange: Make GUI size apply to (sprite-font) text as well. 2014-10-12 20:43:25 +00:00
rubidium
8860bb5c8d (svn r26170) -Feature-ish: add the currently used fonts to the crash log 2013-12-22 17:46:27 +00:00
rubidium
00c05e79b1 (svn r26170) -Feature-ish: add the currently used fonts to the crash log 2013-12-22 17:46:27 +00:00
frosch
0cf1de904d (svn r25860) -Fix [FS#5737] (r25570): When clearing font cache, also clear layout cache. (adf88) 2013-10-13 13:28:06 +00:00
frosch
dcec8b9abd (svn r25860) -Fix [FS#5737] (r25570): When clearing font cache, also clear layout cache. (adf88) 2013-10-13 13:28:06 +00:00
rubidium
f2d78be786 (svn r25493) -Codechange: support for the safer variant of ICU's getFontTable 2013-06-27 21:21:47 +00:00
rubidium
0c14a586bd (svn r25493) -Codechange: support for the safer variant of ICU's getFontTable 2013-06-27 21:21:47 +00:00
rubidium
1e7ff472c7 (svn r25469) -Add: method for getting the font tables from freetype fonts 2013-06-25 20:39:58 +00:00
rubidium
7b10e39bf1 (svn r25469) -Add: method for getting the font tables from freetype fonts 2013-06-25 20:39:58 +00:00
rubidium
755bd9901d (svn r25463) -Codechange: export more size related information from the fonts 2013-06-25 20:21:21 +00:00
rubidium
43a37f7f28 (svn r25463) -Codechange: export more size related information from the fonts 2013-06-25 20:21:21 +00:00
rubidium
71f6eab843 (svn r25462) -Codechange: make a better distinction between characters and glyphs 2013-06-25 20:20:15 +00:00
rubidium
092c33be3f (svn r25462) -Codechange: make a better distinction between characters and glyphs 2013-06-25 20:20:15 +00:00
rubidium
67dc369a82 (svn r25445) -Codechange: simplify the font loading 2013-06-23 15:37:18 +00:00
rubidium
8c5a7cf0ab (svn r25445) -Codechange: simplify the font loading 2013-06-23 15:37:18 +00:00
rubidium
aa9bf82121 (svn r25442) -Codechange: move height and ascender information into the FontCache instances 2013-06-23 15:32:09 +00:00
rubidium
d724088a1c (svn r25442) -Codechange: move height and ascender information into the FontCache instances 2013-06-23 15:32:09 +00:00
rubidium
30394cb05e (svn r25438) -Codechange: introduce classes for the FontCache 2013-06-23 15:24:36 +00:00
rubidium
e1a2a8275b (svn r25438) -Codechange: introduce classes for the FontCache 2013-06-23 15:24:36 +00:00
rubidium
44d584f84a (svn r25437) -Codechange: rework the FreeTypeSettings structure to make it better grouped 2013-06-23 15:23:22 +00:00
rubidium
94a5fe6b92 (svn r25437) -Codechange: rework the FreeTypeSettings structure to make it better grouped 2013-06-23 15:23:22 +00:00
rubidium
d99113bd00 (svn r25436) -Codechange: split the font detection code out of the font caching code 2013-06-23 15:20:23 +00:00
rubidium
13c450a66b (svn r25436) -Codechange: split the font detection code out of the font caching code 2013-06-23 15:20:23 +00:00
rubidium
2816a65365 (svn r23992) -Fix: compilation without freetype 2012-02-25 22:18:53 +00:00
rubidium
974a08bf60 (svn r23992) -Fix: compilation without freetype 2012-02-25 22:18:53 +00:00
frosch
fd986f651a (svn r23987) -Fix (r23000): Also reset the font glyph cache when switching blitters. 2012-02-25 17:20:02 +00:00
frosch
df54f25efe (svn r23987) -Fix (r23000): Also reset the font glyph cache when switching blitters. 2012-02-25 17:20:02 +00:00
rubidium
17db686187 (svn r23275) -Codechange: allow loading of the monospace (freetype) font at another moment than the other fonts 2011-11-20 11:59:36 +00:00
rubidium
9512838a5e (svn r23275) -Codechange: allow loading of the monospace (freetype) font at another moment than the other fonts 2011-11-20 11:59:36 +00:00
rubidium
49047246fa (svn r23274) -Add: internal support for a monospaced sprite font 2011-11-20 11:56:51 +00:00
rubidium
dfefcab47d (svn r23274) -Add: internal support for a monospaced sprite font 2011-11-20 11:56:51 +00:00
rubidium
c2ea904860 (svn r23271) -Codechange: don't repeatedly initialise and free the freetype library 2011-11-20 08:08:13 +00:00
rubidium
542c61397c (svn r23271) -Codechange: don't repeatedly initialise and free the freetype library 2011-11-20 08:08:13 +00:00
rubidium
e3905eecbb (svn r23265) -Codechange: replace the setfallbackfont callback function with a class to call back 2011-11-19 18:43:00 +00:00