summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@suse.cz>2012-08-14 13:51:45 +0200
committerMiklos Vajna <vmiklos@suse.cz>2012-08-14 16:31:45 +0200
commit6e4c10c1dcd7c7d6b464746495fc4e33a428b41b (patch)
tree6c6ed5598cf0955a4b18e92616454cf1f589c87e /sw
parent05d86fcdd9eafac6e337e2117502662688118ea0 (diff)
RTF export of fillBlip and fillOpacity shape properties
Change-Id: Ib2c10de54725e51ecbb3dc425ab6ca8e01a4c6ea
Diffstat (limited to 'sw')
-rw-r--r--sw/source/filter/ww8/rtfsdrexport.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/rtfsdrexport.cxx b/sw/source/filter/ww8/rtfsdrexport.cxx
index a377ef018b06..b75c94c27446 100644
--- a/sw/source/filter/ww8/rtfsdrexport.cxx
+++ b/sw/source/filter/ww8/rtfsdrexport.cxx
@@ -372,6 +372,19 @@ void RtfSdrExport::Commit( EscherPropertyContainer& rProps, const Rectangle& rRe
case ESCHER_Prop_fillType:
m_aShapeProps.insert(std::pair<OString,OString>(OString("fillType"), OString::valueOf(sal_Int32(it->nPropValue))));
break;
+ case ESCHER_Prop_fillOpacity:
+ m_aShapeProps.insert(std::pair<OString,OString>(OString("fillOpacity"), OString::valueOf(sal_Int32(it->nPropValue))));
+ break;
+ case ESCHER_Prop_fillBlip:
+ {
+ OStringBuffer aBuf;
+ aBuf.append('{').append(OOO_STRING_SVTOOLS_RTF_PICT).append(OOO_STRING_SVTOOLS_RTF_PNGBLIP).append(RtfExport::sNewLine);
+ int nHeaderSize = 25; // The first bytes are WW8-specific, we're only interested in the PNG
+ aBuf.append(RtfAttributeOutput::WriteHex(it->pBuf + nHeaderSize, it->nPropSize - nHeaderSize));
+ aBuf.append('}');
+ m_aShapeProps.insert(std::pair<OString,OString>(OString("fillBlip"), aBuf.makeStringAndClear()));
+ }
+ break;
default:
SAL_INFO("sw.rtf", OSL_THIS_FUNC << ": unhandled property: " << nId << " (value: " << it->nPropValue << ")");
break;