unit My_Print;
interface
uses
Printers, Types, Windows, Messages, SysUtils, Variants, Graphics,Dialogs,
Inifiles, Forms;
type
TCustomPrinter=class(TObject)
private
FiOffsetX: Integer; //水平方向偏移量:.1毫米
FiOffsetY: Integer; //垂直方向偏移量:.1毫米
//取得字符的高度
function CharHeight: Word;
//取得字符的平均宽度
function AvgCharWidth: Word;
//取得纸张的物理尺寸---单位:点
function GetPhicalPaper: TPoint;
//得到打印机默认的页边距
function GetPrintStartPos:TPoint;
//取得纸张的逻辑宽度--可打印区域,纸张的逻辑尺寸
function PaperLogicSize: TPoint;
//纸张水平对垂直方向的纵横比例
function HVLogincRatio: Extended;
//取得纸张的横向偏移量-单位:点
function GetOffSetX: Integer;
//取得纸张的纵向偏移量-单位:点
function GetOffSetY: Integer;
//毫米单位转换为英寸单位
function MmToInch(Length: Extended): Extended;
//英寸单位转换为毫米单位
function InchToMm(Length: Extended): Extended;
//取得水平方向每英寸打印机的点数
function HPointsPerInch: Integer;
//取得纵向方向每英寸打印机的光栅数
function VPointsPerInch: Integer;
//横向点单位转换为毫米单位
function XPointToMm(Pos: Integer): Extended;
//纵向点单位转换为毫米单位
function YPointToMm(Pos: Integer): Extended;
//设置纸张尺寸:纸张宽度和纸张高度-单位:mm
procedure SetPagerSize(const ASize: Integer; AWidth,AHeight: Double);
protected
public
constructor Create;
{********************************************************************
函数名称: InitPrinter
函数功能: 初始化打印机,包括打印机名称、纸张大小等等
输入参数: ConfigIni: string --打印配置文件:*.ini
输出参数: None &nbs