diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2017-06-05 23:47:13 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2017-06-09 20:50:12 +0200 |
commit | 8ebbfad8d31d75fe09c5521f70edb889ed5fa9c5 (patch) | |
tree | 5fe7928c8d39a6a57d3a3e04f95a8e766715f2a6 /sw | |
parent | 0f1d081a3c3ad44b07e02d98b75e6c41696ead22 (diff) |
tdf#108350: Use Carlito for DOCX import by default
In OOXML (i.e. Word since 2007), the default document font is Calibri
11 pt. If a document doesn't contain font information, we should assume
our metric-compatible equivalent Carlito to provide best layout match.
A unit test included.
An existing unit test (testN766487) was corrected to match the font
size that Word uses (11; was 12 which doesn't match Word's size).
Reviewed-on: https://gerrit.libreoffice.org/38421
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
(cherry picked from commit 5471a5585cba925bb0dcb2dc41e03ad563998166)
Change-Id: I3040f235696282dc7a124cd83fb34a6d95a29a17
Reviewed-on: https://gerrit.libreoffice.org/38589
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/extras/ooxmlexport/ooxmlexport8.cxx | 4 | ||||
-rw-r--r-- | sw/qa/extras/ooxmlimport/data/tdf108350.docx | bin | 0 -> 1271 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 11 |
3 files changed, 13 insertions, 2 deletions
diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport8.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport8.cxx index 0dce2c56a1a8..cdf4c8e7e826 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport8.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport8.cxx @@ -348,7 +348,7 @@ DECLARE_OOXMLEXPORT_TEST(testN766487, "n766487.docx") * oPara = oParas.nextElement * oRuns = oPara.createEnumeration * oRun = oRuns.nextElement - * xray oRun.CharHeight ' 12, was larger + * xray oRun.CharHeight ' 11, was larger * oPara = oParas.nextElement * xray oPara.ParaFirstLineIndent ' -635, was 0 */ @@ -361,7 +361,7 @@ DECLARE_OOXMLEXPORT_TEST(testN766487, "n766487.docx") uno::Reference<beans::XPropertySet> xPropertySet(xRunEnum->nextElement(), uno::UNO_QUERY); float fValue = 0; xPropertySet->getPropertyValue("CharHeight") >>= fValue; - CPPUNIT_ASSERT_EQUAL(12.f, fValue); + CPPUNIT_ASSERT_EQUAL(11.f, fValue); xPropertySet.set(xParaEnum->nextElement(), uno::UNO_QUERY); sal_Int32 nValue = 0; diff --git a/sw/qa/extras/ooxmlimport/data/tdf108350.docx b/sw/qa/extras/ooxmlimport/data/tdf108350.docx Binary files differnew file mode 100644 index 000000000000..b62b3e127838 --- /dev/null +++ b/sw/qa/extras/ooxmlimport/data/tdf108350.docx diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index 2e900ba0b83c..2111cea8e953 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -1379,6 +1379,17 @@ DECLARE_OOXMLIMPORT_TEST(testTdf100072, "tdf100072.docx") CPPUNIT_ASSERT_MESSAGE("Shape line width does not match", abs(nFirstEnd - nSecondEnd) < 10); } +DECLARE_OOXMLIMPORT_TEST(testTdf108350, "tdf108350.docx") +{ + // For OOXML without explicit font information, font needs to be Carlito 11 pt, + // our bundled metrically compatible substitute for Calibri. + uno::Reference<text::XTextRange> xPara(getParagraph(1)); + uno::Reference<beans::XPropertySet> xRun(getRun(xPara, 1), uno::UNO_QUERY); + CPPUNIT_ASSERT_EQUAL(OUString("Carlito"), getProperty<OUString>(xRun, "CharFontName")); + CPPUNIT_ASSERT_EQUAL(double(11), getProperty<double>(xRun, "CharHeight")); +} + + // tests should only be added to ooxmlIMPORT *if* they fail round-tripping in ooxmlEXPORT CPPUNIT_PLUGIN_IMPLEMENT(); |