You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
2.0 KiB
C

1 month ago
//////////////////////////////////////////////////////////////////////////////
//<2F>ļ<EFBFBD> Text.h
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
//
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2005-12-07
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include ".\pointnamerect.h"
#include "TextFlags.h"
class AFX_EXT_CLASS CText : public CTextFlags, public CPointNameRect
{
public:
CText(void);
virtual ~CText(void);
void Serialize(CArchive& ar, const short &ver) override;
virtual int Read(CFile& fr, const short &ver);
virtual void Write(CFile& fw, const short &ver);
virtual void WriteDML(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadDML(CFile &fr, const short &ver);
virtual void WritePCG(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadPCG(CFile &fr, const short &ver);
virtual void WritePCG2(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadPCG2(CFile &fr, const short &ver);
int ReadFontPCG2(CFile &fr, const short &ver, CXmlParse& xp);
virtual CRect8 GetRect(void);
virtual bool GetRange(CRect8& range);
virtual BOOL IsInRange(CRect8& range);
virtual void GetRange(CPoint3D& minPoint, CPoint3D& maxPoint);
virtual void ExchangeXY(void);
virtual void ExchangeXY(void* pProjection); //ת<><D7AA><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>ͶӰ<CDB6><D3B0><EFBFBD><EFBFBD>,CPrljectio* pProjection
virtual void Rotate(double xs, double ys, double angle);
CSize LineCount(); //cx<63><78>Ϊһ<CEAA>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>cy<63><79>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
void Aligns(CRect8& range);
int GetLineString(int nBeginIndex, CString& strLine); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>nBeginIndex<65><78>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD>س<EFBFBD><D8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CPoint2D GetLinePoint(int nLine,CSize count); //<2F><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EAA3AC>Ҫ<EFBFBD><D2AA>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>нǶ<D0BD>ʱ<EFBFBD><CAB1>,countΪ<74><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5>ַ<EFBFBD><D6B7><EFBFBD>
void operator=(CText& text);
BOOL m_bScript; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½DZ귽ʽ<EAB7BD><CABD>ʾ
int ReadText(CFile& fr);
COLORREF color;
COLORREF m_bkColor;
double m_dTextSpace = 0;
double m_dLineSpace = 0;
public:
virtual int ReadPCG(void *pxp, const short &ver);
virtual int ReadPCG2(void *pxp, const short &ver);
int ReadFontPCG2(void *pxp, const short &ver);
};