|
主な特徴
|
|
◆ ABCpdf .NET 13J の新機能一覧はこちら
|
●
|
.NET 8.0
New!
このリリースでは、ABCpdf が .NET8.0 対応として大幅に更新されました。
|
●
|
ABCChrome 117
New!
更新された ABCChrome 117 用のレンダリングエンジンが付属しています。
|
●
|
対応画像
New!
多くの新しい画像に関する機能を実装しました。
多くの新しいファイル形式のインポート/エクスポートに対応します。追加された対応可能ファイルの詳細は「新機能一覧」ページをご参照ください。
|
●
|
Ghent
Ghent PDF Output Suite は、PDF レンダリングソフトウェアの適合性をテストするように設計された、非常に要求の厳しい PDF レンダリングスイートです。
ほとんどの主流の PDF レンダリングエンジンは非準拠ですが、ABCpdf は、Ghent PDF Output Suite5.0 に完全に準拠するようになりました。
|
●
|
アノテーション
さまざまなタイプのマークアップを簡単に作成するための新しいフォームフィールドとアノテーション(注釈)クラスが多数あります。
|
●
|
HTML から PDF への変換機能
Google Chromium(x64のみ)をベースにした第3の HTML レンダリングエンジンが含まれるようになりました。
これで、現在の3つの主要なブラウザのいずれかをベースにした HTML から PDF への変換が選択できるようになりました。 Chrome スタイル変換、Firefox スタイル変換、または Internet Explorer スタイル変換を使用できます。
|
●
|
PDF 2.0 との互換性
PDF 2.0 との互換性があります。 XMP Metadata オブジェクトのような新しいクラスによる PDF 2.0 の変更を反映するようにドキュメントが更新されました。
|
●
|
Elements 名前空間
新しい Elements の名前空間は、PDF の仕様のすべてのテーブルを構造化された方法でカバーします。それは 300 以上のクラスからなる非常に大きなもので、PDF 2.0 までの使用をカバーします。
この構造化されたアクセスにより、多くの大きなメリットが得られます。
|
●
|
JavaScript のサポート
PDF フォームには フィールドの書式設定や計算に使用できる JavaScript の計算が含まれています。
バージョン 11 以降では、これらのタイプの計算と JavaScript のイベントをサポートします。
|
●
|
Rendering 機能のさらなる充実
標準的な 2D オブジェクトと同様に PDF フォーマットがサポートしている 3D オブジェクトで、 バージョン 10 でサポートしていた U3D(Universal 3D)要素に加え、バージョン 11 以降の一部として、PRC(Product Representation Compact)3D フォーマットもサポートします。
WebGL と OBJ の 3D エクスポートをサポートしており、他のカスタムフォーマットに簡単にエクスポートできるようにする新しいエクスポータインターフェイスもあります。
|
●
|
画像のエフェクト機能
画像を PDF 化する際に、シャープ化/自動レベル補正/コントラスト/レベル補正などの多数の一般的な効果や、渦巻き/波形などの変形処理を実現可能なエフェクト機能を有しています。
|
●
|
Photoshop ファイルをサポート
Photoshop の読込モジュールは、標準の PSD と大きな PDB イメージファイルのサポートもしています。これにより、RGB、グレースケール、CMYK、Lab、インデックス付きの2色イメージを直接インポートできます。
|
●
|
RTF をサポート
新しい RTF インポート モジュールは、ネイティブな Rich Text Format インポート モジュールで、ヘルパーアプリケーションなしで RTF を素早く簡単にインポートできます。
|
●
|
処理可能カラーの強化
PDF はさまざまなカラースペースをサポートしており、これまでの RGB、グレースケール、CMYK カラーの処理に加え、XColor オブジェクトを強化し、Lab、キャリブレーション済みの RGB、キャリブレーション済みのグレースケール、多チャンネルやパターンなどのその他のカラースペースが表示可能です。
|
●
|
充実したテキスト機能
以下のようなテキスト機能が含まれています。
・適切なカーニングをサポート(文字間隔の自動調整)・イメージなどのシェープの周りにテキストの挿入が可能な可変シェープ領域の作成・リーダー線付きの目次の作成の容易化・テキストの計測・位置決めのための新しいオプションを多数追加・FontObject のメソッド、プロパティを強化 など
|
●
|
容易に実現できる分析機能
シンプルで効果的な PDF ドキュメントの分析/分解が行えます。複雑な逆アセンブル、変更、再アセンブルが容易に実現できます。
|
●
|
動的なフィールドやアノテーション
フィールドやアノテーションは、位置やスタイルにインタラクティブにアクセスでき、より動的になっています。
|
●
|
PDF/A 規格をサポート
ABCpdf は PDF/A 規格をサポートしています。ドキュメントを検証し、それが PDF/A に準拠しているかを知らせる方法が多数あります。または、準拠文書を作成できるようにする方法があります。
|
●
|
あらゆるソースも PDF/A に準拠した文書に
ABCpdf にあるべき機能を使えるようにするために、実際には、ABCpdf が作成した物だけでなく、どのソースのどの文書でも PDF/A に準拠した文書を用意できるようにしました。この機能を持つ製品はほとんどありません。
|
●
|
Acrobat XI のサポート
ABCpdf は Acrobat XI をサポートしています。
|
●
|
透明度の平坦化を実装
透明度の平坦化を実装しました。文書の透明性は一般的ですが、第三者ソフトの透明性のサポート範囲は不完全である場合があります。PDF/A 規格はこれを問題だと認めており、このため透明性の使用を禁じています。高度なベクターの平坦化ルーチンを使用して、現在 ABCpdf は文書全体の見た目を損なわずに文書から透明性を取り除くことができます。取り除かれた文書はベクターですが、見た目はオリジナルと同じでも透明がすべて不透明に変換されます。
|
●
|
大量なドキュメントをサポート
64bit 環境で、GigaPDF の極めて大量なドキュメントのサポートを利用できます。これは GB の範囲を超えて PDF を読み込んだり保存したりするためのサポートを拡張します。実際、PDF の相互参照票がサポートしている最大サイズまでの PDF 文書をすべて扱います。ABCpdf は、非常に大量の文書の取扱に力を発揮します。
|
●
|
PDF の最適化とサイズの縮小
PDF の最適化とサイズの縮小は、頻繁に要望されている機能です。ABCpdf の新しいバージョンでは、フォントサイズを縮小したり、埋め込みフォントを削除したり、イメージのリサンプリングや再圧縮を行ったり、平坦化して出力を可能な限り小さくするためのさまざまなオプションを使用して文書全体の最適化を行うことができます。
|
●
|
PDF 分析の強化
PDF 分析を強化して、テキストやイメージを操作しやすくしました。表面下は複雑ですが表面上はシンプルで、PDF からありふれた、ハイフンや合字なしのテキストを抽出することができます。そして、PDF のそのテキスト項目を選択し、その選択を強調表示したり枠を付けたりすることができます。イメージ処理は、イメージの配置や解像度を簡単に定義したり、条件に合ったイメージを抽出したりすることができます。
|
●
|
PDF の増分更新
ABCpdf は PDF の増分更新を行えるようにしました。現在、1つの PDF 文書のそれぞれの更新を分析したり、いくつか前の更新に戻したりすることができます。これは非常に便利で、署名後に増分更新で内容が変わったデジタル署名付きの文書に適しています。
|
●
|
破損したドキュメントの検証と修復
破損したドキュメントは日ごろ扱わなくてはならない物です。弊社の多数のユーザが有効な PDF の検証方法を尋ねてきています。今回のリリースでは、ドキュメントが無効な場合に確実に例外を出す、非常に有効な PDF の検証ルーチンを持つことができました。そのような例外が出された場合、フルスキャンを使用してドキュメントを作成し直すことができるので、確実な検証ルーチンと強力な修正ルーチンを得ることになります。
|
●
|
TIFF のサポートを改良
TIFF のサポートを改良しました。これまで問題ありとされていた、普通ではない TIFF 形式(TIFF 形式の古い JPEG やさまざまなカラースペースのフレームが付いたマルチページ TIFF イメージを含む)のインポートをサポートしています。この種のイメージを作成したいとは思わないでしょうが、処理しなくてはならない場合は ABCpdf がお役に立ちます。出力に関しては、TIFF のメタデータはカスタムなタグを使用してフレキシブルに出力できます。
|
●
|
x86 と x64 の共存
ABCpdf は、現在 x86 と x64 の機能を名前の違う別々の DLL に分けています。つまり、bin ディレクトリまたはインストーラを使って x86/x64 を共存させるのがもっと簡単になったということです。更に、さまざまなデプロイメント状況でライセンス キーをより簡単にインストールするための登録メソッドがあります。
|
●
|
HTML インポートのプログラミングの改良
さまざまな HTML エンジンをサポートしました。Windows の MSHTML エンジンの他に、Mozilla Firefox の 新しいバージョンの Gecko エンジンをサポートしました。これにより PC との整合性が増し、より柔軟に CSS の構文をサポートすることができるようになりました。更に、Gecko のレイアウトエンジンは、ヘッダー (THEAD) やフッター (TFOOT) の反復表示をサポートしており、画面表示や印刷などが CSS から指定できます。またエンジンの切り替えをたった1行のコードで行えます。
|
●
|
Word (docx) と HTML 形式へのエクスポート
Word (docx) と HTML 形式へのエクスポートをサポートしています。また VML、HTML キャンバスやビットマップイメージを含むさまざまなドキュメントのグラフィックスを表現することができます。
|
●
|
MS Office アプリケーションとの統合を強化
Word、Excel、PowerPoint などの MS Office アプリケーションとの統合を強化しました。これにより、従来よりも速く確実に PDF ドキュメントを作成できます。
|
●
|
256 ビットの AES の暗号化
ABCpdf は、セキュリティ強化のため 256 ビットの AES の暗号化をサポートしています。AESV2 (128 ビット) や AESV3 (256 ビット) の暗号化された PDF ドキュメントの読込や書き込みが可能です。
|
●
|
PDF 生成の強化と最適化
PDF の生成処理が強化/最適化されました。全面的な最適化により一般的なPDFの生成作業、特に大量のイメージが含まれている PDF の生成スピードが劇的に速くなりました。更に、アダプティブパレット GIF やグレースケール PNG などのエクスポート形式をサポートしています。
|
●
|
Stream オブジェクトの圧縮オプション
Stream オブジェクトは、ASCII 85、ASCII Hex、Flate、Run Length など、さまざまな圧縮形式をサポートしています。また、DCT/JPEG、JPX/JPEG 2000、JBIG2 などのイメージ圧縮に加えて、ABCpdf は、PDF の仕様にあるすべてのイメージの圧縮形式をサポートしています。
|
●
|
署名コードの改良
Acrobat のようなより良いサポートのために、全面的に署名コードを改良しました。Acrobat と同じ規則の署名確認を導入しました。ドキュメントの署名や増分更新をサポートしており、タイムスタンプ サービス(TSS)を使って信頼性のある署名のタイムスタンプが追加できます。
|
●
|
XML Paper Specification (XPS) のフルサポート
Microsoft XPS でもページの記述やドキュメントの保存方法を提供していますが、現存の PDF スタンダードとの互換性がありません。ABCpdf は Adobe PDF と Microsoft XPS の完全な相互互換性をサポートしています。PDF ドキュメントから XPS、XPS から PDF に変換すると、ソースドキュメント本来の構造を保存するために慎重に変換ルーチン(カラースペースの保存や組み込みフォントの保存/変換)が書き込まれます。
|
|
●
|
Enhanced Encapsulated PostScript (EPS) のサポート
従来の EPS のインポート/エクスポートエンジンは非常に好評でした。しかし、フォントやカラースペースなどの一部の要素が取り除かれたため、必ずしも EPS から PDF への変換が望むように行われなかったので、今バージョンでは、EPS のインポートエンジンを完全に書き直して EPS から PDF に直接変換できるようにしました。これにより、EPS ファイルのテキストが PDF ドキュメントのテキストになり、EPS のソースファイル内固有のカラースペースは PDF ドキュメントのカラースペースと同じになります。他には、EPS のエクスポートに関してもさまざまなプリンタで使えるように複数のカラースペースのサポートも強化しました。これにより、グレースケール、RGB、CMYK の EPS を直接レンダリングできます。
|
●
|
XPS 機能の改良
あらゆるドキュメントを直接 ABCpdf にインポートできるように XPS の機能を改良しました。OpenOffice.org / Microsoft Office を使用して、Word、Excel、PowerPoint といった Microsoft Office のドキュメント形式を読み込んだり、ABCpdf やインターネットエクスプローラを使用して HTML ドキュメントを読み込むなど、さまざまなアプリケーションを使用してさまざまなドキュメント形式に対応することができます。
(なお、これらがすべてのアプリケーションではありませんし、標準の印刷コマンドをすべてサポートしているわけではありません。)
|
●
|
Tagged PDF(タグ付き PDF)のサポート
タグ付きの PDF 出力に対応しました。タグ付きの PDF は、文書を構造化することができます。これはページの要素(テキスト、グラフィックス、イメージなど)を他の目的のために抽出したり、再利用することが可能になります。「Tagged PDF」のサンプルも用意されています。
【出力したタグ付き PDF の例】
|
|
【サンプルコード(C#)】
//新しいDocとタグ付きのPDF文書の作成
Doc theDoc = new Doc();
TaggedContent theContent = new TaggedContent(theDoc);
//コンテナのタグを追加
theContent.BeginTaggedItem("Container");
//テキストの段落を追加
theDoc.Rect.Inset(40, 40);
theDoc.FontSize = 20;
theContent.AddTaggedText("P", "Tagged PDF ..... for other purposes.");
//イメージを追加
theDoc.Rect.String = "300 100 300 100";
theContent.AddTaggedImage("Image", inputDirectory +
@"images\aster1.jpg");
//ヘッダータグ(H1)付きの回転させたテキストを追加
theDoc.Rect.String = theDoc.MediaBox.String;
theDoc.Rect.Magnify(0.5, 0.5);
theDoc.FontSize = 30;
theDoc.Transform.Rotate(45, theDoc.Pos.X, theDoc.Pos.Y);
theContent.AddTaggedText("H1", "Gallia est omnis ..... Galli
appellantur.");
theDoc.Transform.Reset();
//コンテナを閉じる
theContent.EndTaggedItem();
//タグ付きのPDF文書を出力し、pdfファイルを保存
theContent.AddToDoc();
theDoc.Save(outputDirectory + "Simple.pdf");
|
|
●
|
PDF テキストの正確な制御
テキストの追加を制御するための新しい HTML スタイルのテキストオプションがあります。カレントの HTML レンダリングの設定をする XHtmlOptions オブジェクトには、ページの最後の不必要なコンテンツを自動的にクリッピングする AutoTruncate プロパティや PDF に変換する前に HTML ページをマークアップする DoMarkup プロパティ、新しいウィンドウを開くためのハイパーリンクを許可する TargetLinks プロパティなどが追加されています。
|
|
●
|
PostScript(ベクトルデータのインポート)および EPS / EPSF(ベクトルデータのインポート)
ABCpdf はポストスクリプトと互換性があり、ラスタやベクタの PostScript (PS)ファイルまたは Encapsulated PostScript(EPS) ファイルを直接 PDFドキュメントにインポートすることが可能になりました。つまり、PDFドキュメントを取得して、それを PS または EPS 形式にレンダリングすることができます。
|
|
●
|
SVG [Scalable Vector Graphics]のインポートをサポート
ABCpdf はSVGのインポートをサポートしています。SVGはベクトルグラフィックスを描くためのXMLベース形式で、構成が容易で、簡単にPDFに変換できます。
Doc オブジェクトのReadメソッドは、SVGやSVGZのドキュメントも読み込むことができます。ABCpdf はSVGのサブセットをサポートしています。
|
【サンプルコード(VB.NET)】
Dim theDoc As Doc = New Doc()
theDoc.Read(Server.MapPath("sample.svg"))
.....
.....
theDoc.Save(Server.MapPath("sample.pdf"))
theDoc.Clear()
|
|
●
|
大きなドキュメントの最適化
大きなドキュメントに対する HTML のレンダリングプロセスを大幅に最適化しました。DoMarkup などのプロパティを使用すれば更に速くレンダリングできます。
|
|
●
|
MHT(MIME HTML)のサポート
Doc オブジェクトの AddImageUrl メソッドは URL で指定した Web ページを処理します。このメソッドは、Web ページの URL だけでなく、MHT (MIME HTML)ファイルのURLも設定することができます。
MHT ファイルは Web ページと関連するリソース(イメージやスタイルシート等)をまとめて、一つのファイルとして構成されています。IE を使用して MHT フォーマットで Web ページを保存することもできます。
|
|
●
|
Officeドキュメントのサポート
|
●
|
拡張フォントメトリックスのサポート
ABCpdfで利用可能なフォントに関する情報を提供する「XFont クラス」が追加されました。システムにインストールされている全てのフォントや特定のフォントファミリーに属するフォントを検索するメソッドや、フォント名を示す完全なリストを表す Names プロパティなどの各種プロパティを実装しています。
|
|
●
|
System.Drawing の使用
PDF出力の System.Drawing コードを容易に移植するための ABCpdf13.Drawing のラッパーの名前空間を含んでいます。
通常スクリーンやイメージあるいはプリンターへ出力する時には System.Drawing のコードを記述します。
PDFへ出力する場合、ABCpdf は簡単に処理が作成できるようにラッパーコードを使用します。
ラッパーには以下の名前空間が含まれています。
WebSupergoo.ABCpdf13.Drawing;
WebSupergoo.ABCpdf13.Drawing.Drawing2D;
WebSupergoo.ABCpdf13.Drawing.Text;
ABCpdf13.Drawing には System.Drawing に含まれているクラスと同じクラスがあります。たとえば、System.Drawing.PenはWebSupergoo.ABCpdf13.Drawing.Pen にマップされ、System.Drawing.Bitmap は WebSupergoo.ABCpdf13.Drawing.Bitmap にマップされます。
System.Drawing のコードを ABCpdf13.Drawing のコードに変更する手続きは簡単です:
・System.Drawing の名前空間を ABCpdf13.Drawing(Drawing, Drawing.Text, Drawing.Drawing2D etc.) の対応する名前空間に変更
・System.Drawing の型を ABCpdf13.Drawing(Pen, Brush, Color etc.) の対応する型に変更
・System.Drawing のコードが ABCpdf.Drawing に無い場合コードを削除
一般的に、ABCpdf.Drawing に無いコードは少ないはずです。しかし Drawing のためのソースコードが提供されているので、アセンブリの拡張は簡単となります。
System.Drawing の関数と似ている標準的な関数だけでなく、ABCpdf13.Drawing の名前空間には、PDF の作成をコントロールするために似たような関数があります。
|
|
●
|
JPEG 2000[.jp2, .jpx]へのレンダリング処理
ABCpdf は JPEG 2000 をサポートしているので、JPEG 2000 で圧縮されたイメージが含まれているページをレンダリングすることができます。また、PDF ページを8ビットまたは16ビットで、RGB、グレースケール、または CMYK JPEG 2000 ファイルへのレンダリングや保存が可能です。
|
|
●
|
EPS や PostScript へのレンダリング処理
ABCpdf はポストスクリプトと互換性があり、ラスタやベクタの PostScript(PS) ファイルまたは Encapsulated PostScript(EPS) ファイルを直接PDFドキュメントにインポートすることが可能になりました。つまり、PDF ドキュメントを取得して、それを PS または EPS 形式にレンダリングすることができます。
|
|
●
|
Vector EMFへのレンダリング処理
ポストスクリプトと互換性があるだけでなく、EMF とも互換性があるので、直接ベクタの EMF へのレンダリングが可能です。つまり、高速で高品質な印刷出力が可能になり、他のアプリケーションとの相互運用が可能です。
|
|
●
|
PDF の要素を SVG(+) 形式で保存可能
PDFの要素をSVG(+)形式で保存することができます。これにより、PDFのテキストの検索や置換などを行ったり、ページにある各イメージを識別することができます。
下記のコードはtest.pdfから指定したフォーマットでコンテンツを取得します。
theID2はSVG形式のテキストファイルです。
【サンプルコード(C#)】
Doc theDoc = new Doc();
theDoc.Read("test.pdf");
string theID2 = theDoc.GetText("Svg");
textBox1.Text=theID2;
|
|
(theID2の結果)
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="612" height="792" x="0" y="0">
<text x="0" y="25.6" font-size="32" font-family="MS-Gothic">
ごれんらく......</text>
<text x="0" y="57.6" font-size="32" font-family="MS-PGothic">
大変申し訳......</text>
<text x="0" y="89.6" font-size="32" font-family="MS-PGothic">
いかがお過......</text>
<text x="0" y="121.6" font-size="32" font-family="MS-PGothic">
ましたか?</text>
</svg>
|
|
●
|
透明アルファチャンネルの出力をサポート
レンダリングしたイメージの出力をさらに制御できるようになりました。ABCpdf は、レンダリングした PDF の内容へのアルファ値のエクスポートをサポートしています。
|
|
以下の処理は、イメージの透明箇所で背景(青色)が表示されます。
1.テキストを描画するPDFを作成します。
2.アルファチャンネルを有効にしてPDFをレンダリングします。
3.青色の背景のPDFを作成し透明なイメージを追加します。
【サンプルコード(VB.NET)】
Dim theDoc As Doc = New Doc()
' テキストを追加
theDoc.FontSize = 196
theDoc.HPos = 0.5
theDoc.VPos = 0.3
theDoc.AddText("Hello World")
' PDFをアルファチャンネルでレンダリング
theDoc.Rendering.SaveAlpha = True
Dim alphaBitmap As Bitmap = theDoc.Rendering.GetBitmap()
' 青地のPDFを作成
theDoc = New Doc
theDoc.Color.String = "0 0 255"
theDoc.FillRect()
'下地の青色が透けるように
' PDFに透明なビットマップを追加
theDoc.AddImageBitmap(alphaBitmap, True)
' PDFの保存
theDoc.Rendering.Save(Server.MapPath("RenderingSaveAlpha.png"))
theDoc.Clear()
|
|
●
|
垂直方向と水平方向別々に解像度を設定可能
LZW や Flate といった TIFF 圧縮型やさまざまな垂直解像度や水平解像度の制御が可能です。
|
|
●
|
TIFF での複数ページの出力をサポート
|
●
|
署名付ドキュメントの作成/署名付ドキュメントの検証
デジタル署名のコードで、ドキュメントに署名したり、既存の署名が正当かを判別することができます。複雑なスクリプトや変わった文字の暗号化をサポートするために、PDFのレンダリングプロセスを大幅に強化しました。
【サンプルコード(VB.NET)】
|
'PDFドキュメントを読み込んで署名を行います。
'Sign メソッド
Dim theDoc As Doc = New Doc()
theDoc.Read(Server.MapPath("../Rez/Authorization.pdf"))
Dim theSig As Signature = theDoc.Form("Signature")
theSig.Location = "Washington"
theSig.Reason = "Schedule Agreed"
theSig.Sign(Server.MapPath("../Rez/JohnSmith.pfx"), "111111")
theDoc.Save(Server.MapPath("Signed.pdf"))
|
'ドキュメントを読み込み署名の確認を行います。
'署名は証明の発行者から発行される証明書を参照して確認されます。
'Validate メソッド
Dim theDoc As Doc = New Doc()
theDoc.Read(Server.MapPath("../Rez/Signed.pdf"))
Dim theCerts() As String = { Server.MapPath("../Rez/JohnSmith.cer") }
Dim theSig As Signature = theDoc.Form("Signature")
If (theSig.Validate(theCerts)) And (Not theSig.IsModified) Then
theDoc.AddText("Signature valid at " + DateTime.Now.ToString())
End If
theDoc.Save(Server.MapPath("SignedAndValidated.pdf"))
|
|
●
|
JPEG、JPEG 2000、CCITTでのストリームの圧縮
CCITT、JPEG、Flate または JPEG 2000 形式への圧縮が可能です。
|
|
●
|
PDF イメージのリサイズ
ABCpdf は PDF 内のイメージをさらに制御できるようになりました。洗練された高品質なリサンプリングアルゴリズムを使用して、イメージをサイズ変更することができます。
|
|
●
|
PDF イメージのリサンプリング
イメージを 1ビットから別の色深度にリサンプリングすることができます。
|
|
●
|
PDF イメージの色空間の変更
新しいカラースペースを割り当てたり、あるカラースペースから別のカラースペースに変換することができます。
|
|
●
|
ライブムービーの埋め込み
ABCpdf は、動画データ(AVI、MPEG、WMV など)を PDF ドキュメントに埋め込むことができます。
【サンプルコード(C#)】
theDoc.Pos.String = "40 400";
theDoc.AddText("Video File:");
MovieAnnotation movie2 =
new MovieAnnotation(theDoc, "80 40 520 360", Server.MapPath("video.wmv"));
|
|
|
|
●
|
外字のサポート
PDF ドキュメント作成時に、外字を埋め込むことができます。ただし、フィールドには外字を埋め込むことができません。
|
|
【サンプルコード(VB.NET)】
'フォントの設定
theDoc.Font = ("MSPゴシック", "Japanese", False)
theDoc = 48
'外字辞書
theID = theDoc.Font = ("EUDC", "Unicode")
'テキストの設定
SetText(theDoc, "これは外字です⇒"")
'PDF設定
theDoc.Save("AddFont_Japanese.pdf")
|
|
●
|
レンダリング / 表示 / ラスタ化
ABCpdf は、PDF ドキュメントを生成するだけではなく、Acrobat Reader を使わずに PDF ドキュメントを表示したり、印刷することができます。また、ラスタ化してさまざななイメージ形式で出力することもできます。たとえば、Acrobat Reader を使わずに、VB フォーム上の PictureBox を使った PDF 表示などが可能です。
RGB や CMYK、Grayscale、Lab のためのレンダリングの複雑な制御ができます。ICC カラープロファイルにより適切なキャリブレーションがサポートされています。完成した PDF ドキュメントを TIFF、JPEG、GIF、PNG などのラスタイメージとして出力できます。グレースケール表示におけるハーフトーンも適切に処理されます。
また、ABCpdf は透過処理サポートしています。アルファ値(透明度)を設定することにより、テキストや線、塗りつぶしなどに透明度を設定して描画できます。また透過設定を行ったオブジェクトに対してソフトマスクまたはクロマキーのマスクを設定することができます。簡単に GIF などの透明なイメージを描画することもできます。
【サンプルコード(VB.NET)】
Dim theDoc As Doc = New Doc
theDoc.Read("test.pdf")
PictureBox1.Image = theDoc.Rendering.GetBitmap()
theDoc.Clear()
|
|
フォームの PictureBox を使った PDF 表示の例
|
※場合により正しく処理できないPDFがございますので、詳しくは体験版にてご確認をお願い致します。
|
|
●
|
HTML / CSS の処理機能をサポート
|
|
Web ページを PDF に変換するために HTML / CSS 処理機能をサポートします。ライブリンク、ライブフォーム、タグ付き領域をサポートします。また、レンダリングのイベントを利用し、実行中の HTML の構造を修正することができます。
ライブリンクのサポート
PDF に Web ページを追加して、ドキュメントの中でページ間のリンクを可能にします。また、ページへのリンクとして Web サイトのリンクを残すこともできます。
ライブフォームのサポート
HTML 形式でフォームを作成し、このフォームをインタラクティブな機能を保持した状態で Acrobat フォーム内に作成できます。
タグ付き領域のサポート
標準の CSS タグを使用して HTML 内での領域を指定し、PDF の位置を正確に知ることができます。
|
|
●
|
機能強化された eForms のサポート
簡単にフィールドの値を参照したり修正できるなど eForms のサポートが機能強化されました。また、スタンプ機能では書式設定を行わずにフィールドの値を PDF に直接スタンプできます。
|
|
//StampAnnotations
theDoc.Pos.String = "40 600";
theDoc.AddText("Stamp annotations");
StampAnnotation stamp1 = new StampAnnotation(theDoc, "340 560 540 600", "DRAFT", "0 0 128");
StampAnnotation stamp2 = new StampAnnotation(theDoc, "340 505 540 545", "FINAL", " 0 128 0");
StampAnnotation stamp3 = new StampAnnotation(theDoc, "340 450 540 490", "NOT APPROVED","128 0 0");
|
|
●
|
図形の描画の機能
よく使用される図形の描画のために、AddPie、AddOval、AddPoly、AddArc などの機能があります。また低レベルでの PDF 演算子を使用して高度な描画を行う、非常に多くのサンプルやクラスもあります。
Dim theDoc As Doc = New Doc()
theDoc.Width = 80
theDoc.Rect.Inset(50, 50)
theDoc.Color.String = "255 0 0"
theDoc.AddPie(0, 90, True)
theDoc.Color.String = "0 255 0"
theDoc.AddPie(180, 270, False)
theDoc.Save(Server.MapPath("docaddpie.pdf"))
theDoc.Clear()
|
|
|
|
●
|
ブックマークの機能
ドキュメントのアウトラインの簡単な操作や修正のためのブックマークの機能があります。
|
|
●
|
テーブルクラスの機能強化とソースコードの提供
テーブルクラスの機能が強化されました。必要に応じて簡単に使用できるようにテーブルクラスがソースコードとして提供されています。
|
|
|
|
●
|
ドキュメント操作の機能
ページの並べ替えやコピー、削除のためにシンプルで強力な RemapPages メソッドが追加されました。
|
|
Dim theDoc As Doc = New Doc()
theDoc.Read(Server.MapPath("../mypics/sample.pdf"))
theDoc.FontSize = 500
theDoc.Color.String = "255 0 0"
theDoc.HPos = 0.5
theDoc.VPos = 0.3
Dim theCount, i As Integer
Dim thePages As String
theCount = theDoc.PageCount
thePages = ""
For i = 1 To theCount
theDoc.PageNumber = i
theDoc.AddText(i.ToString())
thePages = thePages + (theCount - i + 1).ToString() + " "
Next
theDoc.RemapPages(thePages)
theDoc.Save(Server.MapPath("docremappages.pdf")
theDoc.Clear()
|
|
|
●
|
PDF ドキュメントを Web ブラウザに直接転送
ABCpdf は PDF ドキュメントの作成や読込みおよび修正を行うことができます。また他の PDF ドキュメントからのページの追加や挿入、あるいは別の PDF ドキュメントの作成ができます。更に PDF ドキュメントをクライアントの Web ブラウザに直接転送することもできます。
|
|
●
|
PDF ドキュメント作成時のイメージデータ埋め込み
PDF ドキュメントには JPEG, GIF, TIFF, BMP, PNG, EXIF, WMF や EMF のイメージを含めることができます。また PDF ドキュメントの複数の別の場所からイメージデータを参照することができます。これは透かし(半透明)イメージや頻繁に使用するイメージには便利です。また、ABCpdf は RGB, CMYK やグレースケールのイメージをサポートしますので、高品質な印刷を行うアプリケーションを作成することができます。
|
|
●
|
PDF ドキュメント作成時に詳細なテキスト設定が可能
ABCpdf はインデント、カーニング、トラッキング、文字間や行間及び段落の空白、アライメントなどテキストを細かく制御することができます。
|
|
●
|
マルチランゲージ対応
ABCpdf は Unicode をサポートします。従ってどんなプラットフォームでも適切な言語パッケージや Unicode フォントへの参照が行われます。大きな CJK(中国語、日本語、韓国語)フォントについては、そのサブセットを使用することでメモリーの使用量を少なくし、サーバの負担も少なくします。
|
|
●
|
PDF ドキュメント作成時のグラフィックスサポート
ABCpdf は回転、拡大、傾きなどの変換機能をサポートしているので、回転の文字やイメージ、グラフィックスを簡単な命令で描画できます。
|
|
●
|
PDF ドキュメント作成時の暗号化、セキュリティ対応
ABCpdf は暗号化した PDFドキュメントを作成できます。暗号化キーは 40ビットから 128ビット長の設定ができます。また、ドキュメント更新許可やパスワード保護に対応しています。
|
|
●
|
PDF ドキュメント作成時のフィールドやフォームのサポート
ABCpdf はフィールドやフォームをサポートしますので、テンプレートドキュメントのプレースホルダを使用することによりダイナミックにドキュメントのレイアウトを設定できます。
|
|
●
|
PDF ドキュメント作成時の正確な位置指定
ABCpdf はテキストや線などのオブジェクトの位置を正確に設定することができます。
|
|
|
Unicode の使用例
|
|
ここでは日本語の扱い方を説明します。また、すべてのプラットフォームでドキュメントを正しく処理するためにフォントの組み込みとサブセット化を行います。
|
|
最初に ABCpdf のドキュメントオブジェクトを作成し、フォントのサイズを設定します。
|
[C#]
Doc theDoc = new Doc();
theDoc.FontSize = 32;
[Visual Basic]
Dim theDoc As Doc = New Doc()
theDoc.FontSize = 32
|
Unicode のテキストファイルから日本語のテキストを読み込みます。
|
[C#]
string thePath = Server.MapPath("../Rez/Japanese2.txt");
// Utilities.ReadString is an external function not defined here
string theText = Utilities.ReadString(thePath);
[Visual Basic]
Dim thePath As String = Server.MapPath("../Rez/Japanese2.txt")
'Utilities.ReadString is an external function not defined here
Dim theText As String = Utilities.ReadString(thePath)
|
すべてのプラットフォームでドキュメントの処理を確実にするために、Unicode のフォントを組み込みます。また、テキストを左から右方向への書き込み設定とフォントのサブセット化を行います。
|
[C#]
theDoc.Page = theDoc.AddPage();
theDoc.Font = theDoc.EmbedFont("MS PGothic", "Unicode", false, true);
theDoc.AddText("Japanese" + theText);
[Visual Basic]
theDoc.Page = theDoc.AddPage()
theDoc.Font = theDoc.EmbedFont("MS PGothic", "Unicode", False, True)
theDoc.AddText("Japanese" + theText)
|
ページを垂直方向に設定するモードに設定します。
|
[C#]
theDoc.Page = theDoc.AddPage();
theDoc.Font = theDoc.EmbedFont("MS PGothic", "Unicode", true, true);
theDoc.AddText("Japanese" + theText);
[Visual Basic]
theDoc.Page = theDoc.AddPage()
theDoc.Font = theDoc.EmbedFont("MS PGothic", "Unicode", True, True)
theDoc.AddText("Japanese" + theText)
|
最後に指定した場所に保存します。
|
[C#]
theDoc.Save(Server.MapPath("unicode.pdf"));
[Visual Basic]
theDoc.Save(Server.MapPath("unicode.pdf"))
|
【出力結果】
|
|
|
注意事項
|
PostScript (PS) または Encapsulated PostScript (EPS) につきましては、日本語をサポートしておりません。
|
|
ABCpdf のライセンスについて
|
※当製品はランタイムライセスフリーではございません。当製品を利用して開発したアプリケーションをインストール(配布)する際にも、インストールする PC の台数分のライセンスが必要となりますのでご注意ください。詳しくは、こちらをご覧ください。
お客様が ABCpdf のご利用時に必要なライセンスは、次の通りです。
|
インストールライセンス:
|
ABCpdf をコンピュータにインストールして使用するライセンスです。
また、ABCpdf を利用して開発したアプリケーションをインストール(配布)するライセンスにも適用できます。1インストールライセンス(通常製品)と3インストールライセンス、5インストールライセンス、エンタープライズライセンス(次項参照)があります。1インストールライセンスは1台のコンピュータだけにインストールして使用することができます。5インストールライセンスは最大5台のコンピュータにインストールして使用することができます。ABCpdf のインストールライセンスは開発時(デザインタイム)や実行時(ランタイム)の区別はありません。
たとえば、次のような場合、それぞれに「1インストールライセンス」が必要になります。
例1:
|
ABCpdf を開発のために1台のコンピュータにインストールする場合
※ 複数の端末がネットワークを通じて処理を行うことができるターミナルサーバにインストールして、端末で開発する場合は、使用する端末の台数分のライセンスが必要です。
|
例2:
|
ABCpdf を利用して開発した(Web)アプリケーションを自社(または他社)の Web サーバー1台にインストール(配布)して運用する場合
※ 1 台の PC に複数の仮想サーバーがあり、それらにインストールする場合は、インストールする仮想サーバー数分のライセンスが必要です。
|
例3:
|
ABCpdf を利用して開発した(クライアント)アプリケーションをエンドユーザの1台のコンピュータにインストール(配布)する場合
|
|
エンタープライズライセンス:
|
一事業所無制限のインストールライセンスです。同一事業所内であればコンピュータの台数に制限無く ABCpdf をインストールして使用できます。また、同一事業所内であればコンピュータの台数に制限無く、ABCpdf を利用して開発したアプリケーションをインストール(配布)することができます。
ABCpdf の機能を他の Web サービスや Web アプリケーションに提供する Web サービスとして使用する場合はエンタープライズライセンスが必要です。
|
再配布ライセンス:
|
ABCpdf を利用して開発した(クライアントまたは Web)アプリケーションを社内社外を問わず、コンピュータの台数に関係なく無制限に配布できるライセンスです。この再配布ライセンスは、配布アプリケーション1種類毎に必要です。たとえば、「製品 A」と「製品 B」は2種類のアプリケーションとみなします。しかし、「製品 A-Ver.5」と「製品 A-Ver.6」のように同一製品間のバージョンなどによる違いは、同一のアプリケーションと考えて、1再配布ライセンスで対応できます。
なお、再配布ライセンスを開発用のインストールライセンスとして使用することはできません。開発を行う場合は、インストールライセンスが別途必要です。
|
【ABCpdf を利用した開発ツールソフトウェアの配布について】
|
上記3つの各ライセンスは、ABCpdf を利用した「開発ツールソフトウェア」の配布にはそのまま適用はできません。しかし、お客様のご要望のライセンスを受け付ける体制がございますので、お気軽に弊社までご連絡ください。ここでの「開発ツールソフトウェア」とは、統合開発環境ソフトウェア(IDE)や DLL・OCX、その他ライブラリなどのソフトウェア部品(コンポーネント)などを指します。
|
|