summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorAttila Szűcs <szucs.attila3@nisz.hu>2021-02-03 16:50:30 +0100
committerLászló Németh <nemeth@numbertext.org>2021-02-15 11:33:10 +0100
commitb35f48d806f9e5ec689eda3828f1e4503644873b (patch)
treeadaf0fb3291aa1455a544a33d6a3dbe09afb191d /writerfilter
parent76483d1348792a3d1c4c995ef0132ac79dfbc90f (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.hxx1
-rw-r--r--writerfilter/source/dmapper/PageBordersHandler.cxx5
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;