nHorRes:=GetDeviceCaps(Printer.Handle, HORZRES);是A4纸的像素宽度,
选择了字体:
printer.Canvas.Font.Name:='Ms Sans Serif';
printer.Canvas.Font.size:=12;
得到当前字体下字符的宽度:
nCharWidth:=printer.Canvas.TextWidth('A');
得到每毫米的像素数:
PixPerMX := trunc(GetDeviceCaps(Printer.Handle, LOGPIXELSX)/25.4);
nCharWidth的单位是毫米吗?
因为nCharWidth*PixPerMX得到的是像素阿