2017-07-25 11 views
2

私は、postscriptの "run"コマンドを使用してテキストファイルからインポートされたコードを含む複数の他のディレクトリにある.epsグラフィックを含む.psファイル(dvipsを使用しています) 。Postscript:実行するパスとネストされた呼び出し

私の問題はパスです。

テキストファイルへの相対パスは、.epsファイルの場所からの相対パスでなければなりません。

最終的な.psを正常に表示するには、さまざまなテキストファイルへの相対パスが.psファイルの相対位置である必要があります。

.pssファイルを直接表示する方法と、.psに埋め込まれたときに表示する唯一の方法は、インクルードされたテキストファイルの絶対パスを指定することです。

相対パスを使用してこの作業を行う方法はありますか、プロジェクトの場所を独立させるための他のトリックですか?私は何十もの.epsファイルを持っているので、同じディレクトリにそれらをすべてドロップしたくありません。

答えて

2

これを行う唯一の賢明な方法は、最終的なPostScriptプログラムの 'run'演算子をオーバーライドして、それが供給されている文字列のパスを修正することです。

EPSファイルは、その時点で実行が再定義されないため(現在実行中の場合)動作します。 PostScriptファイルを囲むことで 'run'が再定義され、すべての文字列に正しいパスが付加されるので、EPSファイルは囲みプログラムでカプセル化されたときに動作します。

私は、「実行」演算子がEPSでは禁止されていないことに驚いています(少し気になりません)。

関連する問題