47 return std::make_shared<DummyReplacement>(rBitmap);
64 return std::shared_ptr<BitmapReplacement>();
99 return maPreview.GetSizeBytes();
105 auto pResult = std::make_shared<ResolutionReducedReplacement>();
106 pResult->maPreview = rBitmap;
108 pResult->maOriginalSize = aSize;
127 aResult =
pData->maPreview;
153 delete []
static_cast<char*
>(mpData);
165 aWriter.
write(rBitmap);
167 auto pResult = std::make_shared<PngReplacement>();
168 pResult->mnDataSize = aStream.
Tell();
169 pResult->mpData =
new char[pResult->mnDataSize];
170 memcpy(pResult->mpData, aStream.
GetData(), pResult->mnDataSize);
180 if (
pData !=
nullptr)
184 aResult = aReader.
read().GetBitmap();
sal_Int64 GetSizeBytes() const
bool Scale(const Size &rNewSize, BmpScaleFlag nScaleFlag=BmpScaleFlag::Default)
const Size & GetSizePixel() const
constexpr tools::Long Height() const
constexpr tools::Long Width() const
Interface for preview bitmap replacements.
virtual BitmapEx Decompress(const BitmapReplacement &rBitmapData) const override
Decompress the given replacement data into a preview bitmap.
virtual bool IsLossless() const override
Return whether the compression and decompression is lossless.
virtual std::shared_ptr< BitmapReplacement > Compress(const BitmapEx &rBitmap) const override
Compress the given bitmap into a replacement format that is specific to the compressor class.
This dummy replacement simply stores a shared pointer to the original preview bitmap.
DummyReplacement(const BitmapEx &rPreview)
virtual ~DummyReplacement()
virtual sal_Int32 GetMemorySize() const override
virtual bool IsLossless() const override
Return whether the compression and decompression is lossless.
virtual BitmapEx Decompress(const BitmapReplacement &rBitmapData) const override
Decompress the given replacement data into a preview bitmap.
virtual std::shared_ptr< BitmapReplacement > Compress(const BitmapEx &rpBitmap) const override
Compress the given bitmap into a replacement format that is specific to the compressor class.
virtual ~PngReplacement()
virtual sal_Int32 GetMemorySize() const override
virtual BitmapEx Decompress(const BitmapReplacement &rBitmapData) const override
Decompress the given replacement data into a preview bitmap.
virtual std::shared_ptr< BitmapReplacement > Compress(const BitmapEx &rBitmap) const override
Compress the given bitmap into a replacement format that is specific to the compressor class.
virtual bool IsLossless() const override
Return whether the compression and decompression is lossless.
Store a scaled down bitmap together with the original size.
virtual sal_Int32 GetMemorySize() const override
virtual ~ResolutionReducedReplacement()
virtual BitmapEx Decompress(const BitmapReplacement &rBitmapData) const override
Scale the replacement bitmap up to the original size.
static const sal_Int32 mnWidth
virtual bool IsLossless() const override
Return whether the compression and decompression is lossless.
virtual std::shared_ptr< BitmapReplacement > Compress(const BitmapEx &rpBitmap) const override
Compress the given bitmap into a replacement format that is specific to the compressor class.
bool read(BitmapEx &rBitmap)
bool write(const BitmapEx &rBitmap)
std::unique_ptr< sal_Int32[]> pData