本インターフェイスは、Docx to HTML V2.0 をJavaから利用するインターフェイスを提供します。 Java 11以降で動作します。 Java VM について を参照してください。
JavaインターフェイスはJNI(JavaNativeInterface)を使用して作られています。
以下のライブラリファイルが [Install directory] または [Install directory]/lib に含まれています。
| ライブラリファイル | 内容 | 場所 |
|---|---|---|
| DhcJavaCtl.jar | Javaアーカイブ | [Install directory]/lib |
| DhcJavaCtl20.dll | Windows用 Javaインターフェイス | [Install directory] |
| libDhcJavaCtl20.so | Linux 用 Javaインターフェイス | [Install directory]/lib |
Javaインターフェイスを実行するには、Javaを実行するディレクトリと[Install directory]/lib/DhcJavaCtl.jar が環境変数 CLASSPATH に含まれていなければなりません。 また、JNI(JavaNativeInterface)を使用していることからWindows版では [Install directory] が環境変数 PATH に含まれていなければなりません。非Windowsの環境では[Install directory]/libが Linux版では環境変数 LD_LIBRARY_PATH に 含まれていなければなりません。 必要な環境変数については、環境変数とシンボリックリンクを参照してください。
Windows版の場合。
Linux版の場合。
Docx to HTML V2.0 の Javaインターフェイスは、Eclipse Temurin JDK (旧AdoptOpenJDK) 11 を使ってビルドされています。Linux環境において古いバージョンのJava実行環境を使用する場合、互換性の問題が発生することがあります。Java 11未満のJava実行環境はサポートしておりません。
Tomcatなどのアプリケーションサーバにおいて本インターフェイスを使用する場合、DhcJavaCtl.jarをウェブアプリケーションのWEB-INF/libに置かないようにしてください。
JavaVMの仕様によりJNIのネイティブライブラリは複数のクラスローダから読み込めないようになっているため、各ウェブアプリケーションディレクトリにDhcJavaCtl.jarを置くと複数のウェブアプリケーションから使用することができなくなります。これを防ぐにはシステムクラスローダなどロードが一度だけ行われるクラスローダで読み込ませるように設定してください。
Java インターフェイスには以下のクラスが含まれます。
| 名前 | 機能 |
|---|---|
| DhcObj | Docx to HTML V2.0 本体のクラスです。DhcObj import jp.co.antenna.DhcJavaCtl.*;
DhcObj obj;
try {
obj = new DhcObj();
// 何かの処理
}catch(Exception e)
{
System.out.println(e.getMessage());
}
|
DhcObjクラスの提供するメソッドは次のとおりです。
| 名前 | 戻り値 | 引数 | 機能 |
|---|---|---|---|
| execute | なし | なし | 変換を実行し、setDocumentURIで指定された出力先に出力します。 |
| setDocumentURI | なし | newVal : java.lang.String | 入力ファイル名を指定します。
|
| setOutputFilePath | なし | newVal : java.lang.String | 出力ファイル名を指定します。
|
| clrSettings | なし | なし | オプション設定をクリアします。 |
| lodeSettings | なし | newVal : java.lang.String | 指定した変換オプション設定ファイルを読み込みます。
|
| setEnableXHTML | なし | newVal : boolean | タグ出力の文法を指定します。
|
| setViewportContent | なし | content : java.lang.String | <head>に次の形式のメタタグを出力するように指定します。 <meta name="viewport" content="contentに指定した内容">
|
| setEnableENDL | なし | newVal : boolean | ブロックタグの終わりに改行を出力するかどうかを指定します。
|
| setEnableEmptyParagraph | なし | newVal : boolean | Wordの空の行(改行のみの行)の扱いを指定します。
|
| setEnableNonRefId | なし | newVal : boolean | Wordでは編集を重ねると文書ファイル内に参照されていないIDがdocxファイル内に沢山できてしまいます。 これらの内部的に参照されていないIDをHTML出力時に削除するかどうかを指定します。
|
| setEnableImgWidth | なし | newVal : boolean | イメージの幅を出力するかどうかを指定します。
|
| setEnableHeadingStrong | なし | newVal : boolean | 見出しスタイルで指定された強調を無視するどうかを指定します。
|
| setEnableEmbedimage | なし | newVal : boolean | 画像をデータURLで本体HTMLに埋め込むかどうかを指定します。
|
| setEnableMathML | なし | newVal : boolean | Wordの数式エディタで編集した数式を<img>タグにMathML形式ファイルで出力するかどうかを指定します。
|
| setXmlMathML | なし | newVal : boolean | Wordの数式エディタで編集した数式をMathML形式マークアップで出力するかどうかを指定します。
|
| setOMath | なし | newVal : boolean | Wordの数式エディタで編集した数式をWord独自のOffice Math形式で出力するかどうかを指定します。
|
| setThroughImage | なし | newVal : boolean | Wordに挿入した元の画像形式のまま出力するかどうかを指定します。
|
| setEnablePStyle | なし | newVal : boolean | 段落のスタイル名をclass属性の値として出力するか指定します。
|
| setEnableCitation | なし | newVal : boolean | Citationフィールドのtagの値を<a>タグのhref属性の値に設定して出力するかを指定します。
|
| setTextColor | なし | newVal : boolean | 文字に指定されている色を<span style="color:カラー値">として出力するかどうかを指定します。
|
| setItalic | なし | newVal : int | 文字に斜体が指定されているときの出力方法を指定します。
|
| setUnderline | なし | newVal : int | 文字に下線が指定されているときの出力方法を指定します。
|
| setLinethrough | なし | newVal : int | 文字に取り消し線が指定されているときの出力方法を指定します。
|
| setEncoding | なし | newVal : java.lang.String | HTMLファイルの文字コード(符号化方式)を指定します。(デフォルト : "UTF-8")
|
| setDefstyle | なし | newVal : boolean | <head>の<style>要素(デフォルトCSSスタイルを指定する要素)を出力するかどうかを指定します。
|
| setSpaceIndent | なし | newVal : boolean | 段落先頭に1文字以上の字下げが指定されているとき、字下げを1文字の全角空白に変換するかどうかを指定します。
|
| setOutputBR | なし | newVal : boolean | 段落を<p>タグで囲む代わりに、段落の終わりに<br>タグを出力するかどうかを指定します。 タグ出力でXML文法指定時は無効です。
|
| setFileimages | なし | newVal : boolean | 画像ファイルを格納するフォルダー名の付け方を指定します。
|
| setCSS | なし | uri : java.lang.String media : java.lang.String |
リンクするCSSファイルを指定します。
|
| setJS | なし | newVal : java.lang.String | <head>にscript タグを置き、そのsrc属性にJavaScriptファイルのパス(URL)を指定します。
|
| saveSettings | なし | newVal : java.lang.String | オプション設定ファイルのパスを指定します。 |
| setTablestyle | なし | newVal : boolean | テーブルスタイルを出力するかどうかを指定します。
|
| setSplit | なし | newVal : int | Word文書のアウトラインレベルに応じてHTMLファイルを分割して出力します。
|
| setEnableTocout | なし | newVal : boolean | 「setSplit」呼び出し時にWordの目次機能で挿入した目次箇所を、別のHTMLファイル(inc-toc.html)として出力します。 inc-toc.htmlはJavaScriptを利用して、分割したHTMLファイルにインクルード(読み込み)できます。inc-toc.htmlには目次箇所のタグ以外の<head>や<body>などのタグは出力されません。 JavaScriptを利用した目次箇所のインクルード方法については、下記Webページにサンプルを用意していますので、ご参考にしてください。 https://www.antenna.co.jp/xhw/sample.html
|
| setPagenavi | なし | newVal : java.lang.String | 「setSplit」を呼び出した時に分割したHTMLファイルの上部(目次箇所がある場合は目次箇所の直後)と下部に、前のページと次のページに移動するリンクを出力します。
|
| setLang | なし | newVal : java.lang.String | 出力するHTMLファイルの<html>タグに出力する言語(lang属性)を指定できます。
|
| setSection | なし | newVal : int | HTMLの<section>(または<div class="section-area">)タグを出力するアウトラインレベルを指定できます。
|
| setEndnoteId | なし | newVal : boolean | Word文書中に脚注、または文末脚注を挿入する際、脚注/文末脚注の連番の開始番号を「1」以外にした場合に、出力したHTMLの脚注/文末脚注文字(<sup>タグ)の番号と、その脚注/文末脚注を指定する「id」の末尾に使用される番号を一致させることができます。
|
| setFootnote | なし | newVal : int | Word文書中に脚注がある場合に、htmlへの出力方法を指定します。
|
| setCustomSep | なし | newVal : boolean | 脚注、および文末脚注を挿入した場合の本文との境界線を指定します。
|
[Install directory]/samples/java は簡単なサンプルプログラムを含んでいます。
[Working directory]で、このサンプルプログラムを実行するには、次のようにします。
[Working directory]にsamples以下のディレクトリをコピーしてください。このとき、[Working directory]/samples/javaを CLASSPATH に含めておきます。