summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2018-06-23 16:09:13 +0200
committerTomaž Vajngerl <quikee@gmail.com>2018-06-27 15:11:00 +0200
commit1a651c3fffee4c1e7674c8b4af4b1982af8072f5 (patch)
treecf12721c69b234803fc0318639eda39e598037ab /vcl
parent387f00311a1b2d12d16ae5731347cdc4328afa4a (diff)
vcl: prefer OpenType font feature description over Graphite
If the fon supports Graphite features we can get the feature descriptions from the font, but this descriptions are mostly limited (available in a limited number of languages), so it is better to only use this descriptions only if the feature does not have an OpenType description available. Change-Id: Ic0b81cb8cc22e1e73f30e6a960167cfa982fbfc7 Reviewed-on: https://gerrit.libreoffice.org/56318 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/font/FeatureCollector.cxx17
1 files changed, 9 insertions, 8 deletions
diff --git a/vcl/source/font/FeatureCollector.cxx b/vcl/source/font/FeatureCollector.cxx
index 790c3a484dcb..8f6b8180c3e9 100644
--- a/vcl/source/font/FeatureCollector.cxx
+++ b/vcl/source/font/FeatureCollector.cxx
@@ -98,15 +98,16 @@ void FeatureCollector::collectForLanguage(hb_tag_t aTableTag, sal_uInt32 nScript
m_rFontFeatures.emplace_back();
vcl::font::Feature& rFeature = m_rFontFeatures.back();
rFeature.m_aID = { aFeatureTag, aScriptTag, aLanguageTag };
- bool bResult = collectGraphiteFeatureDefinition(rFeature);
- if (!bResult)
+
+ FeatureDefinition aDefinition
+ = OpenTypeFeatureDefinitonList::get().getDefinition(aFeatureTag);
+ if (aDefinition)
{
- FeatureDefinition aDefinition
- = OpenTypeFeatureDefinitonList::get().getDefinition(aFeatureTag);
- if (aDefinition)
- {
- rFeature.m_aDefinition = vcl::font::FeatureDefinition(aDefinition);
- }
+ rFeature.m_aDefinition = vcl::font::FeatureDefinition(aDefinition);
+ }
+ else
+ {
+ collectGraphiteFeatureDefinition(rFeature);
}
}
}