summaryrefslogtreecommitdiff
path: root/writerfilter
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2013-11-06 15:11:05 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2013-11-06 16:53:55 +0100
commiteb3942a24918e9537c85cc79a405fff8c167d456 (patch)
tree15a394bb662c062511a3276cf39cc3d380ef6730 /writerfilter
parente2790597d9cd534321bf95cb72dcad13e405cc47 (diff)
DOCX export of para style's qFormat, rsid and friends
Change-Id: I4ed35f2b497fec96d012303001d4861768daef6a
Diffstat (limited to 'writerfilter')
-rw-r--r--writerfilter/source/dmapper/StyleSheetTable.cxx11
1 files changed, 9 insertions, 2 deletions
diff --git a/writerfilter/source/dmapper/StyleSheetTable.cxx b/writerfilter/source/dmapper/StyleSheetTable.cxx
index b60e667af21a..85626e1d4b25 100644
--- a/writerfilter/source/dmapper/StyleSheetTable.cxx
+++ b/writerfilter/source/dmapper/StyleSheetTable.cxx
@@ -41,6 +41,7 @@
#include <map>
#include <stdio.h>
#include <rtl/ustrbuf.hxx>
+#include <comphelper/string.hxx>
#include <dmapperLoggers.hxx>
@@ -621,8 +622,14 @@ void StyleSheetTable::lcl_sprm(Sprm & rSprm)
beans::PropertyValue aValue;
if (nSprmId == NS_ooxml::LN_CT_Style_rsid)
{
+ // We want the rsid as a hex string, but always with the length of 8.
+ OUStringBuffer aBuf = OUString::number(nIntValue, 16);
+ OUStringBuffer aStr;
+ comphelper::string::padToLength(aStr, 8 - aBuf.getLength(), '0');
+ aStr.append(aBuf.getStr());
+
aValue.Name = "rsid";
- aValue.Value = uno::makeAny(nIntValue);
+ aValue.Value = uno::makeAny(aStr.makeStringAndClear());
}
else if (nSprmId == NS_ooxml::LN_CT_Style_qFormat)
aValue.Name = "qFormat";
@@ -633,7 +640,7 @@ void StyleSheetTable::lcl_sprm(Sprm & rSprm)
else
{
aValue.Name = "uiPriority";
- aValue.Value = uno::makeAny(nIntValue);
+ aValue.Value = uno::makeAny(OUString::number(nIntValue));
}
pEntry->AppendInteropGrabBag(aValue);
}