45 if( pEraseTransparency )
46 Bitmap::Erase(
Color( *pEraseTransparency, *pEraseTransparency, *pEraseTransparency ) );
53 *
static_cast<Bitmap*
>(
this) = rBitmap;
70 *
static_cast<Bitmap*
>(
this) = rBitmap;
85 std::shared_ptr<SalBitmap> xImpBmp(
ImplGetSVData()->mpDefInst->CreateSalBitmap());
94 assert (pOtherAcc && pAcc && pOtherAcc->
GetBitCount() == 8 && pAcc->GetBitCount() == 8 &&
"cannot BlendWith this combination");
95 if (!(pOtherAcc && pAcc && pOtherAcc->
GetBitCount() == 8 && pAcc->GetBitCount() == 8))
97 SAL_WARN(
"vcl",
"cannot BlendWith this combination");
105 Scanline scanline = pAcc->GetScanline(
y );
110 const sal_uInt16 nGrey1 = *scanline;
111 const sal_uInt16 nGrey2 = *otherScanline;
112 *scanline =
static_cast<sal_uInt8>(nGrey1 + nGrey2 - nGrey1 * nGrey2 / 255);
130 if(0 == nHeight || 0 == nWidth)
137 if (0 != pAcc->GetColor(
y,
x).GetRed())
const sal_uInt8 * ConstScanline
AlphaMask & operator=(const Bitmap &rBitmap)
Bitmap const & GetBitmap() const
void BlendWith(const Bitmap &rOther)
void ReleaseAccess(BitmapReadAccess *pAccess)
virtual ~AlphaMask() override
SAL_DLLPRIVATE const Bitmap & ImplGetBitmap() const
SAL_DLLPRIVATE void ImplSetBitmap(const Bitmap &rBitmap)
void Erase(sal_uInt8 cTransparency)
tools::Long Height() const
tools::Long Width() const
sal_uInt16 GetBitCount() const
Scanline GetScanline(tools::Long nY) const
const std::shared_ptr< SalBitmap > & ImplGetSalBitmap() const
bool HasGreyPalette8Bit() const
SAL_DLLPRIVATE void ImplSetSalBitmap(const std::shared_ptr< SalBitmap > &xImpBmp)
bool Convert(BmpConversion eConversion)
Convert bitmap format.
static void ReleaseAccess(BitmapInfoAccess *pAccess)
bool Erase(const Color &rFillColor)
Fill the entire bitmap with the given color.
vcl::PixelFormat getPixelFormat() const
#define SAL_WARN_IF(condition, area, stream)
#define SAL_WARN(area, stream)
PixelFormat
Pixel format of the bitmap in bits per pixel.
constexpr sal_uInt16 pixelFormatBitCount(PixelFormat ePixelFormat)
ImplSVData * ImplGetSVData()