确定打印机的分辨率
打印机分辨率(也称为打印质量)由每英寸的像素点数度量(ppi)。有两种获取这个信息的方法。
1 用GetDeviceCaps()由参数LOGPIXELSX和和LOGPIXELSY来得到水平和垂直分辨率。
int iLogPixelsX=GetDeviceCaps(Printer()->Handle,LOGPIXELSX);
int iLogPixelsY=GetDeviceCaps(Printer()->Handle,LOGPIXELSY);
2 使用TPoint的PixelsPerInch属性。注意当水平和垂直分辨率相同时(一些Inkjet打印机有不同的垂直和水平分辨率),PixelsPerInch返回的信息才有效。这是因为PixelsPerInch与带参数LOGPIXELSY的GetDeviceCaps()一样。记住在试图获取打印机的画板属性时,打印机必须正在打印,并且BeginDoc()必须已经在Printer()对象中被调用。
int iPixelsPerInch = Printer()->Canvas->Font->PixelsperInch;