在以下情况下,如何确定要在构造函数或 CPen::CreatePen 中设置的线宽:
- 例如,如果我以 60% 的比例显示图像,并且我需要我的线条在屏幕上为 1 毫米。
- 如果我希望我的线宽为图像最大(宽度,高度)的 0.01%
最佳答案
首先,CPen的width的类型是int,所以必须使用整型。
如果你使用第二个方案,下面的代码是可用的,但是,你必须关心宽度的类型和值。
CImage image;
float max_value = static_cast<float>(max(image.GetWidth(), image.GetHeight()));
//get value for 1%
float pen_width = max_value * 0.01f;
CPen pen(PS_SOLID, static_cast<int>(pen_width), RGB(0, 0, 0));
关于c++ - MFC CPen::CreatePen 线宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20653056/