sw/qa/extras/htmlexport/htmlexport.cxx | 31 ++++++++++++++++++++++++++----- sw/source/filter/html/htmlflywriter.cxx | 20 ++++++++++---------- 2 files changed, 36 insertions(+), 15 deletions(-)
New commits: commit 587d6e13df7bb9c8f78ce605ebb8f8fd34b85a2c Author: Jan Holesovsky <ke...@collabora.com> Date: Fri Jul 28 14:15:07 2017 +0200 sw htmlexport: Avoid unnecessary conversion to base64 + unit tests. Change-Id: Ifdd86590f4258c84006f7ca94ea06058e600db1e diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx b/sw/qa/extras/htmlexport/htmlexport.cxx index 63435cee780a..1ea03e880de7 100644 --- a/sw/qa/extras/htmlexport/htmlexport.cxx +++ b/sw/qa/extras/htmlexport/htmlexport.cxx @@ -46,6 +46,8 @@ private: { if (getTestName().indexOf("SkipImages") != -1) setFilterOptions("SkipImages"); + else if (getTestName().indexOf("EmbedImages") != -1) + setFilterOptions("EmbedImages"); else setFilterOptions(""); @@ -285,6 +287,25 @@ DECLARE_HTMLEXPORT_TEST(testExtbChars, "extb.html") CPPUNIT_ASSERT_EQUAL(aExpected, xTextRange2->getString()); } +DECLARE_HTMLEXPORT_TEST(testNormalImageExport, "textAndImage.docx") +{ + htmlDocPtr pDoc = parseHtml(maTempFile); + CPPUNIT_ASSERT(pDoc); + + assertXPath(pDoc, "/html/body", 1); + OUString imgSrc = getXPath(pDoc, "/html/body/p/img", "src"); + CPPUNIT_ASSERT(imgSrc.endsWith(".png")); +} + +DECLARE_HTMLEXPORT_TEST(testEmbedImagesEnabled, "textAndImage.docx") +{ + htmlDocPtr pDoc = parseHtml(maTempFile); + CPPUNIT_ASSERT(pDoc); + + assertXPath(pDoc, "/html/body", 1); + assertXPath(pDoc, "/html/body/p/img", "src", "data:image/png;base64,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"); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/filter/html/htmlflywriter.cxx b/sw/source/filter/html/htmlflywriter.cxx index 725d4db2c2fd..b02c441a31e3 100644 --- a/sw/source/filter/html/htmlflywriter.cxx +++ b/sw/source/filter/html/htmlflywriter.cxx @@ -1358,19 +1358,19 @@ Writer& OutHTML_Image( Writer& rWrt, const SwFrameFormat &rFrameFormat, aHtml.start(OOO_STRING_SVTOOLS_HTML_image); - OUString aGraphicInBase64; - if ( !XOutBitmap::GraphicToBase64(rGraphic, aGraphicInBase64) ) - { - rHTMLWrt.m_nWarn = ErrCode(WARN_SWG_POOR_LOAD | WARN_SW_WRITE_BASE); - } - OStringBuffer sBuffer; if(rHTMLWrt.mbEmbedImages) { - sBuffer.append(OOO_STRING_SVTOOLS_HTML_O_data); - sBuffer.append(":"); - sBuffer.append(OUStringToOString(aGraphicInBase64, RTL_TEXTENCODING_UTF8)); - aHtml.attribute(OOO_STRING_SVTOOLS_HTML_O_src, sBuffer.makeStringAndClear().getStr()); + OUString aGraphicInBase64; + if (XOutBitmap::GraphicToBase64(rGraphic, aGraphicInBase64)) + { + sBuffer.append(OOO_STRING_SVTOOLS_HTML_O_data); + sBuffer.append(":"); + sBuffer.append(OUStringToOString(aGraphicInBase64, RTL_TEXTENCODING_UTF8)); + aHtml.attribute(OOO_STRING_SVTOOLS_HTML_O_src, sBuffer.makeStringAndClear().getStr()); + } + else + rHTMLWrt.m_nWarn = ErrCode(WARN_SWG_POOR_LOAD | WARN_SW_WRITE_BASE); } else { commit 74c8d4a8128056a35fb2c67b7f663b259665e193 Author: Jan Holesovsky <ke...@collabora.com> Date: Fri Jul 28 13:58:29 2017 +0200 sw htmlexport: Consistent naming in the test. Change-Id: I608b818063f3ac66c6b36f9f8d221a54bfe1be24 diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx b/sw/qa/extras/htmlexport/htmlexport.cxx index c28d1ec4b997..63435cee780a 100644 --- a/sw/qa/extras/htmlexport/htmlexport.cxx +++ b/sw/qa/extras/htmlexport/htmlexport.cxx @@ -44,7 +44,7 @@ private: virtual std::unique_ptr<Resetter> preTest(const char* filename) override { - if (getTestName().indexOf("SkipImage") != -1) + if (getTestName().indexOf("SkipImages") != -1) setFilterOptions("SkipImages"); else setFilterOptions(""); @@ -138,7 +138,7 @@ DECLARE_HTMLEXPORT_TEST(testExportOfImages, "textAndImage.docx") assertXPath(pDoc, "/html/body/p/img", 1); } -DECLARE_HTMLEXPORT_TEST(testExportOfImagesWithSkipImageEnabled, "textAndImage.docx") +DECLARE_HTMLEXPORT_TEST(testExportOfImagesWithSkipImagesEnabled, "textAndImage.docx") { htmlDocPtr pDoc = parseHtml(maTempFile); CPPUNIT_ASSERT(pDoc); @@ -147,7 +147,7 @@ DECLARE_HTMLEXPORT_TEST(testExportOfImagesWithSkipImageEnabled, "textAndImage.do assertXPath(pDoc, "/html/body/p/img", 0); } -DECLARE_HTMLEXPORT_TEST(testSkipImageEmbedded, "skipimage-embedded.doc") +DECLARE_HTMLEXPORT_TEST(testSkipImagesEmbedded, "skipimage-embedded.doc") { // Embedded spreadsheet was exported as image, so content was lost. Make // sure it's exported as HTML instead. @@ -162,9 +162,9 @@ DECLARE_HTMLEXPORT_TEST(testSkipImageEmbedded, "skipimage-embedded.doc") assertXPath(pDoc, "//span/table", 1); } -DECLARE_HTMLEXPORT_TEST(testSkipImageEmbeddedDocument, "skipimage-embedded-document.docx") +DECLARE_HTMLEXPORT_TEST(testSkipImagesEmbeddedDocument, "skipimage-embedded-document.docx") { - // Similar to testSkipImageEmbedded, but with an embedded Writer object, + // Similar to testSkipImagesEmbedded, but with an embedded Writer object, // not a Calc one, and this time OOXML, not WW8. htmlDocPtr pDoc = parseHtml(maTempFile); CPPUNIT_ASSERT(pDoc); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits