LibreOffice Module sd (master) 1
Classes | Public Member Functions | List of all members
sd::slidesorter::cache::PngCompression Class Reference

Compress preview bitmaps using the PNG format. More...

#include <SlsBitmapCompressor.hxx>

Inheritance diagram for sd::slidesorter::cache::PngCompression:
[legend]
Collaboration diagram for sd::slidesorter::cache::PngCompression:
[legend]

Classes

class  PngReplacement
 

Public Member Functions

virtual ~PngCompression ()
 
virtual std::shared_ptr< BitmapReplacementCompress (const BitmapEx &rBitmap) const override
 Compress the given bitmap into a replacement format that is specific to the compressor class. More...
 
virtual BitmapEx Decompress (const BitmapReplacement &rBitmapData) const override
 Decompress the given replacement data into a preview bitmap. More...
 
virtual bool IsLossless () const override
 Return whether the compression and decompression is lossless. More...
 
virtual std::shared_ptr< BitmapReplacementCompress (const BitmapEx &rBitmap) const =0
 Compress the given bitmap into a replacement format that is specific to the compressor class. More...
 
virtual BitmapEx Decompress (const BitmapReplacement &rBitmapData) const =0
 Decompress the given replacement data into a preview bitmap. More...
 
virtual bool IsLossless () const =0
 Return whether the compression and decompression is lossless. More...
 

Additional Inherited Members

- Protected Member Functions inherited from sd::slidesorter::cache::BitmapCompressor
 ~BitmapCompressor ()
 

Detailed Description

Compress preview bitmaps using the PNG format.

This compressor is lossless.

Definition at line 125 of file SlsBitmapCompressor.hxx.

Constructor & Destructor Documentation

◆ ~PngCompression()

virtual sd::slidesorter::cache::PngCompression::~PngCompression ( )
inlinevirtual

Definition at line 130 of file SlsBitmapCompressor.hxx.

Member Function Documentation

◆ Compress()

std::shared_ptr< BitmapReplacement > sd::slidesorter::cache::PngCompression::Compress ( const BitmapEx rBitmap) const
overridevirtual

Compress the given bitmap into a replacement format that is specific to the compressor class.

Implements sd::slidesorter::cache::BitmapCompressor.

Definition at line 161 of file SlsBitmapCompressor.cxx.

References SvMemoryStream::GetData(), SvStream::Tell(), and vcl::PngImageWriter::write().

◆ Decompress()

BitmapEx sd::slidesorter::cache::PngCompression::Decompress ( const BitmapReplacement rBitmapData) const
overridevirtual

Decompress the given replacement data into a preview bitmap.

Depending on the compression technique the returned bitmap may differ from the original bitmap given to the Compress() method. It may even of the wrong size or empty or the NULL pointer. It is the task of the caller to create a new preview bitmap if the returned one is not as desired.

Implements sd::slidesorter::cache::BitmapCompressor.

Definition at line 175 of file SlsBitmapCompressor.cxx.

References pData, and vcl::PngImageReader::read().

◆ IsLossless()

bool sd::slidesorter::cache::PngCompression::IsLossless ( ) const
overridevirtual

Return whether the compression and decompression is lossless.

This value is used by the caller of Decompress() to decide whether to use the returned bitmap as is or if a new preview has to be created.

Implements sd::slidesorter::cache::BitmapCompressor.

Definition at line 190 of file SlsBitmapCompressor.cxx.


The documentation for this class was generated from the following files: