diff options
author | Caolán McNamara <caolanm@redhat.com> | 2019-09-05 17:31:01 +0100 |
---|---|---|
committer | Michael Stahl <Michael.Stahl@cib.de> | 2019-09-17 12:21:40 +0200 |
commit | 09470e24332f6216900419cc1e76421992ae6b73 (patch) | |
tree | ea41c67628c4f844a58f15dd6d6c43825b597956 /include | |
parent | tdf#127410 Reliably copy doc print settings for MM (diff) | |
download | core-09470e24332f6216900419cc1e76421992ae6b73.tar.gz core-09470e24332f6216900419cc1e76421992ae6b73.zip |
Resolves: tdf#125461 32bit XImage is not premultiplied
regressions since...
commit 86ea64f216819696cd86d1926aff0a138ace2baf
Date: Fri Feb 15 13:14:32 2019 +0100
Support for native 32bit Bitmap in VCL and SVP (cairo) backend
32bit cairo data is premultiplied with alpha but not so 32bit XImages which
don't have alpha at all, so restore the pre-change 32bit accessors, which
effectively ignore their alpha channel, beside the post-change ones and
toggle which one to use depending on the back end capability
Change-Id: Ibfec18b4ddb6e93ab19e44e7127e7a16982e2f49
Reviewed-on: https://gerrit.libreoffice.org/78666
Tested-by: Jenkins
Tested-by: Xisco Faulí <xiscofauli@libreoffice.org>
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/vcl/bitmapaccess.hxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/vcl/bitmapaccess.hxx b/include/vcl/bitmapaccess.hxx index e1adbf10c4c1..ad478df19591 100644 --- a/include/vcl/bitmapaccess.hxx +++ b/include/vcl/bitmapaccess.hxx @@ -252,9 +252,13 @@ public: static BitmapColor GetPixelForN24BitTcBgr(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN24BitTcRgb(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN32BitTcAbgr(ConstScanline pScanline, long nX, const ColorMask& rMask); + static BitmapColor GetPixelForN32BitTcXbgr(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN32BitTcArgb(ConstScanline pScanline, long nX, const ColorMask& rMask); + static BitmapColor GetPixelForN32BitTcXrgb(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN32BitTcBgra(ConstScanline pScanline, long nX, const ColorMask& rMask); + static BitmapColor GetPixelForN32BitTcBgrx(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN32BitTcRgba(ConstScanline pScanline, long nX, const ColorMask& rMask); + static BitmapColor GetPixelForN32BitTcRgbx(ConstScanline pScanline, long nX, const ColorMask& rMask); static BitmapColor GetPixelForN32BitTcMask(ConstScanline pScanline, long nX, const ColorMask& rMask); static void SetPixelForN1BitMsbPal(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); @@ -268,9 +272,13 @@ public: static void SetPixelForN24BitTcBgr(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN24BitTcRgb(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN32BitTcAbgr(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); + static void SetPixelForN32BitTcXbgr(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN32BitTcArgb(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); + static void SetPixelForN32BitTcXrgb(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN32BitTcBgra(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); + static void SetPixelForN32BitTcBgrx(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN32BitTcRgba(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); + static void SetPixelForN32BitTcRgbx(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); static void SetPixelForN32BitTcMask(Scanline pScanline, long nX, const BitmapColor& rBitmapColor, const ColorMask& rMask); }; |