exbuffer.h

来自「Smartphone手机阅读软件」· C头文件 代码 · 共 65 行

H
65
字号
// ExBuffer.h: interface for the CExBuffer class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_EXBUFFER_H__288B120C_8461_4870_BBD2_C2E093AFA959__INCLUDED_)
#define AFX_EXBUFFER_H__288B120C_8461_4870_BBD2_C2E093AFA959__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "Public.h"
#define PRC_FILE_HEADER_LEN  78 // != sizeof(PRC_FILE_HEADER)

class CExBuffer  
{
public:
	BOOL LoadFile(UINT nType,LPCTSTR szFileName);
	VOID SetFontCtrl(BYTE byFontType ,BYTE byFontSize);

	typedef struct 
	{   //total len is 78
		char  szFileName[32];
		DWORD dwReserved1[7];  
		DWORD dwResourceType;
		DWORD dwCreatorID;	 
		DWORD dwReserved2[2];
		WORD  wRecords;
	}PRC_FILE_HEADER,*LPPRC_FILE_HEADER;

	enum
	{   //specifying the char format
		FORMAT_HTML = 0, // HTML format		
		FORMAT_TEXT,     // PLAIN TEXT format
		FORMAT_PRC       // PALM PRC/PDB format
	};
protected:
	int ConvertChar(int iLen, char *Buffer, int iPointer, char *Check, int iCheckLen);
	BOOL  FillLine(BYTE *szSource,DWORD &nLen);
	BOOL  LoadPrcFile(LPCTSTR szFileName);
	BOOL  LoadHtmlFile(LPCTSTR szHtmlFileName);
	BOOL  LoadTxtFile(LPCTSTR szTxtFileName);
	WORD  SwapWord(WORD wNumber);
	DWORD SwapLong(DWORD dwNumber);
	BOOL  DeCode(BYTE *szSource, DWORD& nLen);
	BOOL  Html2Txt(CHAR *szBuffer);
	BOOL  Html2Txt(LPCTSTR szHtmlFile, LPCTSTR szTxtFile);
public:
	CExBuffer();
	~CExBuffer();

public:
	int m_nMaxLinePerPage;
	int m_nStartLine,m_nEndLine;
	CSimpleArray<CString> m_pcLine;
	BOOL   m_FullScreen;
private:	
	RECT   m_rectWnd;	
	DWORD  m_dwMaxLineWidth;
	BYTE   m_byCurrentFontSize; //0,1,2
	BYTE   m_byCurrentFontType; //0,1,2,3
};

#endif // !defined(AFX_EXBUFFER_H__288B120C_8461_4870_BBD2_C2E093AFA959__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?