mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
69 lines
1.6 KiB
C++
69 lines
1.6 KiB
C++
#ifndef _SBITMAP_H
|
|
#define _SBITMAP_H
|
|
|
|
#include "STypes.h"
|
|
|
|
//-------------------------------------------------------------------------------------------------------------------------------
|
|
// SBitmap
|
|
//-------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
class SBitmap
|
|
{
|
|
public:
|
|
|
|
SBitmap(int nWidth, int nHeight, int nRowPad, SColorMode eMode, BOOL bAlpha, BOOL bTopDown = TRUE);
|
|
|
|
~SBitmap();
|
|
|
|
int GetWidth()
|
|
{
|
|
return m_nWidth;
|
|
}
|
|
int GetHeight()
|
|
{
|
|
return m_nHeight;
|
|
}
|
|
int GetStride()
|
|
{
|
|
return m_nStride;
|
|
}
|
|
int GetAlphaStride()
|
|
{
|
|
return m_nWidth;
|
|
}
|
|
SColorMode GetColorMode()
|
|
{
|
|
return m_eMode;
|
|
}
|
|
SColorPointer GetData()
|
|
{
|
|
return m_pData;
|
|
}
|
|
unsigned char *GetAlpha()
|
|
{
|
|
return m_pAlpha;
|
|
}
|
|
|
|
int WritePNMFile(wchar_t *wsFileName);
|
|
int WriteBMPFile(wchar_t *wsFileName);
|
|
int WriteJPGFile(wchar_t *wsFileName, wchar_t *wsTempFolder);
|
|
|
|
void GetPixel(int nX, int nY, SColorPointer pPixel);
|
|
unsigned char GetAlpha(int nX, int nY);
|
|
|
|
private:
|
|
|
|
int m_nWidth; // Øèðèíà êàðòèíêè
|
|
int m_nHeight; // Âûñîòà êàðòèíêè
|
|
|
|
int m_nStride; // Êîëè÷åñòâî áàéò ìåæäó íà÷àëîì îäíîé ñòðîêè è íà÷àëîì ñëåäóþùåé,
|
|
// åñëè çíà÷åíèå îòðèöàòåëüíîå, çíà÷èò êàðòèíêà ïåðâåðíóòàÿ (flip)
|
|
SColorMode m_eMode; // Color mode
|
|
SColorPointer m_pData; // Óêàçàòåëü íà íà÷àëî äàííûõ êàðòèíêè
|
|
unsigned char *m_pAlpha; // Óêàçàòåëü íà íà÷àëî äàííûõ àëüôà êàíàëà(íå çàâèñèò îò flip)
|
|
|
|
friend class SImage;
|
|
};
|
|
|
|
#endif /* _SBITMAP_H */
|