?? bmpcompressdlg.h
字號:
// BmpCompressDlg.h : header file
//
#if !defined(AFX_BMPCOMPRESSDLG_H__F2C6A525_1ED1_4C6B_9A62_72C6A77151E3__INCLUDED_)
#define AFX_BMPCOMPRESSDLG_H__F2C6A525_1ED1_4C6B_9A62_72C6A77151E3__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
/////////////////////////////////////////////////////////////////////////////
// CBmpCompressDlg dialog
#include "Dib.h"
class CBmpCompressDlg : public CDialog
{
// Construction
public:
CBmpCompressDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CBmpCompressDlg)
enum { IDD = IDD_BMPCOMPRESS_DIALOG };
CSliderCtrl m_scale;
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CBmpCompressDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
// char strFileName[256];
// Generated message map functions
//{{AFX_MSG(CBmpCompressDlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnLoad();
afx_msg void OnCompress();
afx_msg void OnDecompress();
afx_msg void OnOutofmemoryScaleDisplayBMP(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnReleasedcaptureScale(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnDisplay();//顯示位圖
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
public:
CPalette * CreateBitmpPalette(CDib * pBitmap); //創建調色板
void OnDrawBMP(); //顯示位圖圖片
void OnHideBMP();//隱藏位圖
void OnDrawTEXT(CString &strTitle); //顯示文件信息
void OnUpdateClient(int nIDDlgItem);//刷新客戶區
BOOL CompressBMP(CFile & dibfile);//壓縮位圖
BOOL DeCompressBmp(CFile & dibfile);//解壓縮成位圖
private:
CPalette *m_hPalette;
CDib m_Dib;
CFile m_CompressFile;//壓縮后的文件
char m_compressionRatio[10];//文件壓縮比
float m_ratio;//圖像顯示比
CString m_filename;//顯示的文件名
UINT m_bfsize;//顯示得文件大小
UINT m_numberofcolor;//顯示的顏色位數
};
//DAT文件頭結構
typedef struct{
BYTE bManufacturer;
BYTE bVersion;
WORD wWidth;
WORD wHeight;
UINT numberOfColor;
DWORD biSizeImage;//圖像實際大小
UINT iWay;//壓縮的掃描方式(iWay=0--按行,iWay=1--按列,iWay=2--按三角)
BYTE identify;//游程標志
} DATHEADER;
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_BMPCOMPRESSDLG_H__F2C6A525_1ED1_4C6B_9A62_72C6A77151E3__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -