diff options
author | Serge Krot <Serge.Krot@cib.de> | 2018-03-16 10:42:50 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-03-23 23:55:45 +0100 |
commit | 133821d1526800a93bb395a91f87dc77d29f0b8d (patch) | |
tree | da8304f933005bb7c525c8f33b4fc10ac4155a30 | |
parent | 90fb652ebbc4b16ae5001140076f52209e913345 (diff) |
tdf#113182: DOCX filter: new values of wrap property in text box
Added support of "none" and "through" values of the w:wrap
poroperty in the text box.
Change-Id: I83f0c9e8162e93bf457f228d49d3b426050d4dc6
Reviewed-on: https://gerrit.libreoffice.org/51396
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
(cherry picked from commit be02ce71f2ee694fa2609a7a630853c24acfbfff)
Reviewed-on: https://gerrit.libreoffice.org/51431
Reviewed-by: Serge Krot (CIB) <Serge.Krot@cib.de>
-rwxr-xr-x | sw/qa/extras/ooxmlimport/data/tdf113182.docx | bin | 0 -> 12561 bytes | |||
-rw-r--r-- | sw/qa/extras/ooxmlimport/ooxmlimport.cxx | 8 | ||||
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper.cxx | 7 |
3 files changed, 14 insertions, 1 deletions
diff --git a/sw/qa/extras/ooxmlimport/data/tdf113182.docx b/sw/qa/extras/ooxmlimport/data/tdf113182.docx Binary files differnew file mode 100755 index 000000000000..9f35ec3d4ebc --- /dev/null +++ b/sw/qa/extras/ooxmlimport/data/tdf113182.docx diff --git a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx index d879dab4495a..e3cdc19701ab 100644 --- a/sw/qa/extras/ooxmlimport/ooxmlimport.cxx +++ b/sw/qa/extras/ooxmlimport/ooxmlimport.cxx @@ -1574,6 +1574,14 @@ DECLARE_OOXMLIMPORT_TEST(testTdf112443, "tdf112443.docx") } +// DOCX: Textbox wrap differs in MSO and LO +// Both should layout text regardless of existing text box +// and as result only one page should be generated. +DECLARE_OOXMLIMPORT_TEST(testTdf113182, "tdf113182.docx") +{ + CPPUNIT_ASSERT_EQUAL(getPages(), 1); +} + DECLARE_OOXMLIMPORT_TEST(testTdf113946, "tdf113946.docx") { OUString aTop = parseDump("/root/page/body/txt/anchored/SwAnchoredDrawObject/bounds", "top"); diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index 40134d148ac9..abfc8694535c 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -866,11 +866,16 @@ void DomainMapper::lcl_attribute(Id nName, Value & val) //should be either LN_Value_doc_ST_Wrap_notBeside or LN_Value_doc_ST_Wrap_around or LN_Value_doc_ST_Wrap_auto OSL_ENSURE( sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_around || sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_notBeside || + sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_through || + sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_none || sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_auto, - "wrap not around, not_Beside or auto?"); + "wrap not around, not_Beside, through, none or auto?"); if( sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_around || + sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_through || sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_auto ) pParaProperties->SetWrap ( text::WrapTextMode_DYNAMIC ) ; + else if (sal::static_int_cast<Id>(nIntValue) == NS_ooxml::LN_Value_doc_ST_Wrap_none) + pParaProperties->SetWrap ( text::WrapTextMode_THROUGH ) ; else pParaProperties->SetWrap ( text::WrapTextMode_NONE ) ; } |