CartoType C++ API 8.8-7-gb35e4dc71
for Windows, Linux, Qt and other platforms supporting C++ development
Public Member Functions | Static Public Member Functions | List of all members
CartoTypeCore::Bitmap Class Reference

#include <cartotype_bitmap.h>

Inheritance diagram for CartoTypeCore::Bitmap:
CartoTypeCore::BitmapView

Public Member Functions

 Bitmap (BitmapType aType, int32_t aWidth, int32_t aHeight, int32_t aRowBytes=0, std::shared_ptr< CartoTypeCore::Palette > aPalette=nullptr)
 
 Bitmap (InputStream &aInputStream)
 
 Bitmap (const Bitmap &aOther)
 
 Bitmap (Bitmap &&aOther) noexcept
 
 Bitmap (const BitmapView &aOther)
 
Bitmapoperator= (const BitmapView &aOther)
 
Bitmapoperator= (Bitmap &&aOther)
 
std::vector< uint8_t > DetachData ()
 
- Public Member Functions inherited from CartoTypeCore::BitmapView
 BitmapView (BitmapType aType, uint8_t *aData, uint32_t aWidth, uint32_t aHeight, uint32_t aRowBytes, std::shared_ptr< Palette > aPalette=nullptr)
 
 BitmapView (const Bitmap &aBitmap)=delete
 
BitmapViewoperator= (const Bitmap &aBitmap)=delete
 
TColorFunction ColorFunction () const
 
Bitmap Copy (int32_t aExpansion=0) const
 
Bitmap Blur (bool aGaussian, double aWidth) const
 
Bitmap Palettize () const
 
Bitmap UnPalettize () const
 
Bitmap Trim (Rect &aBounds, bool aTrimLeft=true, bool aTrimRight=true, bool aTrimTop=true, bool aTrimBottom=true) const
 
Bitmap Clip (Rect aClip) const
 
Bitmap Clip (const MPath &aPath, Rect &aNewBounds) const
 
Result WritePng (OutputStream &aOutputStream, bool aPalettize) const
 
Result Write (OutputStream &aOutput) const
 
BitmapType Type () const
 
int32_t BitsPerPixel () const
 
const uint8_t * Data () const
 
uint8_t * Data ()
 
std::shared_ptr< CartoTypeCore::PalettePalette () const
 
void SetPalette (std::shared_ptr< CartoTypeCore::Palette > aPalette)
 
int32_t DataBytes () const
 
int32_t Width () const
 
int32_t Height () const
 
int32_t RowBytes () const
 
void Clear ()
 
void ClearToWhite ()
 
bool operator< (const BitmapView &aOther) const
 
bool operator== (const BitmapView &aOther) const
 

Static Public Member Functions

static Bitmap Read (Result &aError, InputStream &aInput)
 

Additional Inherited Members

- Public Types inherited from CartoTypeCore::BitmapView
using TColorFunction = Color(*)(const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
- Static Protected Member Functions inherited from CartoTypeCore::BitmapView
static Color Color1BitMono (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color8BitMono (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color8BitPalette (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color16BitMono (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color16BitColor (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color24BitColor (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color Color32BitColor (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
static Color ColorUnsupported (const BitmapView &aBitmap, uint32_t aX, uint32_t aY)
 
- Protected Attributes inherited from CartoTypeCore::BitmapView
uint8_t * iData = nullptr
 
std::shared_ptr< CartoTypeCore::PaletteiPalette
 
uint32_t iWidth = 0
 
uint32_t iHeight = 0
 
uint32_t iRowBytes = 0
 
BitmapType iType = BitmapType::A8
 

Detailed Description

A bitmap that owns its data.

Constructor & Destructor Documentation

◆ Bitmap() [1/5]

CartoTypeCore::Bitmap::Bitmap ( BitmapType  aType,
int32_t  aWidth,
int32_t  aHeight,
int32_t  aRowBytes = 0,
std::shared_ptr< CartoTypeCore::Palette aPalette = nullptr 
)

Creates a bitmap that owns its data. If aRowBytes is less than the minimum possible set the number of bytes per row to the minimum possible.

◆ Bitmap() [2/5]

CartoTypeCore::Bitmap::Bitmap ( InputStream aInputStream)
explicit

Creates a bitmap from a stream, starting at the current position. Supported source bitmap types: PNG and JPEG.

◆ Bitmap() [3/5]

CartoTypeCore::Bitmap::Bitmap ( const Bitmap aOther)

Creates a Bitmap by copying a Bitmap.

◆ Bitmap() [4/5]

CartoTypeCore::Bitmap::Bitmap ( Bitmap &&  aOther)
noexcept

Creates a Bitmap by moving data from another Bitmap.

◆ Bitmap() [5/5]

CartoTypeCore::Bitmap::Bitmap ( const BitmapView aOther)

Creates a Bitmap by copying a BitmapView.

Member Function Documentation

◆ DetachData()

std::vector< uint8_t > CartoTypeCore::Bitmap::DetachData ( )
inline

Detaches the data, transferring ownership to the caller.

◆ operator=() [1/2]

Bitmap & CartoTypeCore::Bitmap::operator= ( Bitmap &&  aOther)

The move assignment operator.

◆ operator=() [2/2]

Bitmap & CartoTypeCore::Bitmap::operator= ( const BitmapView aOther)

The assignment operator.

◆ Read()

Bitmap CartoTypeCore::Bitmap::Read ( Result aError,
InputStream aInput 
)
static

Reads a bitmap that was written by BitmapView::Write


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