HTBLEPS−表のEPS化


目次

HTBLEPSとは ▼
操作方法 ▼
 表組み条件の設定 ▼
 表組みの実行 ▼
表組み結果 ▼
表組みに有効な表の要素とその属性 ▼
HTBLEPSの配布 ▼

HTBLEPSとは

 HTBLEPSは,HTMLで表わされた表データ[図1を参照]を表組み[図2を参照]してEPS(Encapsulated PostScript)化するプログラムで,TextParkの一つです。HTBLEPSの実行には,Perlインタプリタが必要です。HTBLEPSはフリーウェアであり,自由に翻案したり再配布したりできます。HTBLEPSは,私(岸 和孝)が開発しました。

・
・
<TABLE BORDER=1>
<CAPTION>表 SGMLツール</CAPTION>
<TR><TH> 
<TH ALIGN=CENTER>Windows95
<TH ALIGN=CENTER>MacOS
<TR>
<TD ALIGN=CENTER>パーザー<TD>NSGMLS
<TD>MacSgmls
<TR>
<TD ALIGN=CENTER ROWSPAN=2>フォーマッター
<TD>SgmlForm
<TD ROWSPAN=2>SgmlForm
<TR>
<TD>JADE
</TABLE>
・
・

▲図1 HTMLで表わした表

図2 表組みした結果

▲図2 表組みした結果

 HTBLEPSは,HTML文書をDTPによってレイアウトし直し印刷する場合を想定しています。HTBLEPSは,ドラック・アンド・ドロップされたHTML文書をすべて走査し,その中から表の箇所を検出して,あらかじめ指定した書体や寸法などの条件に基づいた表組みを行ない,各々を独立したEPSファイルとして出力します。

 生成されるファイルはAdobe社のIllustratorで開いて再加工することができます。そのファイル名は,HTML文書のファイル名の拡張子(“.htm”又は“.html”)を取り除き,“_TABLE_nn.EPS”という接尾辞を付けて区別します。ここで,nnは表の出現番号を表わします。例えば,“sample.htm”に二つの表が含まれていると,“sample_TABLE_1.EPS”と“sample_TABLE_2.EPS”というファイルが生成されます。

注1)HTML文書について
HTBLEPSの現在のバージョンでは,HTML文書の文書型の検証はできません。また,行わたりしたタグを扱うことができませんので,注意して下さい。
注2)表の修飾について
HTBLEPSの現在のバージョンでは,プレビューの作成,網掛け,二重罫線などの飾り罫,欄内での改行,欄個別の書体・寸法の指定,欄内に埋め込まれた表や画像を扱うことはできませんので,そうした加工はIllustratorで行なって下さい。

操作方法

 HTBLEPSの操作は,次の二段階からなります。

  1. 表組み条件の設定
  2. 表組みの実行
MS-Windows95における起動方法
コマンドラインで“PERL HTBLEPS.PL [ ファイル名 ] …”を指示すると,
ファイル名 …の順に処理されます。
より簡単にするために,
スクリプトを起動するための次のようなバッチファイルを作成して下さい。
例えば,“HTBLEPS.BAT”という名前にしておきます。
 CD ファイルの格納されたディレクトリへのパス
 PERL HTBLEPS.PL %1 %2 %3 %4 %5
ここで,引き数の参照は,コマンドラインが長くなりすぎますので,5個程度にします。
HTBLEPS.BATのアイコンへファイル …をドラッグ・アンド・ドロップすると,
ファイル名 …の順に処理されます。
MacOSにおける起動方法
Perlインタプリタを起動し,HTBLEPS.PLスクリプトをDroplet形式で保存します。
例えば,“HTBLEPS”という名前にしておきます。
HTBLEPSのアイコンへファイル …をドラッグ・アンド・ドロップすると,
ファイル …の順に処理されます。
単なるラウンチでは引き数なしの起動となります。
ちなみに,ScriptメニューからRun Scriptでスクリプトを指示しても
「引き数なしの起動」となってしまいますので,注意して下さい。

