summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Cecchetti <marco.cecchetti@collabora.com>2016-11-25 10:23:31 +0100
committerMarco Cecchetti <mrcekets@gmail.com>2016-11-30 11:53:00 +0000
commit1fd5c8080c47e75fff4aa377540ced29142da146 (patch)
tree678d2a7c0fdab20b23e48c57827d74cb8658b167
parent4940d1a24a8b0f836def0b603094686e281d3098 (diff)
tdf#101458 - check PNG for adequate compression
Change-Id: I7131d3b721ebb4d47b0bb43f09fcb9767f8ac6d8 Reviewed-on: https://gerrit.libreoffice.org/31190 Reviewed-by: Marco Cecchetti <mrcekets@gmail.com> Tested-by: Marco Cecchetti <mrcekets@gmail.com> (cherry picked from commit d96781383747299443f61e027285d54ffd5bc5c8) Reviewed-on: https://gerrit.libreoffice.org/31412
-rw-r--r--vcl/source/gdi/pdfextoutdevdata.cxx7
1 files changed, 4 insertions, 3 deletions
diff --git a/vcl/source/gdi/pdfextoutdevdata.cxx b/vcl/source/gdi/pdfextoutdevdata.cxx
index 1a58c90a73dc..811d61849738 100644
--- a/vcl/source/gdi/pdfextoutdevdata.cxx
+++ b/vcl/source/gdi/pdfextoutdevdata.cxx
@@ -420,9 +420,10 @@ bool PageSyncData::PlaySyncPageAct( PDFWriter& rWriter, sal_uInt32& rCurGDIMtfAc
if ( !mbGroupIgnoreGDIMtfActions )
mCurrentGraphic = rGraphic;
}
- else if ( eType == GFX_LINK_TYPE_NATIVE_PNG )
+ else if ( eType == GFX_LINK_TYPE_NATIVE_PNG && mParaRects.size() >= 2 )
{
- mCurrentGraphic = rGraphic;
+ if ( rOutDevData.HasAdequateCompression(rGraphic, mParaRects[0], mParaRects[1]) )
+ mCurrentGraphic = rGraphic;
}
}
break;
@@ -805,7 +806,7 @@ bool PDFExtOutDevData::HasAdequateCompression( const Graphic &rGraphic,
{
bool bReduceResolution = false;
- assert( rGraphic.IsLink() && rGraphic.GetLink().GetType() == GFX_LINK_TYPE_NATIVE_JPG );
+ assert( rGraphic.IsLink() && (rGraphic.GetLink().GetType() == GFX_LINK_TYPE_NATIVE_JPG || rGraphic.GetLink().GetType() == GFX_LINK_TYPE_NATIVE_PNG));
// small items better off as PNG anyway
if ( rGraphic.GetSizePixel().Width() < 32 &&