PDF Tools ホーム > PDF Tools ライト > PDF Viewer-L > C#サンプル > PDF表示

PDF Viewer-L 画面表示のために開くサンプルと解説 C#

「PDFViewer-L」は、PDF文書を表示するためのライブラリです。

PDF Viewer-L Package
機能を制限することでお求め安くしました。PDF Viewer-Lは、ライト(軽量)ではありますがPDFのもつ文書内リンクやWebリンクの情報はイベントを介して取得でき、サムネールやしおり情報もメソッドを介して取得できます。これらの情報を利用して独自のPDF表示アプリケーションを構築できます。

PDF Viewer-L 購入(価格)

C++ によるPDF表示サンプルは、こちらです。

無償評価版のダウンロードとインストール

PDF Viewer-Lライブラリは、無償でダウンロードして試用できます。以下のリンクをクリックしてダウンロードしてください。なお、試用に際しては評価用のライセンスキーが必要ですので必ずダウンロードしてください。
評価用ライセンスキーには利用期限がありますが、何度ダウンロードしてもかまいません。

インストール

ダウンロードしたファイルは、適当なフォルダーに解凍します。以下のようなフォルダーができあがりますので、適宜利用します。

binライブラリ
doc使用説明書やライセンス契約書
includeC/C++用のヘッダー(.h)ファイル
samples各種開発言語によるサンプルコード

サンプルの実行前にライブラリ(OCX)を以下の手順に従って登録します。

  1. 「コマンド プロンプト」を管理者権限で起動します。
  2. ファイルを解凍したフォルダー内のbinフォルダーに移動します。
  3. "regsvr32 vwl.ocx"を実行して登録します。成功を示すダイアログが表示されます。
  4. Visual Studioを起動します。
  5. Visual Studioのツールボックス内で、右クリックしてコンテキストメニューの「アイテムの選択(I)...」を選択してツールボックス アイテムの選択ダイアログを表示させます。
  6. 表示したダイアログの「COMコンポーネント」タグをクリックして、コンポーネントの「PdfViewerL Control」をチェックします。これによって、PDF Viewer-Lツールがツールボックスに現れます。

PDFを表示するC#サンプル

PDF文書を表示するC#のアプリケーションのサンプルを記します。
サンプルは、Windowsフォーム アプリケーションです。あらかじめフォームを作成し、“PdfViewerL Control”を貼り付けておきます。

フォーム クラスのコンストラクタを以下のように変更します。

public OpenDocForm()
{
    InitializeComponent();
    axPdfViewerL1.InitCtrl("ライセンスキー");
    axPdfViewerL1.Open("PDF Viewer-L.pdf", "", "");
}

アプリケーションを起動すると、PDF Viewer-Lコントロールを初期化してから、指定されたPDFファイルを表示します。使用するメソッドは以下のとおりです。

InitCtrlコントロールを指定のライセンス・キーで初期化します。
引数にライセンスキー文字列を指定します。なおライセンスキーは、こちらからダウンロードしてください。
Open指定のPDFをコントロールに表示します。
以下の引数を指定します。
第一引数表示するPDFのファイルパスを指定します。
第二引数PDFがパスワードで暗号化されている場合にオーナーパスワードを指定します。
暗号化されていない場合は、NULL文字を指定します。
第三引数PDFがパスワードで暗号化されている場合にオーナーパスワードを指定します。
暗号化されていない場合は、NULL文字を指定します。
暗号化されている場合で多くの場合は、オーナーパスワードのみの指定で復号できます。
暗号化されたPDFに正しいパスワードを指定しなかった場合は、エラーになりPDFは表示されません。このような場合は、暗号化したPDFを開くのようにしてください。

起動すると、以下のようなウィンドウが表示されます。
PDF Viewer-L Open Sample

暗号化されたPDFを開く C#サンプル

パスワードで暗号化されたPDFを表示するMFCのアプリケーションを作成します。
サンプルでは、ダイアログ ベースのMFCアプリケーションを使用します。あらかじめウィザードなどで作成し、フォームに“PdfViewerL Control”を貼り付けておきます。

ダイアログクラスのOnInitDialog()に以下のコードを追加します。

public OpenEncForm()
{
    InitializeComponent();
    axPdfViewerL1.InitCtrl("ライセンスキー");
    string pwd = "";
    while (true)
    {
        long res = axPdfViewerL1.Open("PDF Viewer-L_p_123.pdf", pwd, "");
        if (res == (int)VwlErr.VWL_E_SUCCESS) break;
        else if (res == (int)VwlErr.VWL_E_PASSWORD)
        {
            pwd = "123";
            continue;
        }
        else
        {
            MessageBox.Show("ファイルを開けません");
            break;
        }
    }
}

アプリケーションを起動すると、PDF Viewer-Lコントロールを初期化した後に、暗号化されたPDFを空文字のパスワードで表示しようとします。
空文字のパスワードでは復号できませんので、VWL_E_PASSWORDエラーとなります。
そこで、正しいパスワード("123")を指定して表示させます。
メソッドの説明 を参照してください。

ファイルのオープン イベントを捕捉する

PDF Viewer-Lコントロールは、PDFファイルのオープンの後にイベントを発火させます。
このイベントは、以下のような"OnOpen"イベントのハンドラーで処理できます。

private void axPdfViewerL1_OnOpen(object sender, AxPdfViewerLLib._DPdfViewerLEvents_OnOpenEvent e)
{
    // ここで、総ページ数やしおり、サムネール画像などを取得します。
}

サンプル ソースコード

PDF Viewer-Lのサンプル ソースコードは、以下からダウンロードしてください。

   ソースコード: vwlSample_2_3.zip

ご質問、お問い合わせ

メールで support@TrustSS.co.jp 宛てにお送りください。
または、質問のページからお送りいただくようお願いします。ご要望も承っております。