TEdgeBrowser(WebView2)でブラウザのPDFファイル表示機能をDelphiから使用する
Delphi 11.3(Community Edition)でTEdgeBrowserを使ってPDFファイルを表示します。
(1)はじめに
Windows10の場合はMicrosoft WebView2 ランタイムのインストールを以下のURLを参照してインストールしてください。
https://mam-mam.net/delphi/tedgebrowser.html
「WebView2Loader.dll」も、
https://mam-mam.net/delphi/tedgebrowser.html
を参照してください。
(2)プロジェクトの作成と保存
Delphi IDEを起動し、「ファイル」⇒「Windows VCLアプリケーション -Delphi」をクリックします
「ファイル」⇒「すべて保存 Ctrl+Shift+S」をクリックして、プロジェクト保存用フォルダを作成して
ユニット(Unit1)とプロジェクト(Project1)を保存します
(3)フォームの設計
フォームに、TEdgeBrowser×1個、TButton×1個と、TOpenDialog×1個をドラッグ&ドロップします
(4)ソースコードの記述
フォームのButton1をダブルクリックしてソースコードを記述します。
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Winapi.WebView2, Winapi.ActiveX,
Vcl.StdCtrls, Vcl.Edge;
type
TForm1 = class(TForm)
EdgeBrowser1: TEdgeBrowser;
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses System.IOUtils;
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
if not OpenDialog1.Execute then exit;
EdgeBrowser1.Navigate(OpenDialog1.FileName);
end;
procedure TForm1.FormCreate(Sender: TObject);
var cachepath:string;
begin
Button1.Caption:='PDFファイルを開く';
OpenDialog1.Filter:='pdf|*pdf';
cachepath:=ExtractFilePath(Application.ExeName)+'cache';
//キャッシュを削除する
if DirectoryExists(cachepath) then TDirectory.Delete(cachepath,true);
//キャッシュのフォルダを指定する
//ここに作成される「EBWebView」フォルダを削除すればキャッシュを消せる
EdgeBrowser1.UserDataFolder:=cachepath;
if not EdgeBrowser1.WebViewCreated then
begin
EdgeBrowser1.CreateWebView;
while not EdgeBrowser1.WebViewCreated do
begin
sleep(100);
application.ProcessMessages;
end;
end;
end;
end.
(5)「WebView2Loader.dll」ファイルを実行ファイルと同じフォルダ内にコピーする
「C:\Program Files (x86)\Embarcadero\Studio\22.0\Redist\win32\WebView2Loader.dll」
ファイルを、実行ファイルと同じフォルダ内(プロジェクト保存フォルダ\Win32\Debug)にコピーします
| (A)「Debug」ビルトで 「Windows 32ビット」 |
プロジェクト保存フォルダ\Win32\Debug |
| (B)「Debug」ビルトで 「Windows 64ビット」 |
プロジェクト保存フォルダ\Win64\Debug |
| (C)「Release」ビルトで 「Windows 32ビット」 |
プロジェクト保存フォルダ\Win32\Release |
| (D)「Release」ビルトで 「Windows 64ビット」 |
プロジェクト保存フォルダ\Win64\Release |
(6)実行する
「実行」⇒「実行」をクリックすると実行します。
「PDFファイルを開く(Button1)」ボタンをクリックしてPDFファイルを選択して「開く」ボタンを押してください。
PDFファイルが表示されます。
