814123 2017-05-27 17:42 采纳率: 50%
浏览 1407
已采纳

delphi printdialog1的打印上边距,打印出来的东西往下一点?

delphi printdialog1的打印怎么设置上边距,打印出来的东西往下一点?

网上抄的代码
procedure TForm3.Button1Click(Sender: TObject);
var
line:integer; //定义一个line变量,用于下面控制打印各行内容
files:system.text; //告诉系统说files是文本文件,是要打印机打印的文件
begin
if printdialog1.execute then //当printdialog1执行后
begin
assignprn(files); //通过assignprn函数将要打印的文件交给打印机
rewrite(files); //让打印机打开文件准备打印
printer.Canvas.font:=memo1.font; //canvas是打印机的画板,用来打印文件的,直接设置字体
for line:=0 to memo1.lines.count-1 do //以下是循环memo1的每个行
begin
writeln(files,memo1.lines[line]); //打印每行内容 writeln(文件名,文本的某个行);
end;
system.close(files); //打印完了就关闭要打印的文件
end;
end;

  • 写回答

1条回答 默认 最新

  • 战在春秋 2017-05-27 20:53
    关注

    方法如下:

     .............. //其它代码
    
    const 
      TopMargin=4; //设置上边距,根据情况调整
    
     .............. //其它代码
    
    begin
    if printdialog1.execute then 
         for i:=0 to TopMargin-1 do //先打印若干个空行,相当于出来一个上边距
                begin
                    Write(PrintText,#10);  //#10 代表换行 
                end;
    ...............//其它代码
    

    基本逻辑就是这样,你可以结合其它代码使用。

    用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?