Foxit MobilePDF SDK

  • すぐにお使いいただけるビューアコントロール
  • インタフェイスやツールのカスタマイズ
  • エンタープライズでの利用に耐える描画品質
  • 透過的なメモリ管理
  • iOS / Android に最適化

Foxit MobilePDF SDK は、Foxit の強力な PDF 技術を開発者が容易に組み込むことが出来るようにデザインされたモバイルプラットフォーム向けの高速開発キット(Rapid Development Kit – RDK)です。Foxit MobilePDF SDK を使用すれば、PDF に不慣れな開発者でも、たった数行のコードでプロフェッショナルな品質の PDF ビューアを素早く作成することが出来ます。
Foxit MobilePDF SDK は 3 つのコンポーネントで構成されています:

View コントロール

iOS や Android での PDF ファイルの表示に使いやすい API を備えた高度な表示コントロールです。コアレベルで広く使われ、既に数々のご好評をいただいている Foxit の描画技術により、View コントロールは高速で高画質のズーム、スクロール、ページ移動機能を提供します。なんと言っても、本製品の特長はモバイルアプリケーションの組込に最適化していることです。評価版で是非その使いやすさを体感してください。

UI 拡張コンポーネント

UI 拡張コンポーネントを使用して、テキスト選択や、アノテーション、ナイトモード、ブックマーク、全文検索と言ったビルトインツールを使用してカスタマイズ可能なユーザインタフェイスを作成することが出来ます。ツールコンポーネントは素早く組み込むことが出来るようにコンパイル済のコンポーネントとして提供されます。また、より高度なカスタマイズを望む開発者のために、既定のユーザインタフェイスをカスタマイズしてデフォルトツールの機能を正確にコントロールすることが出来るように、ツールコンポーネントのソースコードも添付されています。

PDF コア API

PDF コア API はこの RDK の心臓部で、View コントロールや UI 拡張コンポーネントで使用するすべての機能を含んでいます。PDF コア API は文書の描画や、解析、テキスト抽出、テキスト検索、アノテーションの作成、ページの編集などのために個別に利用することが出来ます。機能の詳細については「特長」をご覧ください

動作環境

  • Foxit MobilePDF SDK for iOS
    • iOS 8.0 以上
    • Xcode 7.0 以上
  • Foxit MobilePDF SDK for Android
    • Android 2.2 以上 / API 8 以上
    • 32/64-bit ARM (armeabi-v7a/arm64-v8a) または 32-bit Intel x86 CPU

主な機能

  • モバイルアプリケーションに特化したすぐに使える PDF ビューア
  • カスタマイズ可能なユーザインタフェイス
  • アノテーションツール
  • 全文検索
  • ブックマーク(しおり)、サムネイル、コメントパネル
  • ナイトモード
  • UI 操作のマルチスレッド化対応

RDK の構成

Foxit MobilePDF SDK の各機能は 3 つの異なるレベルで提供されています:

各コンポーネント

View コントロール

View コントロールは PDF ファイルを表示するベースビューアを作成するためのユーティリティークラスです。

  • 様々なソースからの文書の読込
    • 文書のハンドル
    • ファイルパス
    • メモリ(バッファ)
  • 文書の保存
  • 先頭ページへ移動
  • 最終ページへ移動
  • 次のページへ移動
  • 前のページへ移動
  • 指定ページへ移動
  • 前のビューへ移動
  • 次のビューへ移動
  • ズームレベルの設定・取得
  • 特定位置からのズーム
  • キネティックスクロール(フリック操作によるページ移動)
  • ダブルタップによる拡大・縮小
  • ページレイアウトモードの設定・取得
    • 連続
    • 単ページ
    • 見開き(iOS iPad のみ)
  • ナイトモードの設定
  • 背景色の指定
  • サムネイル表示モード
  • 回転:デバイスの回転時に現在位置を保持しながら自動的にリサイズ
  • 座標変換
  • メモリ管理(メモリ不足時の自動復旧)
  • システムイベントのハンドリングとビューアコントロールレベルのイベントハンドリング

UI 拡張コンポーネント(およびソースコード)

UI 拡張コンポーネントはカスタマイズ可能な、組込 UI コンポーネントや機能を提供します。

  • しおりパネル(ブックマーク)
  • アノテーションパネル
  • アノテーション(追加、削除、編集)
    • ハイライト
    • 下線
    • 取消線
    • ノート
    • フリーハンド
  • 選択ツール
  • 検索ツール
  • ファイルプロパティ(iOS ではリーダーレベルで実装)

PDF コア API

PDF コア API は Foxit MobilePDF SDK のビューアレベル以外のすべての機能を含みます。

低レベルのPDFオブジェクトサポート

  • 低レベル PDF オブジェクトへのフルアクセス
  • 高レベル API で提供されない機能は低レベルの PDF オブジェクト API を使用して実装することができます。

