summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vcl/source/filter/graphicfilter.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/vcl/source/filter/graphicfilter.cxx b/vcl/source/filter/graphicfilter.cxx
index b30b8afbe130..e7f86486d792 100644
--- a/vcl/source/filter/graphicfilter.cxx
+++ b/vcl/source/filter/graphicfilter.cxx
@@ -2269,6 +2269,7 @@ IMPL_LINK( GraphicFilter, FilterCallback, ConvertData&, rData, bool )
sal_uInt16 nFormat = GRFILTER_FORMAT_DONTKNOW;
OString aShortName;
+ css::uno::Sequence< css::beans::PropertyValue > aFilterData;
switch( rData.mnFormat )
{
case ConvertDataFormat::BMP: aShortName = BMP_SHORTNAME; break;
@@ -2295,8 +2296,17 @@ IMPL_LINK( GraphicFilter, FilterCallback, ConvertData&, rData, bool )
else if( !aShortName.isEmpty() )
{
// Export
+#ifdef IOS
+ if (aShortName == PNG_SHORTNAME)
+ {
+ aFilterData.realloc(aFilterData.getLength() + 1);
+ aFilterData[aFilterData.getLength() - 1].Name = "Compression";
+ // We "know" that this gets passed to zlib's deflateInit2_(). 1 means best speed.
+ aFilterData[aFilterData.getLength() - 1].Value <<= 1;
+ }
+#endif
nFormat = GetExportFormatNumberForShortName( OStringToOUString(aShortName, RTL_TEXTENCODING_UTF8) );
- bRet = ExportGraphic( rData.maGraphic, OUString(), rData.mrStm, nFormat ) == ERRCODE_NONE;
+ bRet = ExportGraphic( rData.maGraphic, OUString(), rData.mrStm, nFormat, &aFilterData ) == ERRCODE_NONE;
}
return bRet;