diff options
author | Khaled Hosny <khaledhosny@eglug.org> | 2016-11-17 15:03:39 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-11-18 07:42:52 +0000 |
commit | d8c386593e42e1f0cce52d052b1009c59e75afa2 (patch) | |
tree | 82979c0e4b3c3bfa98e9e2e488aa4af26725eab6 /sw | |
parent | 2ec76e5db5c194e133b6fee5c7f81c04357971f8 (diff) |
tdf#103944: Fix symbol font remapping
This reverts:
commit 8556cd881270823865662e9a7700da58d11c2785
Author: Miklos Vajna <vmiklos@collabora.co.uk>
Date: Thu Mar 6 09:48:54 2014 +0100
cp#1000039 DOC import: ignore symbol charset of the symbol font
Otherwise characters unhandled by our OpenSymbol font (like Arabic 0-9
numbers) won't be rendered using an other font, as no other font
provides the symbol charset. Do this in
SwWW8ImplReader::GetFontParams(), where we already have font name ->
font family mappings for a few well-known fonts.
The DOCX filter does the same for quite some time, and that's how Arabic
numbers in text using the Symbol font were rendered, instead of little
rectangles.
The reverted commit prevented remapping symbols supported by OpenSymbol,
and it seems to have worked incidentally because of the fallback to the
“Standard Symbols L” Type 1 font which we longer support. The bug doc is
broken in master with or without this commit, but reverting this fixes
tdf#103944.
Change-Id: I17ac699fc5987e11e5c9e490895fc3c4967d3127
Reviewed-on: https://gerrit.libreoffice.org/30932
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/extras/ww8export/data/cp1000039.doc | bin | 22016 -> 0 bytes | |||
-rw-r--r-- | sw/qa/extras/ww8export/ww8export.cxx | 6 | ||||
-rw-r--r-- | sw/source/filter/ww8/ww8par6.cxx | 5 |
3 files changed, 0 insertions, 11 deletions
diff --git a/sw/qa/extras/ww8export/data/cp1000039.doc b/sw/qa/extras/ww8export/data/cp1000039.doc Binary files differdeleted file mode 100644 index 70cad3c244b9..000000000000 --- a/sw/qa/extras/ww8export/data/cp1000039.doc +++ /dev/null diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx index d3d87332f48e..a89798408c3c 100644 --- a/sw/qa/extras/ww8export/ww8export.cxx +++ b/sw/qa/extras/ww8export/ww8export.cxx @@ -347,12 +347,6 @@ DECLARE_WW8EXPORT_TEST(testCp1000044, "cp1000044.doc") CPPUNIT_ASSERT_EQUAL(false, bool(xStorable->isReadonly())); } -DECLARE_WW8EXPORT_TEST(testCp1000039, "cp1000039.doc") -{ - // This was RTL_TEXTENCODING_SYMBOL, causing "1" rendered as a placeholder rectangle. - CPPUNIT_ASSERT_EQUAL(sal_Int16(RTL_TEXTENCODING_DONTKNOW), getProperty<sal_Int16>(getRun(getParagraph(1), 1), "CharFontCharSet")); -} - DECLARE_WW8EXPORT_TEST(testBorderColours, "bordercolours.doc") { // The following 6 colours can only be represented with WW9 (Word 2000) diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index 11850a08f24f..f28b3a832d22 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -3467,11 +3467,6 @@ bool SwWW8ImplReader::GetFontParams( sal_uInt16 nFCode, FontFamily& reFamily, reCharSet = rtl_getTextEncodingFromWindowsCharset( pF->chs ); } - // Make sure charset is not set in case of Symbol, otherwise in case a - // character is missing in our OpenSymbol, the character won't be replaced. - if (reCharSet == RTL_TEXTENCODING_SYMBOL && rName == "Symbol") - reCharSet = RTL_TEXTENCODING_DONTKNOW; - // make sure Font Family Code is set correctly // at least for the most important fonts // ( might be set wrong when Doc was not created by |