Files
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

86 lines
2.0 KiB
C++

//-------------------------------------------------------------------------------------------------------+
// Copyright (C), 1998-2007, SH Software Co. Ltd.
// = FileName : CImageDC 类
// = Version : ver2.0
// = Author : zjq
// = CreateDate : 2002-09-09
// = Description: CImageDC 声明
// = Maintainers:
//
//-------------------------------------------------------------------------------------------------------+
#ifndef _IMAGEDRAWDC_H_
#define _IMAGEDRAWDC_H_
#ifndef _INC_DIBAPI
#include "dibapi.h"
#endif
#ifndef _XIMAGEBUFLIST_H_
#include "XImageBufList.h"
#endif
class GEOAPI CImageDC
{
public:
CImageDC(CDC *pDC, const CRect &rect, COLORREF bkcolor = RGB(0,0,0));
CImageDC();
virtual ~CImageDC();
enum ImageType
{
IT_NONE = 0,
IT_BITMAP = 1,
IT_SLIDE = 2
};
void InitDC(CDC *pDC, const CRect &rect, COLORREF bkcolor = RGB(0,0,0));
void SetAutoScale(BOOL bAuto);
void SetUniformScale(BOOL bTrue);
void GetRectDC(CRect &rectDC) const;
void SetRectDC(const CRect &rect);
void SetDC(CDC *pDc);
void SetRotation(double nRot);
void SetBackColor(COLORREF co);
void SetHighlight(BOOL bTrue);
BOOL PaintImageOnlyNormal(const TCHAR* pszImageFile);
BOOL PaintImageNormal(const TCHAR* pszImageFile);
BOOL GetImageSize(CSize &sizeImage) const;
COLORREF GetBkColor();
BOOL PaintDIB(HDIB hDib);
BOOL PaintJpeg(const TCHAR *pJpgFile);
BOOL PaintImage(const TCHAR *pszImageFile);
BOOL PaintImageOnly(const TCHAR *pszImageFile);
BOOL PaintSlide(const TCHAR *pszSlideFile);
BOOL PaintBitmap(CBitmap &bmp);
void Fill(COLORREF cr);
BOOL Redraw();
BOOL IsImageLoaded();
BOOL IsHighlight() const;
protected:
BOOL PaintImage();
BOOL PaintSlide();
protected:
double m_nRotation;
BOOL m_bAutoScale; //是否自动缩放
BOOL m_bUniformScale;
COLORREF m_bkColor;
CDC *m_pDC;
CRect m_rectDC;
HDIB m_hDIB;
CPalette *m_palDIB;
ImageType m_nIT;
XImageBufList m_slide;
BOOL m_bHighlight; //是否加亮显示
};
#endif