国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Delphi > 正文

在WIN2000/XP下添加自定義紙張的Delphi源代碼

2019-11-18 18:05:22
字體:
來源:轉載
供稿:網友
////////////////////////////
//  武漢探索電腦工作室    //
//  http://tansuo.51.net  //
////////////////////////////

//增加規格自定義紙張
//PaperName: 自定義紙張名稱
//PaperWidth: 紙張的寬度,以0.1mm為單位
//PaperLength: 紙張的高度,以0.1mm為單位
PRocedure TDM.AddCustomPaper(const PaperName: string; PaperWidth, PaperLength:integer);
var
PrintDevice, PrintDriver, PrintPort : array[0..255] of Char;
hDMode   : THandle;
hPrinter : THandle;
FormInfo : TFormInfo1;
begin
Printer.GetPrinter(PrintDevice, PrintDriver, PrintPort, hDMode);
OpenPrinter(PrintDevice, hPrinter, nil);
if hPrinter = 0 then
raise Exception.Create('聯接打印機失敗!');

with FormInfo do
begin
Flags := FORM_USER;
pName := PChar(PaperName);
Size.cx := PaperWidth*100;
Size.cy := PaperLength*100;
ImageableArea.Left := 0;
ImageableArea.Top := 0;
ImageableArea.Right := PaperWidth*100;
ImageableArea.Bottom := PaperLength*100;
end;

//修改紙型,如果沒有就新增
if not SetForm(hPrinter, PChar(PaperName), 1, @FormInfo) then
AddForm(hPrinter, 1, @FormInfo);

ClosePrinter(hPrinter);
end;

//刪除自定義規格紙張
//PaperName: 自定義紙張名稱
procedure TDM.DeleteCustomPaper(const PaperName: string);
var
PrintDevice, PrintDriver, PrintPort : array[0..255] of Char;
hDMode   : THandle;
hPrinter : THandle;
begin
Printer.GetPrinter(PrintDevice, PrintDriver, PrintPort, hDMode);
OpenPrinter(PrintDevice, hPrinter, nil);
if hPrinter = 0 then
raise Exception.Create('聯接打印機失敗!');
DeleteForm(hPrinter, PChar(PaperName));
ClosePrinter(hPrinter);
end;


上一篇:三層數據庫與應用程序服務器的小型介紹(Delphi&BCB)

下一篇:Delphi2005學習筆記4(續)——再談Dll以及Package

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 鸡西市| 略阳县| 上犹县| 婺源县| 彩票| 西宁市| 五峰| 新宾| 岳普湖县| 延寿县| 甘孜县| 高安市| 虎林市| 万源市| 英德市| 呼玛县| 宁武县| 西乡县| 郁南县| 微山县| 安阳县| 佛坪县| 新竹县| 漳州市| 娄底市| 大方县| 旬邑县| 城步| 舟曲县| 略阳县| 巍山| 小金县| 醴陵市| 灌云县| 福海县| 枣阳市| 炎陵县| 垣曲县| 丹东市| 汪清县| 连南|