表組み条件の設定

 HTBLEPSで表組みを行なう前に,あらかじめ表組み条件を設定しておきます。HTBLEPS(バッチファイル又はDroplet)を単にダブルクリックすると(引き数なしで起動すると),条件設定ができるようになります。[図3を参照]

 設定できる表組み条件は,次のとおりです。

TH要素フォントTH要素のフォントを指定します。
省略時は中ゴシック体(`GothicBBB-Medium-83pv-RKSJ-H')となります。
TD要素フォントTD要素のフォントを指定します。
省略時は細明朝体(`Ryumin-Light-83pv-RKSJ-H')となります。
フォント寸法及び高さフォントの寸法及び高さをポイント数で指定します。
省略時は12ポイントとなります。
半角幅寸法半角文字の幅の寸法をポイント数で指定します。
省略時は6ポイントとなります。
コラム隅の
水平方向の間隔
コラム内の文字列と左右の罫線との間の間隔をポイント数で指定します。
省略時は5ポイントとなります。
コラム隅の
垂直方向の間隔
コラム内の文字列と上下の罫線との間の間隔をポイント数で指定します。
省略時は4ポイントとなります。

 この条件設定の結果は“TEXTPARK.CNF”というファイルに保存され,表組みの実行時に参照されます。

HTBLEPS version : 1.0
 表組み条件:
  TH項目フォント(省略時は`GothicBBB-Medium-83pv-RKSJ-H')
  TD項目フォント(省略時は`Ryumin-Light-83pv-RKSJ-H')
  フォント寸法及び高さ(省略時は12)
  半角幅寸法(省略時は6)
  コラム隅の水平方向の間隔(省略時は5)
  コラム隅の垂直方向の間隔(省略時は4)
 現在の表組み条件:`GothicBBB-Medium-83pv-RKSJ-H,Ryumin-Light-83pv-RKSJ-H,12,6,5,4'
 表組み条件を変更する[上記のような形式で入力:新しい条件,改行のみ:省略値を適用]> 
 [改行のみ:設定終了,'x':中止,その他:再設定]> 
 条件設定が完了しました。

▲図3 表組み条件の設定

表組みの実行

 HTBLEPSで表組みを行なうには,対象となるHTMLファイルをHTBLEPS(バッチファイル又はDroplet)へドラッグアンドドロップします。HTBLEPSは入力したHTMLファイル名と,作成できた表のEPSファイル名(複数)を表示します。[図4を参照]

HTBLEPS version : 1.0
 HTMLデータ:MyDisk:MyFolder:sample.htm
  EPSデータ:MyDisk:MyFolder:sample_TABLE_1.EPS(表 SGMLツール)
 表組み処理が完了しました。

▲図4 HTBLEPSの処理経過表示

表組み結果

 表組み結果は,図5のようなEPSデータとなります。このデータはIllustratorで開いて再加工することができますが,PhotoShopでは開くことはできません。

%!PS-Adobe-3.0
%%Creator:HTBLEPS 1.0
%%Title:(sample_TABLE_1)
%%CreationDate:()
%%BoundingBox:10 10 260 76
%%PageOrigin: 30 31
%%DocumentProcessColors: Black
%%DocumentNeededResources: procset Adobe_packedarray 2.0 0
%%+ procset Adobe_cmykcolor 1.1 0
%%+ procset Adobe_cshow 1.1 0
%%+ procset Adobe_customcolor 1.0 0
%%+ procset Adobe_typography_AI3 1.0 1
%%+ procset Adobe_IllustratorA_AI3 1.0 1
%AI3_ColorUsage: Black&White
%AI3_DocumentPreview: None
%%EndComments
%%BeginProlog
%%IncludeResource: procset Adobe_packedarray 2.0 0
Adobe_packedarray /initialize get exec
%%IncludeResource: procset Adobe_cshow 1.1 0
%%IncludeResource: procset Adobe_customcolor 1.0 0
%%IncludeResource: procset Adobe_pattern_AI3 1.0 0
%%IncludeResource: procset Adobe_Illustrator_AI3 1.0 1
%%EndProlog
%%BeginSetup
Adobe_cmykcolor /initialize get exec
Adobe_cshow /initialize get exec
Adobe_customcolor /initialize get exec
Adobe_typography_AI3 /initialize get exec
Adobe_IllustratorA_AI3 /initialize get exec
[
39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
/guillemotleft/guillemotright/ellipsis/.notdef/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
/hungarumlaut/ogonek/caron
TE
%%EndSetup
10 74 m 104 74 l 104 58 l 10 58 l 10 74 l s
104 74 m 168 74 l 168 58 l 104 58 l 104 74 l s
168 74 m 238 74 l 238 58 l 168 58 l 168 74 l s
10 58 m 104 58 l 104 42 l 10 42 l 10 58 l s
104 58 m 168 58 l 168 42 l 104 42 l 104 58 l s
168 58 m 238 58 l 238 42 l 168 42 l 168 58 l s
10 42 m 104 42 l 104 10 l 10 10 l 10 42 l s
104 42 m 168 42 l 168 26 l 104 26 l 104 42 l s
168 42 m 238 42 l 238 10 l 168 10 l 168 42 l s
104 26 m 168 26 l 168 10 l 104 10 l 104 26 l s
0 To
1 0 0 1 15 62 0 Tp
TP
0 Tr
/_GothicBBB-Medium-83pv-RKSJ-H 12 Tf
( ) Tx
TO
0 To
1 0 0 1 114 62 0 Tp
TP
0 Tr
/_GothicBBB-Medium-83pv-RKSJ-H 12 Tf
(Windows95) Tx
TO
0 To
1 0 0 1 187 62 0 Tp
TP
0 Tr
/_GothicBBB-Medium-83pv-RKSJ-H 12 Tf
(MacOS	) Tx
TO
0 To
1 0 0 1 38 46 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(パーザー) Tx
TO
0 To
1 0 0 1 109 46 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(NSGMLS) Tx
TO
0 To
1 0 0 1 173 46 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(MacSgmls	) Tx
TO
0 To
1 0 0 1 20 30 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(フォーマッター) Tx
TO
0 To
1 0 0 1 109 30 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(SgmlForm) Tx
TO
0 To
1 0 0 1 173 30 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(SgmlForm	) Tx
TO
0 To
1 0 0 1 109 14 0 Tp
TP
0 Tr
/_Ryumin-Light-83pv-RKSJ-H 12 Tf
(JADE	) Tx
TO
%%PageTrailer
gsave annotatepage grestore showpage
%%Trailer
Adobe_IllustratorA_AI3 /terminate get exec
Adobe_typography_AI3 /terminate get exec
Adobe_customcolor /terminate get exec
Adobe_cshow /terminate get exec
Adobe_cmykcolor /terminate get exec
Adobe_packedarray /terminate get exec
%%EOF

▲図5 EPSデータ

表組みに有効な表の要素とその属性

 HTBLEPSの表組みに有効な表の要素とその属性は次のとおりです。

要素属性属性値
TABLE BORDER属性線幅(省略時は罫線なし)
TR なし  
TH
TD
ALIGN属性左詰め,中央揃え,右詰め(省略時は左詰め)
COLSPAN属性列数(省略時は1)
ROWSPAN属性行数(省略時は1)
CAPTION なし この要素は,処理経過表示における確認のためだけに用いられます。

HTBLEPSの配布

 “HTBLEPS”を次のパッケージで配布します。不都合がありましたら,ご一報下さい。

HTBLEPSパッケージ

(1998年1月記,1998年9月改訂)


(c)1998 JAGAT