include/vcl/bitmap.hxx | 23 +++++++++++------------ vcl/opengl/scale.cxx | 4 ++-- vcl/qa/cppunit/graphicfilter/filters-test.cxx | 2 +- vcl/source/gdi/bitmap3.cxx | 2 ++ 4 files changed, 16 insertions(+), 15 deletions(-)
New commits: commit 9dc134a6df9255b4ca294cd2e9b88026624e6125 Author: LuboÅ¡ LuÅák <[email protected]> Date: Mon Dec 15 18:36:32 2014 +0100 do not hardcode what specific "generic" bitmap scaling operations use I.e. make it possible for the opengl backend to decide to use a different scaling algorithm. Change-Id: I36e76de071797129c7636b3048c93bc6e5d93aca diff --git a/include/vcl/bitmap.hxx b/include/vcl/bitmap.hxx index 80b76e4..26a221c 100644 --- a/include/vcl/bitmap.hxx +++ b/include/vcl/bitmap.hxx @@ -35,18 +35,17 @@ #define BMP_SCALE_NONE 0x00000000UL -#define BMP_SCALE_FAST 0x00000001UL -#define BMP_SCALE_INTERPOLATE 0x00000002UL -#define BMP_SCALE_SUPER 0x00000003UL -#define BMP_SCALE_LANCZOS 0x00000004UL -#define BMP_SCALE_BICUBIC 0x00000005UL -#define BMP_SCALE_BILINEAR 0x00000006UL -#define BMP_SCALE_BOX 0x00000007UL - -// Aliases, try to use these two (or BMP_SCALE_FAST/BMP_SCALE_NONE), -// use a specific algorithm only if you really need to. -#define BMP_SCALE_BESTQUALITY BMP_SCALE_LANCZOS -#define BMP_SCALE_DEFAULT BMP_SCALE_SUPER +// Try to preferably use these. +#define BMP_SCALE_DEFAULT 0x00000001UL +#define BMP_SCALE_FAST 0x00000002UL +#define BMP_SCALE_BESTQUALITY 0x00000003UL +// Specific algorithms, use only if you really need to. +#define BMP_SCALE_INTERPOLATE 0x00000004UL +#define BMP_SCALE_SUPER 0x00000005UL +#define BMP_SCALE_LANCZOS 0x00000006UL +#define BMP_SCALE_BICUBIC 0x00000007UL +#define BMP_SCALE_BILINEAR 0x00000008UL +#define BMP_SCALE_BOX 0x00000009UL #define BMP_DITHER_NONE 0x00000000UL diff --git a/vcl/opengl/scale.cxx b/vcl/opengl/scale.cxx index 4703c1f..01a9963 100644 --- a/vcl/opengl/scale.cxx +++ b/vcl/opengl/scale.cxx @@ -203,13 +203,13 @@ bool OpenGLSalBitmap::ImplScale( const double& rScaleX, const double& rScaleY, s { return ImplScaleFilter( rScaleX, rScaleY, GL_LINEAR ); } - else if( nScaleFlag == BMP_SCALE_SUPER ) + else if( nScaleFlag == BMP_SCALE_SUPER || nScaleFlag == BMP_SCALE_DEFAULT ) { const Lanczos3Kernel aKernel; return ImplScaleConvolution( rScaleX, rScaleY, aKernel ); } - else if( nScaleFlag == BMP_SCALE_LANCZOS ) + else if( nScaleFlag == BMP_SCALE_LANCZOS || nScaleFlag == BMP_SCALE_BESTQUALITY ) { const Lanczos3Kernel aKernel; diff --git a/vcl/qa/cppunit/graphicfilter/filters-test.cxx b/vcl/qa/cppunit/graphicfilter/filters-test.cxx index 48b1045..0b04dbf 100644 --- a/vcl/qa/cppunit/graphicfilter/filters-test.cxx +++ b/vcl/qa/cppunit/graphicfilter/filters-test.cxx @@ -62,7 +62,7 @@ bool VclFiltersTest::load(const OUString &, void VclFiltersTest::testScaling() { - for (unsigned int i = BMP_SCALE_FAST; i <= BMP_SCALE_BOX; i++) + for (unsigned int i = BMP_SCALE_NONE + 1; i <= BMP_SCALE_BOX; i++) { Bitmap aBitmap( Size( 413, 409 ), 24 ); BitmapEx aBitmapEx( aBitmap ); diff --git a/vcl/source/gdi/bitmap3.cxx b/vcl/source/gdi/bitmap3.cxx index 1a7e1cf..38816e4 100644 --- a/vcl/source/gdi/bitmap3.cxx +++ b/vcl/source/gdi/bitmap3.cxx @@ -927,6 +927,7 @@ bool Bitmap::Scale( const double& rScaleX, const double& rScaleY, sal_uInt32 nSc break; } case BMP_SCALE_SUPER: + case BMP_SCALE_DEFAULT: { if (GetSizePixel().Width() < 2 || GetSizePixel().Height() < 2) { @@ -941,6 +942,7 @@ bool Bitmap::Scale( const double& rScaleX, const double& rScaleY, sal_uInt32 nSc break; } case BMP_SCALE_LANCZOS : + case BMP_SCALE_BESTQUALITY: { const Lanczos3Kernel kernel;
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
