|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
//<2F>ļ<EFBFBD> EpsDC.h
|
|
|
|
|
|
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
|
|
|
|
|
|
//
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2005-12-07
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "formatdc.h"
|
|
|
|
|
|
#include ".\epswriter.h"
|
|
|
|
|
|
|
|
|
|
|
|
namespace NFormatWriter
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
class CEpsDC :
|
|
|
|
|
|
public CFormatDC
|
|
|
|
|
|
{
|
|
|
|
|
|
public:
|
|
|
|
|
|
CEpsDC(void);
|
|
|
|
|
|
virtual ~CEpsDC(void);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void SetFile(CFile* pFile);
|
|
|
|
|
|
virtual void Initial(void);
|
|
|
|
|
|
virtual int OutFront(void);
|
|
|
|
|
|
virtual int OutEnd(void);
|
|
|
|
|
|
virtual void SetMapSize(CSize sz) { m_mapSize = sz; }
|
|
|
|
|
|
|
|
|
|
|
|
virtual void PolyLine(CPointList& dp);
|
|
|
|
|
|
virtual void SetPixel(double x, double y, COLORREF col);
|
|
|
|
|
|
//virtual void LineTo(double x, double y);
|
|
|
|
|
|
virtual void Ellipse(double x1, double y1, double x2, double y2);
|
|
|
|
|
|
virtual void PaintRgn(CCurveEx& curve);
|
|
|
|
|
|
virtual void PaintRgn(LPPOINT sp, int count);
|
|
|
|
|
|
virtual void Draw(CSection& section,CRect8* rect=NULL);
|
|
|
|
|
|
virtual void Draw(CText& text, CCurveEx& curve);
|
|
|
|
|
|
virtual void Draw(CImageInsert& image);
|
|
|
|
|
|
virtual void Draw(CMesh &mesh);
|
|
|
|
|
|
virtual void FillSolidRect(CRect8& rect, COLORREF color);
|
|
|
|
|
|
virtual void Draw(CInsertDraw& m_insert);
|
|
|
|
|
|
virtual void Draw(CInsertOld& m_insert);
|
|
|
|
|
|
|
|
|
|
|
|
virtual CSize8 GetFontSize(CSize8 sz);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void DrawScreenCurve(void* pScreenCurve, BOOL bSolid);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void DrawOutlineChar(LPTTPOLYGONHEADER lpph, long cbTotal, CPoint scrpt, BOOL bFill);
|
|
|
|
|
|
|
|
|
|
|
|
void PrintViewport(void);
|
|
|
|
|
|
void PrintBackground(COLORREF bkColor);
|
|
|
|
|
|
void operator=(CEpsDC& dc);
|
|
|
|
|
|
|
|
|
|
|
|
virtual void SelectClipRgn(CPointList* pPointList, int nMode=RGN_AND); //<2F><><EFBFBD><EFBFBD>CGM<47><4D>EPS<50><53><EFBFBD>ļ<EFBFBD>ʱ,<2C><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ı߽<C4B1><DFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
void PolyDraw(const LPPOINT plppt, const LPBYTE lpbTypes, int cCount);
|
|
|
|
|
|
void PolyBezierTo(CPoint2D* lppt, int nCount);
|
|
|
|
|
|
|
|
|
|
|
|
CPoint2D ConvertToPS(const CPoint2D & mm);
|
|
|
|
|
|
double ConvertToPS(double mm);
|
|
|
|
|
|
void GetViewport(double* pViewport); //<2F><><EFBFBD>鳤<EFBFBD><E9B3A4>Ϊ4
|
|
|
|
|
|
CPoint2D GetPageSize(void);
|
|
|
|
|
|
|
|
|
|
|
|
//<2F><><EFBFBD>صľ<D8B5>ΪӢ<CEAA>絥λ
|
|
|
|
|
|
CPoint2D epsGetScreen(double x, double y);
|
|
|
|
|
|
CPoint2D epsGetScreen(const CPoint2D& pt);
|
|
|
|
|
|
double epsGetScreenWidth8(double dw);
|
|
|
|
|
|
double eps_y(double y);
|
|
|
|
|
|
void ScreenToInch(double& x, double& y);
|
|
|
|
|
|
|
|
|
|
|
|
CEpsWriter m_eps;
|
|
|
|
|
|
CSize m_mapSize; //<2F><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
};
|