在打印为PDF文件时设置默认文件夹

问题描述

我正在使用FastReport打印对话框。

我打印到PDF文件。 保存PDF文件时如何设置建议的初始文件夹?

HERE question

解决方法

我认为无法选择该文件夹。但是您可以这样指定完整路径:

procedure TForm1.Button1Click(Sender: TObject);
var
    PrtIndex   : Integer;
    DeviceMode : THandle;
    Device,Driver,Port       : array [0..255] of Char;
begin
    // Warning: The printer name is case sensitive
    PrtIndex := Printer.Printers.IndexOf('Microsoft Print to PDF');
    if PrtIndex < 0 then
        raise Exception.Create('Printer not found');
    Printer.PrinterIndex := PrtIndex;
    Printer.GetPrinter(Device,Port,DeviceMode);
    Printer.SetPrinter(Device,'C:\Temp\TestPrintToPdf.pdf',0);
    Printer.BeginDoc;
    Printer.Canvas.TextOut(100,100,'Hello World');
    Printer.EndDoc;
end;

您可以添加自己的对话框,询问用户文件名并选择打印选项。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...