Commit Graph

142 Commits

Author SHA1 Message Date
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
Michael Lutz
a8b6e9f23c Codechange: Refactor the Freetype font cache into a generic part that does not depend on Freetype and into one that does.
This makes it easier to add other TrueType font rendering engines.
2019-05-14 11:21:36 +01:00
Henry Wilson
7c8e7c6b6e Codechange: Use null pointer literal instead of the NULL macro 2019-04-10 23:22:20 +02:00
Henry Wilson
ab711e6942 Codechange: Replaced SmallVector::[Begin|End]() with std alternatives 2019-03-26 20:15:57 +00:00
PeterN
195fd0dc60
Fix #7266: Reorder reinitialization of caches when changing font zoom level. (#7273) 2019-02-24 16:27:44 +00:00
PeterN
eeae4512ae
Fix #7003: Freetype fonts were scaled by both GUI and Font zoom levels. (#7267) 2019-02-23 16:07:25 +00:00
Greg Carlin
00d28a500d Feature: Add option to adjust font size separately from GUI size. (#7003)
Adds an option in the "Game Options" next to "Interface Size" called "Font Size". Available options are normal, double, and quad.
2019-02-23 08:27:46 +00:00
glx
1623cb553b Fix #7032: use the same mode to load and render glyphs 2019-01-17 21:56:12 +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
Michael Lutz
ae467ffc8a Fix: Scale default FreeType font size selection by UI zoom level. 2018-06-17 12:59:59 +02: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
frosch
b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 2017-08-13 18:38:42 +00:00
frosch
64c5f00429 (svn r27888) -Fix: Member access coding style (adf88) 2017-07-11 19:34:41 +00:00
peter1138
08fe8459c3 (svn r27859) -Revert (r27858): Committed too much :( 2017-04-23 09:20:53 +00:00
peter1138
c973f65acb (svn r27858) -Change [FS#6560]: Add missing game script event for ships arriving at a station. (juanjo) 2017-04-23 09:19:32 +00:00
frosch
bed0370ad1 (svn r27187) -Fix: Code style. 2015-03-15 12:19:58 +00:00
frosch
a8080b6256 (svn r27134) -Codechange: Simplify GUI scaling by adding UnScaleGUI() and ScaleGUITrad(). 2015-02-01 20:54:24 +00:00
planetmaker
24fec6da12 (svn r27079) -Fix: Compilation with freetype2 version 2.5.4 and newer (AMDmi3) 2014-12-11 12:25:53 +00:00
rubidium
d534c80e94 (svn r27020) -Cleanup: some coding style consistency improvements (mostly spaces) 2014-10-15 18:31:37 +00:00
peter1138
2eb38ef9e9 (svn r27015) -Codechange: Also scale the character spacing for fonts without shadow. 2014-10-14 14:16:38 +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
771dcf3b7b (svn r27003) -Cleanup: fix the use of spaces and asterices "around" some comments 2014-10-12 18:41:53 +00:00
rubidium
0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
fonsinchen
b816e07742 (svn r26389) -Fix [FS#5885]: Select a specific font size when freetype fails to select one automatically. 2014-03-03 21:34:36 +00:00
rubidium
2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 2014-01-02 22:41:58 +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
dcec8b9abd (svn r25860) -Fix [FS#5737] (r25570): When clearing font cache, also clear layout cache. (adf88) 2013-10-13 13:28:06 +00:00
frosch
b4609fd923 (svn r25822) -Fix [FS#5704]: Searching for a suitable font failed, if one of the fonts had no '?' glyph, and no baseset is installed. 2013-10-06 20:08:11 +00:00
frosch
4824cb7886 (svn r25569) -Codechange: Cache all Font instances in a static container. 2013-07-06 18:56:23 +00:00
rubidium
fac0b83df6 (svn r25511) -Fix-ish: add the same printable key assert to the sprite font cache as the freetype font cache 2013-06-29 12:03:44 +00:00
rubidium
3831e3829d (svn r25501) -Fix: compilation error on OS X 2013-06-28 19:31:31 +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
7b10e39bf1 (svn r25469) -Add: method for getting the font tables from freetype fonts 2013-06-25 20:39:58 +00:00
rubidium
43a37f7f28 (svn r25463) -Codechange: export more size related information from the fonts 2013-06-25 20:21:21 +00:00
rubidium
092c33be3f (svn r25462) -Codechange: make a better distinction between characters and glyphs 2013-06-25 20:20:15 +00:00
frosch
798f472552 (svn r25451) -Fix (r25445): Ini configuration for medium font was overwritten by front configuration of other sizes. 2013-06-23 20:08:13 +00:00
rubidium
8190d26f9e (svn r25446) -Codechange: call sprite fontcache code from freetype font cache in case a sprite must be shown 2013-06-23 15:38:51 +00:00
rubidium
8c5a7cf0ab (svn r25445) -Codechange: simplify the font loading 2013-06-23 15:37:18 +00:00
rubidium
c23eaf0790 (svn r25444) -Codechange: move sprite font code together with the other sprite font code 2013-06-23 15:36:29 +00:00
rubidium
ac4dd5d627 (svn r25443) -Codechange: move the glyph to sprite cache into the FreeTypeFontCache instance 2013-06-23 15:35:06 +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
eb4388f4f3 (svn r25441) -Codechange: move the freetype font allocation into the FreeTypeFontCache 2013-06-23 15:29:20 +00:00
rubidium
a285743d48 (svn r25439) -Codechange: move the glyph to sprite ID mapping into the SpriteFontCache 2013-06-23 15:25:35 +00:00
rubidium
e1a2a8275b (svn r25438) -Codechange: introduce classes for the FontCache 2013-06-23 15:24:36 +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
13c450a66b (svn r25436) -Codechange: split the font detection code out of the font caching code 2013-06-23 15:20:23 +00:00
michi_cc
55ba9320f3 (svn r25157) -Feature: Determine the default font height for vector fonts according to the minimum readable height that the font provides. 2013-04-06 22:06:44 +00:00
michi_cc
d1212e0b1a (svn r25153) -Fix [FS#5522] (r24487): [Win32] Don't statically link to SHGetFolderPath as it may not exist. 2013-04-06 18:36:41 +00:00
planetmaker
c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00