VFP本身提供了部分相关打印机的数据返回函数以及部分设置项,但在打印机的直接控制方面没有提供
相应的策略,这里从分析打印机的Devmode和PRINTER_INFO_2的结构来详细说明一下VFP打印机的相关操作编程。首先看下打印机的基本数据结构Devmode:
Private Type DEVMODE
dmDeviceName As String * 32 &&打印设备名称,每个打印机驱动程序都有一个唯一的字符串。
dmSpecVersion As Integer &&指定 Win32 软件开发工具包中 DEVMODE 结构的版本号。
dmDriverVersion As Integer &&指定由打印机驱动程序开发商分配的打印机驱动程序版本号。
dmSize As Integer &&指定 DEVMODE 结构的字节大小。
dmDriverExtra As Integer &&指定设备的数据可选 dmDriverData 成员的字节大小。
dmFields As Long &&指定 DEVMODE 结构中的哪些其余成员已被初始化。
dmOrientation As Integer &&指定纸张的方向。它可以为 1(纵向)或 2(横向)。
dmPaperSize As Integer &&指定打印的纸张大小。
dmPaperLength As Integer &&替代由PaperSize成员为自定义纸张大小的高度,PaperSize为0或256时有效。
dmPaperWidth As Integer &&代由PaperSize成员为自定义纸张大小的宽度,PaperSize为0或256时有效。
dmScale As Integer &&指定打印输出的缩放系数,输出的纸张大小是按缩放值/100从实际纸张大小缩放得到的。
dmCopies As Integer &&指定打印份数(如果打印设备支持多页打印)。
dmDefaultSource As Integer &&指定送纸的默认纸盒。
dmPrintQuality As Integer &&指定打印机的分辨率。值: -4高品质、-3中品质、-2低品质和 -1草稿。
dmColor As Integer &&指定是否以彩色打印输出结果。值为 1(彩色)和 2(单色)。
dmDuplex As Integer &&指定是否在纸张的双面打印输出结果。1单面、2水平、3垂直。(需要打印机支持)
dmYResolution As Integer &&指定打印机的 y 方向分辨率(以每英寸点数 (dpi) 为单位)。
dmTTOption As Integer &&指定如何打印 TrueType 字体。
dmCollate As Integer &&指定在打印多份时是否使用逐份打印。
dmFormName As String * 32 &&指定要使用的纸张大小;例如,“Letter”或“Legal”。
dmUnusedPadding As Integer &&用于在将来的版本中填充空格、字符或数值。
dmBitsPerPel As Integer &&指定显示设备的颜色分辨率(以每像素的位数为单位)。
dmPelsWidth As Long &&指定可见设备表面(屏幕或打印机)的宽度(以像素为单位)。
dmPelsHeight As Long &&指定可见设备表面(屏幕或打印机)的高度(以像素为单位)。
dmDisplayFlags As Long &&指定设备的显示模式。
dmDisplayFrequency As Long &&指定显示设备在特定模式下的频率(以赫兹(每秒周数)为单位)。
End Type
1/4 1 2 3 4 下一页 尾页