名前

pstoimg - PostScript ファイルを GhostScript と Netpbm ユーティリティを用いてビットマップ画像に変換

形式

pstoimg -help | -version

pstoimg [ -antialias ] [ -aaliastext ] [ -center num ] [ -color num ] [ -crop code ] [ -debug ] [ -density num] [ -depth num ] [ -discard ] [ -flip code ] [ -geometry XxY ] [ -interlaced ] [ -margins X,Y ] [ -multipage ] [ -out file ] [ -quiet ] [ -rightjustify num ] [ -scale num ] [ -tmp path ] [ -topjustify [x]num ] [ -transparent ] [ -type type ] [ -shoreup num[d] ] [ -white ] file [ file2 ... ]

オプション

コマンドラインオプションは、一意的である限り、 最も短い接頭語に省略可能です。

-help

このヘルプページを表示して終了します。

-version

pstoimg のリリースバージョンを表示して終了します。

-antialias

Ghostscript のアンチエイリアス機能を使って、 より「柔らかい」画像を描画します。 これは、直線、多角形や楕円の端、または円の形状に適用します。 4.03 以降の Ghostscript がインストールされている場合のみ有効です。

-aaliastext

Ghostscript のアンチエイリアス機能を使って、ギザギザのない より「滑らかな」フォント文字を描画します。 グラフィック要素に対する -antialias と同様です。 4.03 以降の Ghostscript がインストールされている場合のみ有効です。

-center num

画像の左に適度な空白を追加し、 全体で num ピクセル幅の中心にその画像が現れるようにします。

-crop code

