【问题标题】:How can I save a PDF from an URL with TWebbrowser in Delphi7 to a PDF FILE?如何在 Delphi7 中使用 TWebbrowser 从 URL 将 PDF 保存到 PDF 文件?
【发布时间】:2014-06-13 16:33:25
【问题描述】:

有没有办法从 Delphi 7 中的 TWebbrowser 将 PDF 保存到文件中? 我可以在 Webbrowser 中显示 PDF,但如何将其保存到本地 PDF 文件?

【问题讨论】:

    标签: delphi delphi-7 twebbrowser


    【解决方案1】:

    您可以使用TWebbrowser 将任何网页保存到文件中,如下所示:

    Uses 
      ActiveX,
      ...
    
    ...
    
    procedure TForm1.SaveDocument(AFilename : String);
    
    var 
      Stream : TFileStream;
      StreamAdapter: IStream;
      PersistStreamInit: IPersistStreamInit;
    
    begin
     if not Assigned(Browser.Document) then
      Exit;
     if Browser.Document.QueryInterface(IPersistStreamInit, PersistStreamInit) = S_OK then
      begin
       Stream := TFileStream.Create(AFilename, fmCreate);
       try
        StreamAdapter := TStreamAdapter.Create(Stream);
        PersistStreamInit.Save(StreamAdapter, True);
       finally
        Stream.Free;
       end;
      end;
    end;
    

    【讨论】:

    • 我使用的是Delphi 7,并且命令Browser.SaveToStream不存在。
    • 我还找到了一个例程,它保存了 HTML 但没有 PDF。见这里 [link]swissdelphicenter.ch/torry/showcode.php?id=1112 谁能解释为什么这个例程不保存 PDF?
    • @WalterSchrabmair:是的,我的错,这里不需要 SaveToStream 行。这个代码可以保存一个PDF页面吗?您能否编辑您的问题并向我们展示您如何尝试保存页面的完整示例?
    • 没有代码不能保存PDF。结果文件上仍有 0 个字节。
    • 您在什么时候尝试保存文件,就在 Navigate 命令之后?
    猜你喜欢
    • 2012-11-07
    • 2019-04-09
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多