.NETインターフェイス

.NETインターフェイスを使えば、Visual Basic.NET、Visual C#.NET などで作成された .NETアプリケーションから AH Formatter V6.5 の機能を利用することができます。

.NETインターフェイスは、Microsoft .NET Framework 4.0 環境にて動作します。

注意: .NETインターフェイスを利用するとき、AH Formatter V6.5 と他のバージョンの AH Formatter または XSL Formatter を同一マシンにインストールしておくことはできません。どちらかをアンインストールして、環境変数PATHに不要な AH Formatter または XSL Formatter へのPATHが含まれないようにしてください。
Windows版(32ビット版)を Windows x64 Edition にインストールすることができますが、その場合に.NETインターフェイスを利用するときは、/platform:x86 を指定してください。

コンポーネントの登録

AH Formatter .NETコンポーネントはグローバルアセンブリキャッシュへ自動的には登録されません。使用するにはアプリケーションのカレントフォルダに配置するか、もしくはアプリケーション構成ファイルを作成するなど、なんらかの方法でパスを解決する必要があります。

.NETコンポーネントファイル名 .NET Framework 4.0 用 XfoDotNet40Ctl65.dll

.NET Framework を使用する場合に必要な再頒布可能パッケージは「動作環境」でご確認ください。

クラス

.NET コンポーネントには以下のクラスが含まれます。

名前 機能
XfoObj AH Formatter V6.5 本体のクラスです。このクラスは IDisposableインターフェイスを実装しています。XfoObjクラスオブジェクトの使用を終了するときはリソースを解放するためにDisposeメソッドを呼ぶようにしてください。

以下はC#の例です。

