|
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD> MTextParse.h
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
// <09><><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2008-05-07
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include ".\pointnamebase.h"
|
|
|
|
|
|
#include "rect8ex.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CMTextParse
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CMTextParse(void);
|
|
|
|
|
|
virtual ~CMTextParse(void);
|
|
|
|
|
|
|
|
|
|
|
|
int ParseString(CString txt);
|
|
|
|
|
|
void Clear(void);
|
|
|
|
|
|
|
|
|
|
|
|
class COneText
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
COneText(void);
|
|
|
|
|
|
void operator =(COneText &ot);
|
|
|
|
|
|
void CloneFont(COneText& ot);
|
|
|
|
|
|
|
|
|
|
|
|
void GetText(void* pText); //CText *pText
|
|
|
|
|
|
CString GetFormatString(COneText* pPrevText = NULL);
|
|
|
|
|
|
int GetWordSize(void); //<2F><><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
LOGFONT m_font;
|
|
|
|
|
|
CSize8 m_size;
|
|
|
|
|
|
COLORREF m_color;
|
|
|
|
|
|
|
|
|
|
|
|
bool m_bEnter; //<2F>س<EFBFBD>
|
|
|
|
|
|
bool m_bSuperscript;//<2F>ϱ<EFBFBD>
|
|
|
|
|
|
bool m_bSubscript; //<2F>±<EFBFBD>
|
|
|
|
|
|
CString m_strSuperscript;
|
|
|
|
|
|
CString m_strSubscript;
|
|
|
|
|
|
|
|
|
|
|
|
CString m_string;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
virtual void ScaleProperty(double sx, double sy);
|
|
|
|
|
|
void operator =(CMTextParse &tp);
|
|
|
|
|
|
int GetLength(void);
|
|
|
|
|
|
int GetLineCount(void);
|
|
|
|
|
|
CString GetFormatString(void);
|
|
|
|
|
|
|
|
|
|
|
|
CList<COneText*, COneText*> m_textList;
|
|
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
int m_nCurIndex;
|
|
|
|
|
|
CString m_string;
|
|
|
|
|
|
|
|
|
|
|
|
int ParseOne(COneText* pText);
|
|
|
|
|
|
CString GetOneString(bool *pEnter = NULL);
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class CMText : public CPointNameBase
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CMText(void);
|
|
|
|
|
|
virtual ~CMText(void);
|
|
|
|
|
|
|
|
|
|
|
|
virtual int Read(CFile& fr, const short& ver);
|
|
|
|
|
|
virtual void Write(CFile& fw, const short& ver);
|
|
|
|
|
|
void Serialize(CArchive& ar, const short &ver) override;
|
|
|
|
|
|
|
|
|
|
|
|
virtual void Clear(void);
|
|
|
|
|
|
virtual CString GetName(void);
|
|
|
|
|
|
virtual int SetName(LPCTSTR lpString);
|
|
|
|
|
|
virtual void GetRange(CRect8& range);
|
|
|
|
|
|
virtual int IsInRange(CRect8& range);
|
|
|
|
|
|
virtual void ScaleProperty(double sx, double sy);
|
|
|
|
|
|
virtual void Calibrate(int type, void* pValue);
|
|
|
|
|
|
|
|
|
|
|
|
void operator=(CMText& mt);
|
|
|
|
|
|
|
|
|
|
|
|
DWORD m_nFlags; //<2F><>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>չ
|
|
|
|
|
|
CMTextParse m_parse;
|
|
|
|
|
|
};
|