QT画直线 粗线和细线长短不一致
原因是画笔有个笔帽的样式
笔帽的样式
所谓笔帽是个很奇怪的东西, 如果搞不好的话, 很容易被迷惑到了. 笔帽会在每绘制每一截线时, 在起点和终点都添加一点点的东西, 而且这一些笔帽的长度是和笔的宽度有关系的. 如圆笔帽会在每截线开头结尾处添加一个圆头.
QT中设置笔帽
QPen pen2;
pen2.setCapStyle(Qt::RoundCap);
Qt::PenCapStyle
Qt::FlatCap – 尾帽是平面的(注: 没有笔帽)
Qt::SquareCap – 尾帽是方的
Qt::RoundCap – 尾帽是圆的
VC中设置笔帽
CPen pen1;
pen1.CreatePen(PS_USERSTYLE|PS_GEOMETRIC|PS_ENDCAP_FLAT, 10, &logBrush,4,dwF);
PS_ENDCAP_ROUND – 尾帽是圆的
PS_ENDCAP_SQUARE – 尾帽是方的
PS_ENDCAP_FLAT – 尾帽是平面的(注: 没有笔帽)