// 画线
void CPcnhDlg::DrawLine( CDC* pDC,CPoint sPoint, CPoint toPoint, int width, COLORREF color)
{
CPen pen(PS_SOLID,width,color); //定义画笔
pDC->SelectObject(&pen);
pDC->MoveTo(sPoint);
pDC->LineTo(toPoint);
pen.DeleteObject();
}
// 画点
void CPcnhDlg::DrawPoint(CPoint pt, int size, COLORREF color)
{
CDC* pDC = GetClientDC();
CPen *pen=new CPen(PS_SOLID,0,color);
pDC->SelectObject(pen);
pDC->Ellipse(pt.x-size,pt.y-size,pt.x+size,pt.y+size);
pen->DeleteObject();
delete pen;
}
// 画文字
void CPcnhDlg::DrawText(CPoint pt, int size, int Angle, COLORREF color, CString strTxt)
{
CDC* pDC = GetClientDC();
CFont font;
VERIFY(font.CreateFont(
size, // nHeight
0, // nWidth
Angle, // nEscapement,设置文字的显示角度,注意单位为0.1度
-90, //
FW_NORMAL, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
"Arial") ); // lpszFacename
// Do something with the font just created...
CFont* def_font = pDC->SelectObject(&font);
// pDC->SetBkMode(TRANSPARENT); // 透明
pDC->SetTextColor(color);
pDC->SetTextAlign(TA_CENTER);
pDC->TextOut(pt.x, pt.y, strTxt);
pDC->SelectObject(def_font);
font.DeleteObject();
}