XfoDotNetCtl.XfoObj obj = new XfoDotNetCtl.XfoObj(); try { // 何かの処理 } finally { obj.Dispose(); }
XfoException AH Formatter V6.5 の例外クラスです。XfoObjクラスのExecuteメソッドがスローします。

プロパティ

XfoExceptionクラスのプロパティには以下のものがあります。

名前 入出力 機能
ErrorLevel Int32 R 組版でエラーが発生した場合のエラーレベルを示します。
1.情報
2.警告エラー
3.回復可能エラー
4.致命的エラー
ErrorCode Int32 R 組版で例外エラーが発生した場合のエラーコードを示します。正常終了した場合はゼロです。ゼロ以外は、何らかのエラーが起こったことを示します。
Message String R 組版で例外エラーが発生した場合にエラーメッセージが格納されます。メッセージは英文です。

XfoObjクラスのプロパティには以下のものがあります。

名前 入出力 機能
Version String R AH Formatter V6.5 のバージョン文字列を取得します。
DocumentURI String R/W 組版対象のXML/FO/HTMLドキュメントの URIを指定します。
  • 省略された場合、あるいは "@STDIN" の場合は、標準入力からFOドキュメントが読み込まれます。
標準入力から読み込まれるドキュメントは、常にFOと仮定されます。
StylesheetURI String R/W 組版で使用するXSL/CSSスタイルシートのURIを指定します。 指定されているXMLドキュメントがFOの場合や、XMLファイルが <?xml-stylesheet ...?> の処理命令を含んでいてスタイルシートが指定されている場合、 指定されているドキュメントがHTMLの場合などは、スタイルシートの指定は必要ありません。
スタイルシートが CSS の場合は、最後のユーザスタイルシートとなります。 これは、AddUserStylesheetURI によって追加するスタイルシートや、AddOptionFileURI によって指定されたオプション設定ファイル中の指定よりも後に適用されます。
StylesheetTitle String R/W 優先するスタイルシート処理命令 <?xml-stylesheet title="..."?> のタイトルを指定します。
FormatterType Int32 R/W 組版種別を指定します。次の組版種別が指定できます。省略時および不正な値のときは、自動判定になります。
0.自動判定
1.HTML
2.XHTML
3.XML+CSS
4.XSL-FO
HtmlDefaultCharset String R/W HTMLのデフォルトのエンコーディングを指定します。 ここでの指定は、エンコーディングが不明なHTMLに対して適用されます。
OptionFileURI String R/W AH Formatter V6.5 のオプションを記述したXML形式のオプション設定ファイルのURIを指定します。オプション設定ファイルの内容は、直ちに評価されます。すでに設定されているプロパティと背反する設定は上書きされます。 AddOptionFileURI で追加されたURIは破棄されます。
OptionFileCount Int32 R 設定済みのオプション設定ファイル数を取得します。
PrinterName String R/W 組版結果の出力形式または出力するプリンタ名を指定します。
  • プリンタ名が指定された場合は組版結果をそのプリンタへ出力します。
  • "@STDPRN" が指定された場合は、 "通常使うプリンタ" へ出力します。
  • "@PDF" が指定された場合は、組版結果を PDF へ出力します。
  • "@SVG" が指定された場合は、組版結果を SVG へ出力します。
  • "@PS" が指定された場合は、組版結果を PostScript へ出力します。
  • "@XPS" が指定された場合は、組版結果を XPS へ出力します。
  • "@INX" が指定された場合は、組版結果を INX へ出力します。
  • "@MIF" が指定された場合は、組版結果を MIF へ出力します。
  • "@DOCX" が指定された場合は、組版結果を Word(docx) へ出力します。 V6.5
  • "@TEXT" が指定された場合は、組版結果をテキスト形式で出力します。
  • "@AreaTree" が指定された場合は、組版結果のエリアツリーを出力します。
省略された場合は "@PDF" が指定されたとみなされます。
プリンタ名に関しては、「プリンタ名の指定方法」を参照してください。
PDF出力に関しては、「PDF出力」を参照してください。
SVG出力に関しては、「SVG出力」を参照してください。
PostScript出力に関しては、「PostScript®出力」を参照してください。
XPS出力に関しては、「XPS出力」を参照してください。
INX出力に関しては、「INX出力」を参照してください。
MIF出力に関しては、「MIF出力」を参照してください。
Word(docx)出力に関しては、「Word(docx)出力」を参照してください。
テキスト出力に関しては、「テキスト出力」を参照してください。
PrinterSettingURI String R/W プリンタ設定ファイルのURIを指定します。このファイルの作成方法は「プリンタ設定ファイルの作成方法」を参照してください。
OutputFilePath String R/W 組版結果の出力先ファイルパスを指定します。 PrinterNameで出力形式にプリンタが指定されている場合は、印刷結果がプリンタドライバによって、指定したファイルに保存されます。 プリンタ以外の出力形式が指定されている場合は、その出力形式で、指定したファイルに保存されます。 省略された場合、あるいは"@STDOUT" が指定された場合は標準出力に出力します。
OutputFOPath String R/W 入力ファイルがXMLドキュメントとXSLスタイルシートのとき、XSLTの結果のFOの出力ファイルを指定します。
  • 入力ファイルがFO(またはHTMLなど)のときは、出力されません。
  • "@STDOUT" の場合は、標準出力とみなされます。
省略された場合は出力されません。
ExternalXSLT String R/W 外部XSLTプロセッサのコマンドラインを指定します。省略された場合は、既定の MSXML が使用されます。例えば、
xslt %param -o %3 %1 %2
%1~%3の意味は以下のとおりです。
  • %1 : XMLファイル
  • %2 : XSLファイル
  • %3 : XSLT出力ファイル
  • %param : xsl:param
%1~%3 はパラメータ位置を表すのに使用します。実際のファイル名を指定してはなりません。xsl:param を使用する場合は、XSLTParamFormatとSetXSLTParamでパラメータを指定しておく必要があります。
XSLTParamFormat String R/W 外部XSLTプロセッサを使用する場合の xsl:param パラメータ形式を指定します。例えば
-p %p %v
%pと%v意味は以下のとおりです。
  • %p : パラメータ名
  • %v : パラメータ値
BaseURI String R/W デフォルトのベースURIを指定します。
FormattedPages Int32 R 組版したページ数を取得します。
TwoPassFormatting Boolean R/W 解決しない<fo:page-number-citation>を大量に持つ巨大な文書の組版では、ページ情報の破棄が不可能なためメモリを大量に消費します。そのため、組版できるページ数に限界が生じてしまいます。 このパラメータは、組版を2パスにすることでその問題を解決します。組版に要する時間は増えますが、消費するメモリは解決すべきページ番号情報だけとなり、ごくわずかとなります。 大規模文書の組版を参照してください。 CSS組版では無効です。
MultiVolume Boolean R/W PDFを分冊出力するときに指定します。FO中に axf:output-volume-info 拡張要素が含まれていないときはエラーです。 false のとき、StartVolume/EndVolume は無効で、StartPage/EndPage が有効です。 true のとき、StartPage/EndPage は無効で、StartVolume/EndVolume が有効です。
StartVolume
EndVolume
Int32 R/W MultiVolume=true のとき有効で、 出力の開始分冊と終了分冊を指定します。 開始分冊が省略された場合や 0以下の場合は、先頭分冊からとみなされます。 終了分冊が省略された場合や実際の分冊数より大きい場合は最終分冊までとみなされます。 矛盾する指定、例えば StartVolume=5 EndVolume=3 のような場合はエラーです。
TotalVolumeCount Int32 R PDF分冊出力時の全分冊数を取得します。
OutputVolumeCount Int32 R PDF分冊出力時の実際に出力した分冊数を取得します。
StartPage
EndPage
Int32 R/W 出力の開始ページと終了ページを指定します。 開始ページが省略された場合や 0以下の場合は、先頭ページからとみなされます。 終了ページが省略された場合や 0の場合、あるいは実際のページ数より大きい場合は最終ページまでとみなされます。 矛盾する指定、例えば StartPage=5 EndPage=3 のような場合はエラーです。
ExitLevel Int32 R/W 組版でエラーが発生した場合の処理の中止条件を指定します。ExitLevel で指定したエラーレベル以上のエラーが発生した場合、AH Formatter V6.5 に組版を中止させます。初期値は2(警告エラー)で、2以上の場合は組版を 中止します。1~4の値を指定してください。5以上の値を指定した場合は4(致命的エラー)が指定されたとみなされます。4(致命的エラー)が発生した場合は指定したエラーレベルに関係なく処理は打ち切られます。なお、エラー表示自体は、どのレベルを指定しても表示されません。
ErrorLevel Int32 R 組版でエラーが発生した場合のエラーレベルを示します。
1.情報
2.警告エラー
3.回復可能エラー
4.致命的エラー
ErrorCode Int32 R 組版でエラーが発生した場合のエラーコードを示します。正常終了した場合はゼロです。ゼロ以外は、何らかのエラーが起こったことを示します。
ErrorMessage String R 組版でエラーが発生した場合のエラーメッセージ本体です。
ErrorStreamType Int32 R/W 組版中、設定したエラーレベル未満のエラーが発生した場合に標準出力、もしくは標準エラー出力へ、エラーメッセージを出力します。デフォルトではエラー情報を出力しません。
0.出力しない
1.標準出力
2.標準エラー出力
XmlDomDocument System.Xml.XmlDocument W 組版対象のXMLドキュメントをSystem.Xml.XmlDocumentクラスのオブジェクトで指定します。
XmlDomStylesheet System.Xml.XmlDocument W 組版で使用するXSLスタイルシートをSystem.Xml.XmlDocumentクラスのオブジェクトで指定します。

プロパティ – PDF出力の設定

名前 入出力 機能
PdfVersion Int32 R/W 作成するPDFのバージョンを指定します。バージョン番号は以下のいずれかを指定してください。
0.PDF1.3
1.PDF1.4
2.PDF1.5
3.PDF1.6
4.PDF1.7
101.PDF/X-1a:2001
103.PDF/X-3:2002
104.PDF/X-1a:2003
105.PDF/X-2:2003
106.PDF/X-3:2003
107.PDF/X-4:2010
200.PDF/A-1a:2005
400.PDF/A-1b:2005
601.PDF/A-2a:2011 V6.5
602.PDF/A-2b:2011 V6.5
603.PDF/A-2u:2011 V6.5
604.PDF/A-3a:2012 V6.5
605.PDF/A-3b:2012 V6.5
606.PDF/A-3u:2012 V6.5
1002.PDF1.5/UA-1:2014
1003.PDF1.6/UA-1:2014
1004.PDF1.7/UA-1:2014
PdfEncryptLevel Int32 R/W 作成するPDFの暗号化時のキー長を指定します。キー長は以下のいずれかを指定してください。このパラメータは PdfVersion でPDF1.4以降を指定しなければ有効になりません。
0.40bit RC4
1.128bit RC4
2.128bit AES
3.256bit AES
128bit AES はPDF1.5以降で、256bit AES はPDF1.7以降で有効です。
PdfTag Boolean R/W タグ付きPDFを生成します。PDFのバージョンによって、タグ付きにできないときは無視されます。
PdfReversePage Boolean R/W ページを逆順に出力します。
PdfUserPassword String W PDFに設定するユーザパスワードを指定します。パスワードは32バイト以内でなければなりません。
PdfMasterPassword String W PDFに設定するマスタパスワードを指定します。パスワードは32バイト以内でなければなりません。
PdfOwnerPassword String W PDFに設定するオーナパスワードを指定します。パスワードは32バイト以内でなければなりません。
PdfNoPrinting Boolean R/W 作成されるPDFを印刷不可にします。
このプロパティは、PdfOwnerPassword の指定が必要です。
PdfNoChanging Boolean R/W 作成されるPDFを変更不可にします。
このプロパティは、PdfOwnerPassword の指定が必要です。
PdfNoContentCopying Boolean R/W 作成されるPDFの内容をコピー不可にします。
このプロパティは、PdfOwnerPassword の指定が必要です。
PdfNoAddingOrChangingComments Boolean R/W 作成されるPDFの注釈やフォーム追加不可にします。
このプロパティは、PdfOwnerPassword の指定が必要です。
PdfNoFillForm Boolean R/W 作成するPDFのフォームフィールドの入力と署名を不可にします。このパラメータは PdfVersion でPDF1.4以降を指定しなければ有効になりません。 このパラメータを有効にするには、他のパラメータの設定が必要な場合があります。詳しくは「PDFリファレンス」を参照してください。
PdfNoAccessibility Boolean R/W 作成するPDFのスクリーンリーダデバイスのテキストアクセスを不可にします。 このパラメータは PdfVersion でPDF1.4以降を指定しなければ有効になりません。
PdfNoAssembleDoc Boolean R/W 作成するPDFのページの挿入、削除、回転を不可にします。 このパラメータは PdfVersion でPDF1.4以降を指定しなければ有効になりません。
PdfEmbedAllFontsEx Int32 R/W 組版結果内で使用されているフォントのうち、フォントの埋め込みが制限されていないフォントをすべて PDF に埋め込むか否かを次のいずれかで指定します。
0.指定されたフォントのみ
1.欧文基本14フォントを除くすべてのフォント
2.欧文基本14フォントを含むすべてのフォント
PdfEmbedFonts String R/W 作成するPDFに指定したフォントを埋め込みます。フォントを複数指定する場合はカンマ区切りで指定します。
PdfEmbedSubsetFontPercentage Int32 R/W 作成するPDFに指定したフォントを埋め込むとき、指定した値(パーセンテージ)以上の使用率のときフォントすべてを埋め込み、値未満のとき使用している文字のみの部分的な埋め込みを行います。 指定しなかったときは100とみなされるので、常に部分的な埋め込みが行われます。
PdfErrorOnEmbedFault Boolean R/W trueを指定するとフォント埋め込みに失敗したときにエラーを発行するようになります。
PdfErrorOnMissingGlyph Boolean R/W trueを指定するとフォントにグリフがなかったときにエラーを発行するようになります。
PdfPrintingAllowed Int32 R/W 作成するPDFの印刷を許可するかどうかを以下のいずれかで指定します。このパラメータは PdfVersion でPDF1.4以降を指定しなければ有効になりません。
0.許可しない
1.低解像度の印刷のみ許可
2.高解像度の印刷を許可
PdfImageCompression Int32 R/W PDFに直接格納できないカラー画像形式のとき、その画像はPDFと互換性のあるビットマップ形式に変換されてから格納されます。そのとき、PDFファイル内に格納するデータの圧縮方法を次のいずれかで指定します。自動 が指定された場合、PdfJPEGQuality、PdfRasterizeResolution の指定に従ってイメージデータを作成し、JPEG、ZLIB 圧縮のサイズの小さい方を選択します。 この設定は、カラー画像に対するものです。グレイスケール画像に対しては PdfGrayscaleImageCompression、白黒画像に対しては PdfMonochromeImageCompression を指定してください。
0.自動
1.JPEG圧縮
2.ZLIB圧縮
3.JPEG2000圧縮(PdfVersion が PDF1.5以降のときのみ有効)
4.LZW維持
PdfJPEGQuality Int32 R/W PDFに直接格納できないカラー画像形式のとき、PdfImageCompression に JPEG圧縮 が指定されたときの画質を 1~100 の範囲の数値で指定します。数字が大きいほど画質は良くなりますが、ファイルサイズは大きくなります。 この設定は、カラー画像に対するものです。グレイスケール画像に対しては PdfGrayscaleJPEGQuality を指定してください。
注意: JPEG形式の画像の画質を変更するためのものではありません。
PdfPutImageColorProfile Boolean R/W PDFに埋め込むカラー画像中のICCプロファイルをPDFに埋め込むかどうかを指定します。
PdfImageDownSampling Int32 R/W PDFに格納するラスタのカラー画像のダウンサンプリングの方法を指定します。0.ダウンサンプリングしない 以外が指定されたときはPdfImageDownSamplingDPIで指定された解像度以上の画像をPdfImageDownSamplingTargetで指定された解像度にダウンサンプリングします。 この設定は、カラー画像に対するものです。グレイスケール画像に対しては PdfGrayscaleImageDownSampling、白黒画像に対しては PdfMonochromeImageDownSampling を指定してください。
0.ダウンサンプリングしない
1.バイリニア法
2.バイキュービック法
3.ニアレストネイバー法
PdfImageDownSamplingTarget Int32 R/W ラスタのカラー画像をダウンサンプリングするときの解像度を指定します。
PdfImageDownSamplingDPI Int32 R/W ダウンサンプリングを行うラスタのカラー画像の解像度を指定します。
PdfGrayscaleImageCompression Int32 R/W PDFに直接格納できないグレイスケール画像形式のとき、その画像はPDFと互換性のあるビットマップ形式に変換されてから格納されます。そのとき、PDFファイル内に格納するデータの圧縮方法を次のいずれかで指定します。自動 が指定された場合、PdfGrayscaleJPEGQuality、PdfRasterizeResolution の指定に従ってイメージデータを作成し、JPEG、ZLIB 圧縮のサイズの小さい方を選択します。 この設定は、グレイスケール画像に対するものです。カラー画像に対しては PdfImageCompression、白黒画像に対しては PdfMonochromeImageCompression を指定してください。
0.自動
1.JPEG圧縮
2.ZLIB圧縮
3.JPEG2000圧縮(PdfVersion が PDF1.5以降のときのみ有効)
4.LZW維持
PdfGrayscaleJPEGQuality Int32 R/W PDFに直接格納できないグレイスケール画像形式のとき、PdfGrayscaleImageCompression に JPEG圧縮 が指定されたときの画質を 1~100 の範囲の数値で指定します。数字が大きいほど画質は良くなりますが、ファイルサイズは大きくなります。 この設定は、グレイスケール画像に対するものです。カラー画像に対しては PdfJPEGQuality を指定してください。
注意: JPEG形式の画像の画質を変更するためのものではありません。
PdfGrayscaleImageDownSampling Int32 R/W PDFに格納するラスタのグレイスケール画像のダウンサンプリングの方法を指定します。ダウンサンプリングしない 以外が指定されたときは PdfGrayscaleImageDownSamplingDPI で指定された解像度以上の画像を PdfGrayscaleImageDownSamplingTarget で指定された解像度にダウンサンプリングします。 この設定は、グレイスケール画像に対するものです。カラー画像に対しては PdfImageDownSampling、白黒画像に対しては PdfMonochromeImageDownSampling を指定してください。
0.ダウンサンプリングしない
1.バイリニア法
2.バイキュービック法
3.ニアレストネイバー法
PdfGrayscaleImageDownSamplingTarget Int32 R/W ラスタのグレイスケール画像をダウンサンプリングするときの解像度を指定します。
PdfGrayscaleImageDownSamplingDPI Int32 R/W ダウンサンプリングを行うラスタのグレイスケール画像の解像度を指定します。
PdfMonochromeImageCompression Int32 R/W PDFに直接格納できない白黒画像形式のとき、その画像はPDFと互換性のあるビットマップ形式に変換されてから格納されます。そのとき、PDFファイル内に格納するデータの圧縮方法を次のいずれかで指定します。 この設定は、白黒画像に対するものです。グレイスケール画像に対しては PdfGrayscaleImageCompression、カラー画像に対しては PdfImageCompression を指定してください。
0.CCITT Group4
1.CCITT Group3
2.Run Length圧縮
3.ZLIB圧縮
4.なし
PdfMonochromeImageDownSampling Int32 R/W PDFに格納するラスタの白黒画像のダウンサンプリングの方法を指定します。ダウンサンプリングしない 以外が指定されたときは PdfMonochromeImageDownSamplingDPI で指定された解像度以上の画像を PdfMonochromeImageDownSamplingTarget で指定された解像度にダウンサンプリングします。 この設定は、白黒画像に対するものです。グレイスケール画像に対しては PdfGrayscaleImageDownSampling、カラー画像に対しては PdfImageDownSampling を指定してください。
0.ダウンサンプリングしない
1.バイリニア法
2.バイキュービック法
3.ニアレストネイバー法
PdfMonochromeImageDownSamplingTarget Int32 R/W ラスタの白黒画像をダウンサンプリングするときの解像度を指定します。
PdfMonochromeImageDownSamplingDPI Int32 R/W ダウンサンプリングを行うラスタの白黒画像の解像度を指定します。
PdfLinearize Boolean R/W リニアライズPDFを出力するかどうかを設定します。
PdfCompressContentStream Boolean R/W 作成するPDF中のテキストとラインアートを圧縮してPDFのサイズを小さくするかどうかを指定します。
PdfUseLaunchForRelativeURI Boolean R/W ローカルファイルで指定された外部へのリンクをPDFのリンクプロパティにどのように変換するかを指定します。trueを指定すると"ファイルから開く"に変換され、falseを指定すると"World Wide Web リンク"に変換されます。
PdfRGBConversion Int32 R/W 作成するPDFのRGBカラースペース(DeviceRGB)をDeviceGrayに変換する方法を以下のいずれかで指定します。
0.変換しない
1.黒をデバイスグレイ
2.グレイをデバイスグレイ
3.すべてデバイスグレイ
4.すべてCMYKに
PdfConvertImageColorSpace Boolean R/W PDF/X、PDF/Aの出力のとき、含まれるRGB画像画像を自動的にCMYKに変換します。
PdfRasterizeResolution Int32 R/W ベクタイメージがラスタイメージに変換されてPDFに格納されるときのラスタイメージの解像度を70~500(DPI)の値で指定します。SVG、EMF、WMFはラスタイメージに変換されることなくPDF内に描画されます。
PdfImport3DAnnotation Boolean R/W 3Dオブジェクトのインポートを有効にします。
PdfOutputScale String W 出力PDFの拡大縮小率を指定します。長さには単位付きの値または%値が指定できます。
PdfOutputHeight String R/W 出力PDFの高さを拡大縮小します。長さには単位付きの値または%値が指定できます。
PdfOutputWidth String R/W 出力PDFの幅を拡大縮小します。長さには単位付きの値または%値が指定できます。
PdfErrorOnPDFXFault Boolean R/W PDF/XまたはPDF/A、PDF/UA出力のときエラーがあっても、処理を中止しないようにします。

プロパティ – SVG出力の設定

名前 入出力 機能
SvgVersion Int32 R/W 作成するSVGのバージョンを指定します。バージョン番号は以下のいずれかを指定してください。
0.SVG 1.1
1.SVG Basic
2.SVG Tiny
SvgImageProcessingType Int32 R/W 作成するSVGに含まれる画像の処理方法を以下のいずれかで指定します。
0.すべての画像をSVGに埋め込みます。
1.すべての画像を SvgImageCopyPath で指定された複写先に複写してリンクします。
2.リンクされている画像はリンクし、埋め込まれている画像は埋め込みます。 ただし、JPEG、PNG以外の画像は常に埋め込まれます。
3.リンクされている画像を SvgImageCopyPath で指定された複写先に複写してリンクします。埋め込まれている画像は埋め込みます。
このパラメータを省略したときは 0 が指定されたものとみなし、すべての画像を埋め込みます。
SvgImageCopyPath String R/W SvgImageProcessingType に 1 や 3 を指定したときの複写先を指定します。
SvgGzipCompression Boolean R/W 出力するSVGをgzip圧縮するかどうかを指定します。
SvgSingleFile Boolean R/W 組版結果が複数ページに渡るとき、それらを複数のSVGに分割して出力するか、ひとつのSVGとして出力するかを指定します。 trueのときひとつのSVGを出力し、falseのとき複数のSVGを出力します。複数のSVGを出力するときは、ファイル名が SvgFormat の指定によって修飾されます。ファイルへの出力のときのみ有効です。ストリームなどファイル名を持たない出力では無効です。
SvgImageRename Boolean R/W 画像を SvgImageCopyPath などで指定したディレクトリに複写して処理するとき、そのファイル名をすべて SvgImagePrefix で指定したプレフィクスで命名し直すか、元のファイル名を利用するかを指定します。ファイル名が重複するときは、連番が補われます。true を指定すると、すべて命名し直します。
SvgImagePrefix String R/W 画像を SvgImageCopyPath で指定したディレクトリに複写して処理するとき、そのファイル名のプレフィクスを指定します。ファイル名は、プレフィクス+連番 となります。既定値は空文字列で、そのときは連番のみとなります。
SvgSinglePageNumber Boolean R/W SvgSingleFile=false のとき、出力されるSVGが1ページしかないときに連番を付けるかどうかを指定します。falseなら付けません。
SvgFormat String R/W 元文書が複数ページで SvgSingleFile に false を指定しているときに複数の SVGファイルがファイル名末尾に連番を付けて出力されますが、連番のフォーマットを変更できます。 例えば、出力ファイル名に document.svg が与えられているとき、SvgFormat に "-01" を与えたならば、 document-01.svg、document-02.svg、… となります。 このパラメータが省略されたときは "1" が指定されたものとみなされます。
SvgImageConversion Int32 R/W 作成するSVGに格納する画像の変換方法を以下から選択します。
0.自動
1.JPEG変換
2.PNG変換
SvgJPEGQuality Int32 R/W SVGに直接格納できない画像形式のとき、SvgImageConversion に JPEG変換 が指定されたときの画質を 1~100 の範囲の数値で指定します。数字が大きいほど画質は良くなりますが、ファイルサイズは大きくなります。初期値は 80 です。
SvgRasterizeResolution Int32 R/W 一部のベクタイメージがラスタイメージに変換されてSVGに格納されるときのラスタイメージの解像度を70~500(DPI)の値で指定します。SVG、EMF、WMFはラスタイメージに変換されることなくSVG内に描画されます。
SvgSingleFileMaxHeight Int32 R/W SvgSingleFile=true のとき、複数ページを単一ページに割り付けたときの高さの最大値を指定します。値には単位を付けなければなりません。 SvgSingleFileMaxPages, SvgSingleFileMaxHeightのどちらかまたは両方を指定した場合は、最大サイズ(SvgSingleFileMaxHeight)または最大ページ数(SvgSingleFileMaxPages)のどちらかを超えたときエラーとして処理を中止します。 このパラメータが省略されたときは高さを制限しません。
SvgSingleFileMaxPages Int32 R/W SvgSingleFileでtrueを指定したとき出力する最大ページ数を指定します。このメソッドが省略されたときは "5000" が指定されたものとみなします。 SvgSingleFileMaxPages, SvgSingleFileMaxHeightのどちらかまたは両方を指定した場合は、最大サイズ(SvgSingleFileMaxHeight)または最大ページ数(SvgSingleFileMaxPages)のどちらかを超えたときエラーとして処理を中止します。
SvgImageDownsamplingDPI Int32 R/W イメージを埋め込むときのダウンサンプリングの解像度を1以上の整数で指定します。もとのイメージの解像度が指定より低い場合はそのままの解像度で埋め込みます。
SvgImageDownsamplingMethod Int32 R/W ダウンサンプリング時の圧縮法を指定します。このパラメータが省略されたときは "IMGDOWNSAMPLING_AVERAGE" が指定されたものとみなします。
1.バイリニア法
2.バイキュービック法
3.ニアレストネイバー法

プロパティ – INX出力の設定

名前 入出力 機能
InxOutputMode Int32 R/W INX(InDesign® Interchange ファイル)出力モードを指定します。
0.テキストエリア単位出力モード
1.行単位出力モード
2.ブロック単位出力モード

プロパティ – MIF出力の設定

名前 入出力 機能
MifOutputMode Int32 R/W MIF(FrameMaker® Maker Interchange Format ファイル)出力モードを指定します。
0.テキストエリア単位出力モード
1.行単位出力モード
2.ブロック単位出力モード
MifIpMode Int32 R/W MIF(FrameMaker® Maker Interchange Format ファイル)イメージ処理モードを指定します。
0.すべての画像をMIFに埋め込む
1.画像を外部参照としてリンク

プロパティ – 印刷設定

名前 入出力 機能
PrnCopies Int32 R/W プリンタに出力のとき有効で、印刷する部数を指定します。 指定されなかった場合は 1とみなされます。
PrnCollate Boolean R/W プリンタに出力のときに出力部数が複数のときにのみ有効です。 指定されなかったときや falseが指定されたときは、同一ページを続けて複数部印刷します。 true が指定されたときは、指定開始ページから終了ページまでの印刷を繰り返します。
BatchPrint Boolean R/W falseを指定すると、印刷時に印刷設定ダイアログを表示します。 省略したときや、trueを指定したときは印刷設定ダイアログは表示されません。

プロパティ – スムージング処理

名前 入出力 機能
GdiTextAntialias Boolean R/W trueが指定された場合、文字のスムージング処理を行います。
GdiLineartSmoothing Boolean R/W trueが指定された場合、線画のスムージング処理を行います。
GdiImageSmoothing Boolean R/W trueが指定された場合、イメージのスムージング処理を行います。

プロパティ – すかし文字列処理

名前 入出力 機能
WatermarkText String R/W 各ページに、指定したすかし文字列を表示します。\n で区切ることによって複数行にすることができます。評価版のときは無効です。
WatermarkFontFamily String R/W watermark-text で指定した文字列に対するフォントファミリを指定します。
WatermarkFontWeight String R/W watermark-text で指定した文字列に対するフォントの太さを指定します。normal、bold または 100~900 の数値が指定できます。
WatermarkFontStyle String R/W watermark-text で指定した文字列に対するフォントスタイルを指定します。normal または italic が指定できます。
WatermarkOpacity String R/W wmark-text で指定した文字列に対する不透明度を指定します。

値に付加する単位には、次のいずれかが指定できます。

表記 意味
cm センチメートル
mm ミリメートル。 1mm = 0.1cm
in インチ。 1in = 2.54cm
pt ポイント。 1pt = 1in/72
pc パイカ。 1pc = 12pt
jpt 1jpt = 0.3514mm
q 1q = 0.25mm

メソッド

XfoObjクラスの提供するメソッドは次のとおりです。

名前 戻り値 引数 機能
Dispose なし なし リソースを解放します。オブジェクトの使用を終了するときは、このメソッドを呼ぶようにしてください。
Execute なし なし 組版を実行し、OutputFilePathで指定されたPDF、もしくはPrinterNameで指定されたプリンタに出力します。
Render なし inputStream : Stream
outputStream : Stream
outDevice : String
inputStreamに指定されたXSL-FOドキュメントの組版を実行し、outDeviceに指定された出力形式でoutputStreamへ出力します。outDevice が省略された場合は @PDF が指定されたとみなされます。
Render なし inputDoc : XmlDocument
outputStream : Stream
outDevice : String
inputDocに指定されたXSL-FOドキュメントの組版を実行し、outDeviceに指定された出力形式でoutputStreamへ出力します。outDevice が省略された場合は @PDF が指定されたとみなされます。
Render なし inputStream : Stream
xsltStream : Stream
outputStream : Stream
outDevice : String
inputStreamに指定されたXMLドキュメントをxsltStreamに指定されたスタイルシートでXSL-FOドキュメントへ変換して組版を実行し、outDeviceに指定された出力形式でoutputStreamへ出力します。outDevice が省略された場合は @PDF が指定されたとみなされます。XSLT変換には.NET Framework標準のXSLTプロセッサを使用します。setExternalXSLTメソッドおよび、オプション設定ファイルのXSLTプロセッサ指定は無視されます。
Clear なし なし 組版エンジンを初期化します。
SetXSLTParam なし name : String
value : String
xsl:param のパラメータ名と値を設定します。
ClearXSLTParam なし なし 設定した xsl:param のすべてのパラメータ名と値をクリアします。
SetFontAlias なし fontName : String
aliasName : String
フォント名の置換設定をします。この置換は、FO中に現れるフォント名に作用し、fontName を aliasName に置換します。
EraseFontAlias なし fontName : String fontName に関するフォント名の置換設定を消去します。
ClearFontAlias なし なし すべてのフォント名の置換設定を消去します。
GetFormattingError なし errlist : Collections.ArrayList 組版終了後に呼ぶことができます。組版中に発生したExitLevel未満のエラーレベルを持つエラー情報を取得し、引数に指定したCollections.ArrayListへ格納します。エラー情報はXfoErrorInformationクラスのオブジェクトとしてArrayListに格納されます。 XfoErrorInformationクラスにはエラー情報としてErrorLevel、ErrorCode、ErrorMessageという3つのプロパティが存在します。
GetOptionFileURI String index : Int32 指定したインデクスからオプション設定ファイルのURIを取得します。
AddOptionFileURI なし fileURI : String AH Formatter V6.5 のオプションを記述したXML形式のオプション設定ファイルのURIを追加します。オプション設定ファイルの内容は、直ちに評価されます。すでに設定されているプロパティと背反する設定は上書きされます。
AddUserStylesheetURI なし fileURI : String 追加するCSSユーザスタイルシートを指定します。 AddUserStylesheetURI は何度でも指定できます。 StylesheetURI で指定されるスタイルシートよりも先に、指定された順に適用されます。

イベント

XfoObjのイベントは次のとおりです。

名前 戻り値 引数 機能
OnFormatPage なし pageNum : Int32
組版中に組版が完了したページ番号をイベントとして受信することができるようになります。なお、ASP.NET では利用できません。
  • 1以上 : 組版が完了したページ番号
  • 0 : すべてのページの組版が完了
  • -1 : 2パス組版の1パス目の開始
  • -2 : 2パス組版の2パス目の開始
OnRenderPage なし pageNum : Int32
組版中に出力が完了したページ番号をイベントとして受信することができるようになります。なお、ASP.NET では利用できません。
  • 1以上 : 出力が完了したページ番号
  • 0 : すべてのページの出力が完了

WebブラウザへのPDF出力

サーバ上でASP.NETアプリケーションを使い、組版結果をPDF出力する場合に、作成したPDFデータを直接Webブラウザに送信することが可能です。
下記はそのプログラミング例です。

public class TestPage : Page { public void OnStreamPDF(Object sender, EventArgs ea) { XfoDotNetCtl.XfoObj obj = new XfoDotNetCtl.XfoObj(); obj.ExitLevel = 4; FileStream fs = null; try { fs = File.Open("c:\\temp\\sample.fo", FileMode.Open, FileAccess.Read); Response.Clear(); Response.ContentType = "application/pdf"; obj.Render(fs1, Response.OutputStream); Response.End(); } catch(Exception e) { throw e; } finally { if (fs != null) fs.Close(); } } }

プログラミング例

下記はC#のプログラミング例です。 この他、[Install directory]/samples/dotnet にC#、VisualBasic.NET用のサンプルファイルがいくつか含まれています。

using System; public class MainApp { static public void Main() { XfoDotNetCtl.XfoObj obj = new XfoDotNetCtl.XfoObj(); obj.DocumentURI = "c:\\temp\\test.xml"; obj.StylesheetURI = "c:\\temp\\test.xsl"; obj.OutputFilePath = "c:\\temp\\test.pdf"; obj.ExitLevel = 4; try { obj.Execute(); } catch(XfoException e) { Console.WriteLine("ErrCode : " + e.ErrorCode + "\n" + e.Message); } catch(Exception e) { Console.WriteLine(e.Message); } finally { obj.Dispose(); } } }