Commit Graph

143 Commits

Author SHA1 Message Date
Michael Lutz eeccfa2570 Add: [Win32] Support for loading fonts from a file for the GDI font renderer. 2019-05-14 11:21:36 +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
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