diff options
author | Chris Loer <chris.loer@gmail.com> | 2017-11-21 15:12:07 -0800 |
---|---|---|
committer | Chris Loer <chris.loer@mapbox.com> | 2017-12-11 10:43:00 -0800 |
commit | 1661af1cb409505bb362e2274cb61f097ad25864 (patch) | |
tree | 184b9000d4b5a2f8760468eaa018adc9d6de24ae /platform | |
parent | 730054276ed6a5dc7ba9d19765b8457a818854f7 (diff) | |
download | qtlocation-mapboxgl-1661af1cb409505bb362e2274cb61f097ad25864.tar.gz |
[core] Enable local glyph generation using TinySDF.
- Platform-specific LocalGlyphRasterizer is responsible for deciding which glyphs to rasterize locally and for implementing the rasterization.
- Default platform implementation doesn't locally generate any glyphs -> no behavior change
- Unit test uses StubLocalGlyphRasterizer, which returns a single fixed bitmap for all CJK glyphs
- Rename glyph_loader.test to glyph_manager.test
Diffstat (limited to 'platform')
-rw-r--r-- | platform/android/config.cmake | 1 | ||||
-rw-r--r-- | platform/default/local_glyph_rasterizer.cpp | 13 | ||||
-rw-r--r-- | platform/ios/config.cmake | 1 | ||||
-rw-r--r-- | platform/linux/config.cmake | 1 | ||||
-rw-r--r-- | platform/macos/config.cmake | 1 | ||||
-rw-r--r-- | platform/qt/config.cmake | 2 |
6 files changed, 19 insertions, 0 deletions
diff --git a/platform/android/config.cmake b/platform/android/config.cmake index 96ec901a42..a915f1d93d 100644 --- a/platform/android/config.cmake +++ b/platform/android/config.cmake @@ -41,6 +41,7 @@ macro(mbgl_platform_core) PRIVATE platform/android/src/thread.cpp PRIVATE platform/default/string_stdlib.cpp PRIVATE platform/default/bidi.cpp + PRIVATE platform/default/local_glyph_rasterizer.cpp PRIVATE platform/default/thread_local.cpp PRIVATE platform/default/utf.cpp diff --git a/platform/default/local_glyph_rasterizer.cpp b/platform/default/local_glyph_rasterizer.cpp new file mode 100644 index 0000000000..7ace6cbfb1 --- /dev/null +++ b/platform/default/local_glyph_rasterizer.cpp @@ -0,0 +1,13 @@ +#include <mbgl/text/local_glyph_rasterizer.hpp> + +namespace mbgl { + +bool LocalGlyphRasterizer::canRasterizeGlyph(const FontStack&, GlyphID) { + return false; +} + +Glyph LocalGlyphRasterizer::rasterizeGlyph(const FontStack&, GlyphID) { + return Glyph(); +} + +} // namespace mbgl diff --git a/platform/ios/config.cmake b/platform/ios/config.cmake index 7f54d71313..47665c33f1 100644 --- a/platform/ios/config.cmake +++ b/platform/ios/config.cmake @@ -32,6 +32,7 @@ macro(mbgl_platform_core) PRIVATE platform/darwin/src/nsthread.mm PRIVATE platform/darwin/src/string_nsstring.mm PRIVATE platform/default/bidi.cpp + PRIVATE platform/default/local_glyph_rasterizer.cpp PRIVATE platform/default/thread_local.cpp PRIVATE platform/default/utf.cpp diff --git a/platform/linux/config.cmake b/platform/linux/config.cmake index fef0f4486c..6027b1cd55 100644 --- a/platform/linux/config.cmake +++ b/platform/linux/config.cmake @@ -47,6 +47,7 @@ macro(mbgl_platform_core) PRIVATE platform/default/string_stdlib.cpp PRIVATE platform/default/thread.cpp PRIVATE platform/default/bidi.cpp + PRIVATE platform/default/local_glyph_rasterizer.cpp PRIVATE platform/default/thread_local.cpp PRIVATE platform/default/utf.cpp diff --git a/platform/macos/config.cmake b/platform/macos/config.cmake index 45cae9bf7d..7c52e7d537 100644 --- a/platform/macos/config.cmake +++ b/platform/macos/config.cmake @@ -18,6 +18,7 @@ macro(mbgl_platform_core) PRIVATE platform/darwin/src/nsthread.mm PRIVATE platform/darwin/src/string_nsstring.mm PRIVATE platform/default/bidi.cpp + PRIVATE platform/default/local_glyph_rasterizer.cpp PRIVATE platform/default/thread_local.cpp PRIVATE platform/default/utf.cpp diff --git a/platform/qt/config.cmake b/platform/qt/config.cmake index e3b15fddfd..9417963767 100644 --- a/platform/qt/config.cmake +++ b/platform/qt/config.cmake @@ -49,6 +49,8 @@ macro(mbgl_platform_core) target_sources(mbgl-core PRIVATE platform/qt/src/bidi.cpp) endif() + target_sources(mbgl-core PRIVATE platform/default/local_glyph_rasterizer.cpp) + endmacro() |