指定された方向からビットマップ画像を切り出します (crop)。 code は、いくつかの切り出し指定からなる文字列で、 それらは厳密に指定した順序で行なわれます。 以下の文字が指定できます: h (水平 (horizontal); すなわち上下の切り出し)、 v (鉛直 (vertical))、 tblr (上 (top), 下 (bottom), 左 (left), 右 (right)、 a (すべての方向 (all))。 s は特別で「髭剃り」、 すなわち画像の下に 1 行の空白がある場合のみ画像の下を切り出します。

-debug

デバッグ出力を ON にします。これはやや冗長な出力を出します。 途中で生成する中間ファイルもすべて削除せず、デバッグの助けにします。

-density num

ビットマップ画像を描画する際の DPI 単位での密度 (解像度)。 デフォルト値は 72。

-depth num or -color num

ビットマップ画像の色深度を指定します。 指定できる値は 1 (白黒)、8 (256 色)、24 (天然色) です。

-discard

変換が成功したら、入力 PostScript ファイルを削除します。 環境変数 DISCARD に真の真偽値 (perl が認識する値) を設定しても 同じ結果になります。

-flip code

生成するすべてのビットマップ画像を回転/反転 (flip) します。 以下の code 指定を認識します: lr (左右反転)、tb (上下反転)、xy (左下から右上への反転)、 r90 と ccw (反時計回りに 90 度回転)、 r270 と cw (時計回りに 90 度回転)、 r180 (180 度回転)。

-geometry XxY

PostScript ファイルのこの「窓」(部分領域) のみを描画します。 このオプションを指定すると、劇的に変換に必要なメモリ量を減らし、 変換を高速化することが可能です。 EPS ファイル (カプセル化 PostScript) の場合は geometry 指定は自動的に検出されます。

-interlaced

インターレースビットマップ画像を生成します。 インターレース画像は、粗い画像から繊細な画像に成長するように読み込まれます。 このオプションは、外部プログラムの能力に依存し、 すべてのインストール環境、すべてのビットマップ画像形式に対して 機能するとは限りません。

-margins X,Y

PostScript ファイル内の、描画する長方形の左上からの位置指定。 -geometry と組み合わせて使うことで、 Ghostscript が生成する中間ファイルのサイズをさらに低減できます。

-multipage

複数ページの PostScript ファイルを処理、 すなわち各ページから個別のビットマップ画像を生成。 作られるファイルは以下のように番号づけされます: 1 から始まる十進数を PostScript 入力ファイル名のベース名 (-out を指定した場合はそのファイル名のベース名) の後ろにつけますが、 拡張子も最後につきます。

-out file

出力するビットマップ画像ファイル名。 複数ページの PostScript ファイルをコマンドラインに指定した場合、 このオプションは無視されます。 file にドットが含まれていなければ、 ビットマップ画像形式の拡張子が自動的に最後に追加されます。 -multipage と組み合わせると、以下の例のように file には ページ番号が追加されます。

-outfile foo.gif --------> foo1.gif, foo2.gif, ...

-quiet

エラーメッセージ以外は何も表示しません。

-rightjustify num

画像の左に適度な空白を追加し、 全体で num ピクセル幅の右端にその画像が現れるようにします。

-scale factor

画像を factor 倍に縮尺します。0 より大きい値が有効です。 0.1 - 5の値を選択するのがいいでしょう。 大きな値を指定すると、とても大きな中間ファイルを生成し、 長い時間がかかる可能性があります。 このオプションを省略すると、環境変数 SCALE の値を考慮します。

-shoreup num[d]

ビットマップ画像の高さと幅を丁度 num 倍します。 num に "d" をつけると、追加スペースの半分を下に置きます。 このオプションは、プリントアウト用に高解像度の「膨張」画像を作成したいが、 HTML 用には <IMG WIDTH=x HEIGHT=y> を用いて縮小した表示にしたい場合に有用です。 実際の画像が x,y の整数倍でない場合、 ブラウザは歪んだ画像を表示しようとします。

-tmp path

一時ファイルを保存するのに path を使用します。 このインストール環境ではデフォルト値は @TMPSPACE@ です (訳注: この「@TMPSPACE@」は、 本来はインストール時にその環境用の値に変換されているはずですが、 ここではそうなっていません)。 このパラメータは、環境変数 TMPTEMP でも設定可能です。

-topjustify [x]num

画像に空白を追加し、 画像が指定された高さを持つようにします。 整数値を指定すると、それが全体の高さになります。空白は下に追加されます。 数値の前に "x" を置くと、画像の高さとの積が、下に空白として追加されます。

-transparent

透明化ビットマップの生成、すなわち、特定のビューワ (例えばブラウザ) で見れば背景色 (白) が透明になります。 このオプションは、外部プログラムの能力が欠けているために 有効ではない場合もあります。

-type type

描画するビットマップ画像を type 形式にするよう pstoimg に指示します。 インストール環境により、pstoimg は GIF か PNG ビットマップ画像の どちらかを生成する能力を持ちます。 このサイトでは、以下の型のものを生成します: @IMAGE_TYPES@ (訳注: この「@IMAGE_TYPES@」は、 本来はインストール時にその環境用の値に変換されているはずですが、 ここではそうなっていません)。

省略した場合、そのリストの最初の型を取ります。

-white

変換前に PostScript ファイルから TeX のページカラー情報を削除し、 白背景を使用するようにします。

機能説明

pstoimg は、指定された入力ファイル群すべてに対して繰り返し実行し、 それらを Ghostscript によって処理します。 出力される pnm (portable anymap) 形式のファイルは 様々な Netpbm ツールで処理され (切り出し、配色、位置合わせ、等々)、 最終的に (今のところ) GIF か PNG 形式に変換されます。 そのビットマップ画像は、例えば WWW ページで使用できるようになります。

PostScript ファイルは、そのまま変換します。 有効な bounding box があれば (EPS 形式)、 その領域のみを変換します。 画像はデフォルトでは切り出し ません

返り値

0

すべてが正常に進んだ場合

x

(x != 0) は何か悪いことがあった場合。 出力されるメッセージを参照してください。

pstoimg foo.ps

foo.ps の最初のページをデフォルトビッマップ型に変換します。

pstoimg -type png -crop a -trans -interlace foo.ps

上と同じですが、強制的に PNG 出力にし、 画像の回りのすべての空白を取り除き、 白色を透明化し、インターレースビットマップ画像を生成します。

pstoimg -multi -out bar -type gif -crop a foo.ps

foo.ps が複数ページの PostScript ファイルであると見なし、 bar1.gif, bar2.gif 等のファイルを出力します。

環境変数

DENSITY, DEPTH, DEBUG, DISCARD

それぞれ、-density, -depth, -debug, -discard の項を参照。

GS_LIB

この値は、インストール設定中にこのシステムに見つかる Ghostscript ライブラリの置き場所を設定しますが、 組み込まれているパスが正しくない場合のみです。 これは、Win32 でのインストールでは良くある再配置の問題を修正します。 この挙動は、pstoimg を起動する前に手動で GS_LIB を設定することで 変更することもできます。

LATEX2HTMLDIR

LaTeX2HTML ライブラリと perl モジュールがあるディレクトリです。 この環境では、デフォルト値は "@LATEX2HTMLDIR@" です。 (訳注:「@LATEX2HTMLDIR@」は、 本来はインストール時にその環境用の値に変換されているはずですが、 ここではそうなっていません)

OUTFILE

これを設定すると、-out を指定したのと同じ効果を持ちます。 この機能をこれ以上期待しないでください。 次のリリースからは削除するかもしれません。

PAPERSIZE

Ghostscript が画像を生成するのに使用する紙のサイズ。 pstoimg は、可能な最も小さいビットマップサイズの描画に 一生懸命最適化しようとします。 このオプションを手動でチューニングすることは有効ですが、 それは非推奨です。 pstoimg がよりよい設定を見つけると、このパラメータは無視されます。

SCALE

-scale の項の説明を参照。

TMP と TEMP

-tmp で変更しない場合、この変数が一時ファイルの保存先ディレクトリを 示します。TMP を最初に参照し、その後 TEMP を参照します。

参照

gs, pnmcrop, pnmquant, pbmmake, pnmcat, pnmfile, pnmflip, ppmtogif, pnmtopng, giftool, giftrans。

注意

何人かの人から、pstoimg の代わりに ImageMagick の convert を使うことを提案されました。それに関してコメントを 2,3。 convert は、PostScript をビットマップに変換するのに (当然) Ghostscript を使っていますので、結局 gs が必要です。 そして、LaTeX2HTML の特別な要求に対して convert の機能は十分ではありません。 ImageMagick のツール群はすべてを置き換えてくれますが、 100 個の画像を処理する際に死にそうになることが証明できるくらいの オーバーヘッドがあります。 pstoimg は、しなければいけないことのみを行い、 そして十分なことをします。 ただし、誤解しないでください。私は ImageMagick が好きですが、 LaTeX2HTML での使用には合わないということです。

警告

このユーティリティは、 インストールセットアップ時に自動的に設定され、動くように作られます。 この設定が変更された場合は (外部コマンドのいくつかが移動するなど)、 このスクリプトも再設定する必要があります。

perl は可搬性があるのですが、UNIX 上で設定された pstoimg は、 Win32 では多分動作しないでしょうし、逆もまた動作しないでしょう。

バグ

これは、メジャー拡張版で、いくつかのバグを持っている可能性があります。 ユーザーインターフェースの変更に伴い、 pstoimg を使用するあなたのツールはもはや動かないかもしれません。

バグは、latex2html@tug.org に報告してください。その際は、 pstoimg の (デバッグ) 出力、あなたの perl のバージョンや 外部ツールのバージョンも示してください。 一番いいのは、設定動作で作られる cfgcache.pm の内容を示してくれることです。

このスクリプトは、Doug Crabill <dgc@cs.purdue.edu> による ps2epsi スクリプトの改良版から始まって、長い進化の過程を経てきています。 最初の perl 版は、Nikos Drakos <nikos@cbl.leeds.ac.uk> によって 書かれました。それが、多くの LaTeX2HTML の開発者達、 Ross Moore <ross@maths.mq.edu.au>, Jens Lippmann <lippmann@rbg.informatik.tu-darmstadt.de> やその他大勢 (すみません、全員を記述することはできませんが、皆さんの寄与に感謝します) によって徐々に改良されてきました。

日本語訳

これは、元々 pstoimg スクリプト (pstoimg.pin) に含まれる pod ファイルを、Shigeharu TAKENO (<shige@iee.niit.ac.jp>) が日本語訳したものです。