summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Hung <marklh9@gmail.com>2015-06-29 21:59:23 +0800
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-06-30 07:39:29 +0000
commit203e3c0f1190473d2e587a0801dc9f3883a6874a (patch)
tree4402f31cef7678590d0eb23d32d30dcb5b3b33f1
parentd16d9f950f8cb6d8948875372c9ff1f0aae9fb7a (diff)
tdf#92281 - FILEOPEN: Only western font is set for symbols in DOC files
Inserting a symbol in Writer set all fonts including CJK and CTL to the same one. This patch makes the behavior consistent with that, allows CJK and CTL user to see the symbols. Change-Id: I7a61868e8078c81c68e471760f080b3ce7df589f Reviewed-on: https://gerrit.libreoffice.org/16604 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
-rw-r--r--sw/qa/extras/ww8export/data/tdf92281.docbin0 -> 26112 bytes
-rw-r--r--sw/qa/extras/ww8export/ww8export.cxx8
-rw-r--r--sw/source/filter/ww8/ww8par6.cxx2
3 files changed, 10 insertions, 0 deletions
diff --git a/sw/qa/extras/ww8export/data/tdf92281.doc b/sw/qa/extras/ww8export/data/tdf92281.doc
new file mode 100644
index 000000000000..2893eb37ab00
--- /dev/null
+++ b/sw/qa/extras/ww8export/data/tdf92281.doc
Binary files differ
diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx
index e1626cd5f60c..cdf6d14f361a 100644
--- a/sw/qa/extras/ww8export/ww8export.cxx
+++ b/sw/qa/extras/ww8export/ww8export.cxx
@@ -452,6 +452,14 @@ DECLARE_WW8EXPORT_TEST(testWw8Cjklist35, "cjklist35.doc")
CPPUNIT_ASSERT_EQUAL(style::NumberingType::NUMBER_LOWER_ZH, numFormat);
}
+DECLARE_WW8EXPORT_TEST(testTdf92281, "tdf92281.doc")
+{
+ uno::Reference<beans::XPropertySet> xRun(getRun(getParagraph(1),1), uno::UNO_QUERY);
+ CPPUNIT_ASSERT_EQUAL(OUString("Wingdings"), getProperty<OUString>(xRun, "CharFontName"));
+ CPPUNIT_ASSERT_EQUAL(OUString("Wingdings"), getProperty<OUString>(xRun, "CharFontNameAsian"));
+ CPPUNIT_ASSERT_EQUAL(OUString("Wingdings"), getProperty<OUString>(xRun, "CharFontNameComplex"));
+}
+
DECLARE_WW8EXPORT_TEST(testCommentedTable, "commented-table.doc")
{
// Document has a non-trivial commented text range, as the range contains a table.
diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx
index 45a41a2404b9..4688fc397985 100644
--- a/sw/source/filter/ww8/ww8par6.cxx
+++ b/sw/source/filter/ww8/ww8par6.cxx
@@ -2779,6 +2779,8 @@ void SwWW8ImplReader::Read_Symbol(sal_uInt16, const sal_uInt8* pData, short nLen
//themselves so they don't need to add it to the stack either.
if (SetNewFontAttr(SVBT16ToShort( pData ), false, RES_CHRATR_FONT))
{
+ SetNewFontAttr(SVBT16ToShort( pData ), false, RES_CHRATR_CJK_FONT);
+ SetNewFontAttr(SVBT16ToShort( pData ), false, RES_CHRATR_CTL_FONT);
if( m_bVer67 )
{
//convert single byte from MS1252 to Unicode