diff options
author | Attila Szűcs <szucs.attila3@nisz.hu> | 2021-02-03 16:50:30 +0100 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2021-02-15 11:33:10 +0100 |
commit | b35f48d806f9e5ec689eda3828f1e4503644873b (patch) | |
tree | adaf0fb3291aa1455a544a33d6a3dbe09afb191d /writerfilter | |
parent | 76483d1348792a3d1c4c995ef0132ac79dfbc90f (diff) |
tdf#74367 DOCX: fix page margins imported as border padding
Trying to import non-existing "none" borders of w:pgBorders
zeroed page margins, removing their values to border padding.
Note: according to OOXML standard 2.6.10. pgBorders (Page
Borders), "nil" should be treated the same.
Co-authored-by: Tibor Nagy (NISZ)
Change-Id: Ibbc9375b2f8b3daf7b4bdea84e078676ce588586
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110396
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/BorderHandler.hxx | 1 | ||||
-rw-r--r-- | writerfilter/source/dmapper/PageBordersHandler.cxx | 5 |
2 files changed, 5 insertions, 1 deletions
diff --git a/writerfilter/source/dmapper/BorderHandler.hxx b/writerfilter/source/dmapper/BorderHandler.hxx index 9e8aa7a62a90..1261416760b3 100644 --- a/writerfilter/source/dmapper/BorderHandler.hxx +++ b/writerfilter/source/dmapper/BorderHandler.hxx @@ -69,6 +69,7 @@ public: PropertyMapPtr getProperties(); css::table::BorderLine2 getBorderLine(); sal_Int32 getLineDistance() const { return m_nLineDistance;} + sal_Int32 getLineType() const { return m_nLineType;} bool getShadow() const { return m_bShadow;} void enableInteropGrabBag(const OUString& aName); css::beans::PropertyValue getInteropGrabBag(const OUString& aName = OUString()); diff --git a/writerfilter/source/dmapper/PageBordersHandler.cxx b/writerfilter/source/dmapper/PageBordersHandler.cxx index d6a0fdd1f502..89548eb351ee 100644 --- a/writerfilter/source/dmapper/PageBordersHandler.cxx +++ b/writerfilter/source/dmapper/PageBordersHandler.cxx @@ -119,7 +119,10 @@ void PageBordersHandler::lcl_sprm( Sprm& rSprm ) aPgBorder.m_nDistance = pBorderHandler->getLineDistance( ); aPgBorder.m_ePos = ePos; aPgBorder.m_bShadow = pBorderHandler->getShadow(); - m_aBorders.push_back( aPgBorder ); + if (pBorderHandler->getLineType() != NS_ooxml::LN_Value_ST_Border_none) + { + m_aBorders.push_back( aPgBorder ); + } } } break; |