从 TEdgeBrowser 打印时从标题中删除默认的日期时间戳记

问题描述 投票:0回答:1

我使用以下代码来控制从

TEdgeBrowser
打印的报告的页眉和页脚文本(请参阅这个答案)。 这有效并允许我添加自定义页眉和页脚文本。 但是,它还会在我不想显示的报告标题中添加一个日期时间戳记。 从
TEdgeBrowser
打印时,有没有办法删除标题中显示的默认日期时间戳记? 自定义页眉和页脚仍然需要显示。

procedure TForm1.Button1Click(Sender: TObject);
var
  PrintSettings: ICoreWebView2PrintSettings;
begin
  (EdgeBrowser1.EnvironmentInterface as ICoreWebView2Environment6).CreatePrintSettings(PrintSettings);

  PrintSettings.Set_ShouldPrintHeaderAndFooter(true.ToInteger);
  PrintSettings.Set_HeaderTitle('New Header text');
  PrintSettings.Set_FooterUri('New Footer text');

  (EdgeBrowser1.DefaultInterface as ICoreWebView2_16).Print(PrintSettings, nil);
end;

我能够通过更改 Internet Explorer 注册表项来使用

TWebBrowser
实现此目的,但 Edge 中似乎不存在这些注册表项。

delphi printing tedgebrowser headerfooter
1个回答
0
投票

我会尝试设置

ShouldPrintHeaderAndFooter
= false 来禁用默认的日期时间戳,还设置
Set_HeaderTitle
Set_FooterUri
来添加自定义页眉和页脚文本,例如

procedure TForm1.Button1Click(Sender: TObject);
var
  PrintSettings: ICoreWebView2PrintSettings;
begin
  (EdgeBrowser1.EnvironmentInterface as ICoreWebView2Environment6).CreatePrintSettings(PrintSettings);

  // Disable default header and footer
  PrintSettings.Set_ShouldPrintHeaderAndFooter(false.ToInteger);

  // Add custom header and footer
  PrintSettings.Set_HeaderTitle('New Header text');
  PrintSettings.Set_FooterUri('New Footer text');

  (EdgeBrowser1.DefaultInterface as ICoreWebView2_16).Print(PrintSettings, nil);
end;
© www.soinside.com 2019 - 2024. All rights reserved.