如何在Delphi中设置打印机属性

 我来答
windblast
2016-11-16 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13622
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部

在 delphi 中设置打印机属性方法如下:


一、使用打印机设置对话框:


PrinterSetupDialog1.Execute;


二、使用代码进行设置:


以下代码来源于网络:

procedure setprint(pagesize:tpagesize;width,height:variant;Orientation:tprinterOrientation);
var
  Device: array[0..255] of char;
  Driver: array[0..255] of char;
  Port: array[0..255] of char;
  hDMode: THandle;
  PDMode: PDEVMODE;
begin
//设置打印机
  try
  Printer.PrinterIndex := Printer.PrinterIndex;
  Printer.GetPrinter(Device, Driver, Port, hDMode);
  if hDMode <> 0 then
  begin
    pDMode := GlobalLock(hDMode);
    if pDMode <> nil then
    begin
      if pagesize=Custom then
      begin
        //设定自定义纸张
        pDMode^.dmFields := pDMode^.dmFields or
          dm_PaperSize or
          DM_PAPERWIDTH or
          DM_PAPERLENGTH;

        pDMode^.dmPaperSize := 0;
        pDMode^.DMPAPERWIDTH:= width*10 ;
        pDMode^.DMPAPERLENGTH:=height*10;
      end
      else
      begin
        //设定纸张类型
        pDMode^.dmFields := pDMode^.dmFields or
          DM_PAPERSIZE  ;
       if pagesize=A3 then pDMode^.dmPaperSize := DMPAPER_A3;
       if pagesize=A4 then pDMode^.dmPaperSize := DMPAPER_A4;
       if pagesize=A5 then pDMode^.dmPaperSize := DMPAPER_A5;
       if pagesize=B4 then pDMode^.dmPaperSize := DMPAPER_B4;
       if pagesize=B5 then pDMode^.dmPaperSize := DMPAPER_B5;
       if pagesize=CSheet then pDMode^.dmPaperSize := DMPAPER_CSheet;
       if pagesize=Executive then pDMode^.dmPaperSize := DMPAPER_Executive;
       if pagesize=Letter then  pDMode^.dmPaperSize:= DMPAPER_Letter;
      end;
      printer.Orientation:=Orientation;
      GlobalUnlock(hDMode);
    end;
  end ;
  Printer.PrinterIndex := Printer.PrinterIndex;
  except
    showmessage('没有默认选择打印机,或默认打印机不可使!');
    exit;
  end;
 end;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式