代码来自GDIPlus::DrawString计算一定区域显示字符个数的问题-CSDN社区
直接复制到初始化GDI+代码后面就行,这是个内嵌的方法:
直接代码:
auto fun_tradeno = [](wstring tmp) {
Gdiplus::Bitmap* img;
tmp = L"订单号:" + tmp;
//设置字体大小,
int fontsize = 20;
FontFamily fontFamily(L"Arial");
Font font(&fontFamily, fontsize - 6, FontStyleBold, UnitPoint);
float a= font.GetHeight(20);
float b=font.GetUnit();
设置总高度
float height = ((float)tmp.length()* fontsize ) / (float)200;
int int_h = height; //float
if (int_h < height) {
int_h++;
}