summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2017-12-04 09:13:06 +0100
committerSamuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>2017-12-04 16:18:06 +0100
commit5219c6eccb55874c8a8670f44c3f03558384f9b7 (patch)
treecdd12b7929fe9883496ee786a56e953b5e46588c
parentc6f3a5375a59f9982626f601897249398bab11bf (diff)
Related tdf#113696 Write fallback graphic for fodf files also
Change-Id: I2db10b6a3bf14837160a56813681ba40fa253447 Reviewed-on: https://gerrit.libreoffice.org/45802 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
-rw-r--r--xmloff/source/text/txtparae.cxx19
1 files changed, 12 insertions, 7 deletions
diff --git a/xmloff/source/text/txtparae.cxx b/xmloff/source/text/txtparae.cxx
index eaaf3ff0f2aa..932505961e75 100644
--- a/xmloff/source/text/txtparae.cxx
+++ b/xmloff/source/text/txtparae.cxx
@@ -3050,7 +3050,7 @@ void XMLTextParagraphExport::_exportTextGraphic(
SvXMLElementExport aElem(GetExport(), XML_NAMESPACE_DRAW, XML_FRAME, false, true);
// replacement graphic for backwards compatibility, but
- // only for SVG currently
+ // only for SVG and metafiles currently
OUString sReplacementOrigURL;
rPropSet->getPropertyValue( sReplacementGraphicURL ) >>= sReplacementOrigURL;
@@ -3110,15 +3110,20 @@ void XMLTextParagraphExport::_exportTextGraphic(
GetExport().AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE);
GetExport().AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED);
GetExport().AddAttribute(XML_NAMESPACE_XLINK, XML_ACTUATE, XML_ONLOAD);
+ }
- // xlink:href for replacement, only written for Svg content
- SvXMLElementExport aElement(GetExport(), XML_NAMESPACE_DRAW, XML_IMAGE, false, true);
+ uno::Reference<io::XInputStream> xInputStream(
+ GetExport().GetEmbeddedGraphicObjectStream(sReplacementOrigURL));
+ OUString aMimeType(
+ comphelper::GraphicMimeTypeHelper::GetMimeTypeForImageStream(xInputStream));
+ if (!aMimeType.isEmpty())
+ GetExport().AddAttribute(XML_NAMESPACE_LO_EXT, "mime-type", aMimeType);
- // optional office:binary-data
- GetExport().AddEmbeddedGraphicObjectAsBase64(sReplacementURL);
- }
- }
+ SvXMLElementExport aElement(GetExport(), XML_NAMESPACE_DRAW, XML_IMAGE, true, true);
+ // optional office:binary-data
+ GetExport().AddEmbeddedGraphicObjectAsBase64(sReplacementOrigURL);
+ }
// script:events
Reference<XEventsSupplier> xEventsSupp( rPropSet, UNO_QUERY );