トラスト・ソフトウェア・システム
トラスト・ソフトウェア・システム

PDF Viewer-PDF表示- C++(MFC)サンプル

PDF Viewer 「PDF Viewer」ソフトは、PDF文書を表示するためのコンパクトで洗練されたコンポーネントです。 このコンポーネントは、PDFのみならずTIFFやJPEGなどのラスタ画像をも表示でき、ディスプレイ上の文書を印刷することもできます。

PDFビューア・コンポーネントは、ユーザの利用できる機能を制限(保存や印刷機能を抑制)するアプリケーションを作成できます。

OCXとして利用できますので、リッチクライアントやWebアプリケーションなど多くのアプリケーションに統合できます。

WPFに対応しています。

他のC++(MFC)サンプルC#VB6.0 のサンプルを公開しています。
無償評価版(リンク先は英語)はこちらです。 ダウンロード手順
機能概要はこちらです。
PDF Viewer ソフト 購入(価格)

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

 ライブラリ(評価版API)は無償でダウンロード(試用)できますので、PDF Viewer ダウンロード手順を参照してダウンロードください。
 ファイルをダウンロードしてから、適当なフォルダーにインストールもしくは解凍します。以下のようなフォルダーができあがりますので、適宜ご利用ください。
binライブラリやライセンスマネージャー、およびフォントファイルなど
doc使用説明書など
includeC/C++用のヘッダー(.h)ファイル
libC/C++用のlibファイル
samples各種開発言語のサンプル
サンプルの実行前に、フォントを必要に応じてシステムのフォントフォルダーにコピーします。
ライブラリは、以下の手順に従って登録します。
1.bin/viewerOCX.dllをWindowsのSystem32フォルダーにコピーします。
日本語が文字化けする場合は、pdcjk.dllも同様にコピーしてください。
2.「コマンド プロンプト」を管理者権限で起動します。
3.Dllをコピーしたフォルダーに移動します。(例: C:\>cd \Windows\System32 を実行します。)
4."regsvr32 ViewerOCX.dll"を実行して登録します。成功を示すダイアログが表示されます。
5.Visual Studioのツールボックスで右クリックメニューで「アイテムの選択(I)...」を選択してツールボックス アイテムの選択ダイアログを表示させます。 表示したダイアログの「COMコンポーネント」タグをクリックします。表示されたコンポーネントの「PDFViewer Class」をチェックしてOKボタンを押下します。これによって、PDF Viewerツールがツールボックスに表示されます。

また、無償評価版と共にダウンロードしたライセンスキーをbin/LicenseManager.exeを使って登録してください。 ライセンスキーの登録方法はこちらです。

フィットモードや表示倍率を変更するC++(MFC)サンプルと解説

フィットモードを変更したり、表示を拡大縮小するC++(MFC)のアプリケーションを作成します。フィットモードには以下の種類があります。
実際のサイズで表示するモード
ページ全体を表示するモード
ウィンドウの幅に合わせて表示するモード(既定の動作)
表示倍率を指定して表示するモード
サンプルでは、ダイアログ ベースのMFCのアプリケーションを使用しますので、ウィザードなどで作成し、フォームに“PDF Viewer Class”を貼り付けておきます。 貼り付けたクラスにm_viewerという名前で変数を追加しておきます。
ダイアログクラスのOnInitDialog()に以下のようにコードを追加します。
#include "pdfviewerdecl.h"      //表示オプションの定数に必要

BOOL CFitDlg::OnInitDialog()
{
    ...
    // TODO: 初期化をここに追加します。
    m_viewer.Open((LPCTSTR)"input.pdf",(LPCTSTR)"");
    m_viewer.put_FitMode(eFitModePage);

    return TRUE;  // フォーカスをコントロールに設定した場合を除き、TRUE を返します。
}
Open( ) 指定されたPDF文書を表示します。 インターネット上のファイルを開く場合
引数は、以下を指定します。
第一引数表示するPDFファイルパスを指定します。
第二引数PDF文書が暗号化されている場合にパスワードを指定します。
暗号化されていない場合は、NULL文字列またはNULLを指定します。
put_FitMode( ) フィットモードを指定します。
以下の値を指定できます。
定数内容
eFitModeWidthウィンドウの幅に合わせて表示表示します。(既定の動作)
eFitModePageページ全体を表示
eFitModeActualSize実際のサイズで表示します。
表示の倍率( m_viewer.put_Zoom() )を指定すると、上記のモードに関係なく表示が拡大・縮小されます。
拡大・縮小
表示を拡大・縮小するには、以下のように表示倍率を指定します。
m_viewer.put_Zoom((float)125.5);
put_Zoom( ) 等倍を100としてfloat値で指定します。(上記のフィットモードとは関係なく倍率を指定できます。)
現在の倍率を取得する場合は、以下のようにします。
float f = m_viewer.get_Zoom();
get_Zoom() 等倍を100としてfloat値で取得できます。
なお倍率が変化すると、OnZoomイベントが発火します。これを捕捉して、現在の倍率を以下のようにコンポーネントに表示させることができます。
void CFitDlg::OnZoomPdfviewer1(float fZoom)
{
    // TODO: ここにメッセージ ハンドラ コードを追加します。
    CString s;
    s.Format(TEXT("Zoom:%.1f"), fZoom);
//  s.Format(TEXT("Zoom:%.1f"), m_viewer.get_Zoom());
    m_zoom.SetWindowText(s);
}

インターネット(Web)上のPDF文書を直接表示する

PDF Viewerは、PDF文書を指定する際に、インターネット(Web)上のファイルを指定できます。
PDFファイルを指定する場合に、以下の形式で指定するとHTTPプロトコルでファイルにアクセスします。
http://[username:password@]domain[:port][/resource]
"username"および"password"は基本認証(Basic Authentication)のユーザー名とパスワード指定です。
またhttp:以外に、https:(HTTPS)、ftp:(FTP)も使えます。
サンプルでファイルを指定する際に以下のようにコードを変更すると、ネットワーク上のPDF文書を対象にします。
if (!m_viewer.Open(TEXT("http://www.pdf-tools.trustss.jp/data/Receipt2.pdf"), TEXT("")))
{
 ...
}

サンプル

 C++のサンプルは、こちらです。

ご質問、お問い合わせ

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

(記載の会社名および製品名は、各社の登録商標および商標です。)
PDF製品 C++サンプル
PDF Security
PDF Validator
PDF to PDF/A Converter
PDF to Image Converter
PDF Imager-LP
Image to PDF Converter
PDF Printer
PDF Viewer
PDF Viewer-L
PDF Prep Tool Suite
PDF Optimization
PDF Command Line Suite
PDF Extract
PDF Easy Parse
PDF Viewr サンプル
C++ サンプル
PDF文書を表示
「しおり」を非表示に
文書の指定ページを表示
レイアウトモード変更
フィットモード・拡大
Webリンクを表示
文書を比較表示
領域にズームイン
文書印刷
ページを回転表示
C# サンプル
VB6.0 サンプル
株)トラスト・ソフトウェア・システム
暗号化・電子署名・タイムスタンプ ライブラリ作成します。
お問い合わせください。