PDF ドキュメント

  • 様々なソースからの文書の読込
    • パスからの読込
    • バッファからの読込
    • ファイルハンドルからの読込
  • ファイル変更のチェック
  • ファイル暗号化のチェック
  • 表示モードの取得
  • ブックマークの取得
  • ラベル情報の取得
  • タイトル、作成者、サブタイトルなどの文書情報の取得
  • カタログの取得
  • 文書のトレーラの取得
  • インダイレクトオブジェクトの取得
  • インダイレクトオブジェクトの追加
  • インダイレクトオブジェクトの削除
  • アクセス権の取得
  • メタデータの取得
  • 様々なフラグによる文書保存
    • 標準
    • インクリメンタル
    • オブジェクトストリームで保存(ファイルサイズの縮小に利用可)
  • 文書のテキスト検索

PDF ページ

  • プログレッシブなページ走査
  • ページの描画
  • ページ辞書の取得
  • ページサムネイルをビットマップに読込
  • PDF ページのコンテント領域を計算
  • アノテーションの追加・削除
  • ページサイズの取得
  • ページ回転の取得
  • ページリンクの取得(テキストリンク、アノテーションリンク)
  • テキストの選択

描画

  • プログレッシブ描画
  • 背景・前景色の設定
  • ハーフトーンによる画像の伸張

ブックマーク(しおり)

  • ブックマーク情報の取得
  • ブックマークの取得
  • ブックマークの色・タイトル・スタイル・リンク先の取得・設定

アノテーション(ハイライト、取消線、下線、フリーハンド、ノート)

  • 追加・削除・編集
  • プロパティの取得・設定

モバイルに最適化

Foxit Software は、その小型で高速、軽量な Foxit Reader アプリケーションで広く知られています。PDF 規格の開発元ベンダーの PDF リーダーに引けを取らない描画品質と、それを遙かに上回る高速な描画速度を備えています。こうした特長には以下の様な Foxit 独自の技術が活かされています:

  • 巨大な PDF を描画するためのキャッシングシステム
  • ストリップによる描画(iOS)
  • タイリングによる描画(Android)
  • UI 操作のマルチスレッド化(UI スレッドをユーザ操作レイヤから分離)
  • メモリ管理機構(メモリが少ないモバイルプラットフォームでは必須)

優れた描画品質

優れた描画品質は多様な PDF ファイルをサポートするために非常に重要です。高い描画品質を求めるフォーチュン500企業からの要望に応えて、Foxit Software では多数の専門の開発チームと品質管理チームが品質と性能の向上に取り組んでいます。
ここでは、Foxit の技術を他社と比較して、その優れた点をご紹介したいと思います:

CMYK カラー

左側は私の最大の競合ベンダーの CMYK カラーの描画結果です。右側は Foxit の描画結果ですが、Foxit の描画結果の方が正確です。


他社 CMYK カラー

Foxit CMYK カラー

シェード

左の競合ベンダーでは放射状グラデーションシェードの描画に失敗しています。右の Foxit の描画結果ではすべてのシェードが正しく描画されています。


他社シェード

Foxit シェード

縦書テキストのアノテーション

左の競合ベンダーでは縦書きテキストを正しく認識できず、アノテーションの描画が間違っています。Foxit は世界各地における豊富な技術サポートの経験により、縦書や右から左へ記述する言語の処理方法を常に改善し続けています。


他社縦書テキスト

Foxit 縦書きテキスト

メモリ管理

メモリ管理機構は RDK レベル、つまりビューアコントロールレベルで実装されます。開発者は独自にメモリ不足時の処理を実装する必要はありません。
V1.0 では、メモリ不足になったとき、RDK がライブラリを再初期化して文書を再度開いてメモリ不足が発生する前の状態に復帰します。しかし、このばあい編集操作などは失われます。たとえば、アノテーションを追加した後でメモリ不足になった場合、復帰後に追加したアノテーションは失われます。
また、RDK メモリ不足時と復帰完了時にイベントを発生させます。

優れたフォントハンドリング

Foxit の数々のテストを乗り越えてきたフォントレンダリングエンジンは、どんなに描画しにくいフォントでも描画することが出来ます。以下の例はフォントが埋め込まれていない PDF ファイルの描画結果を比較しています。フォントが添付されていない PDF の描画は各社のフォントレンダリングエンジンの性能を比較するのに良い素材です。Foxit の優れたフォントマッチングアルゴリズムにより、オリジナルのフォントに最も近いフォントを正確に割り出してテキストを表示することができます。左側は未熟なフォントマッチング技術で描画した結果です。これに対して Foxit の描画結果はオリジナルに近いフォンを自動的に割り出すことが出来ます。


競合ベンダーのフォント描画

Foxit のフォント描画

高速描画

Foxit の描画エンジンのスピードは、Foxit Reader に代表される弊社製品において既に数々のご好評をいただいております。弊社のテストで使用する 1,331 の文書のうち 1,116 を競合他社の製品以上のスピードで処理することが出来ます。また、188 ファイルは競合製品では処理できません。Foxit の技術は高速で正確であるばかりでなく、実際に「使える」ところが最大の特徴です。

ワールドワイドサポート

過去 15 年にわたって Foxit は米国をはじめ、ヨーロッパ、日本、台湾、韓国、オーストラリアなどの世界各国で活動して参りました。これにより、現在では世界のどの地域でもリアルタイムの技術サポートを提供できるようになりました。