SSブログ

PostScript でテキストを塗りつぶし、輪郭と内部で異なる色にするには? [NT]

PostScript は Adobe が開発したページ記述言語である。解説は PostScriptとは 【ポストスクリプト】 : IT用語辞典 に譲る。

PostScript は基本的にテキストファイルなので、命令や文法が分かれば内容を書き換えることも出来る。 例えば、テキストを塗りつぶし、輪郭と内部で異なる色にするには次のように記述する。

このサンプルは、 Helvetica-Bold フォント 11 ポイントで、

  • 座標(48,100) に 「0」というテキストを輪郭:黒(縁は2ポイント)、内部:白
  • 座標(33,96) に 「1」というテキストを輪郭:黒(縁は2ポイント)、内部:白

で描画する。

Postscript では 手続き(C言語における関数)を定義することができるので、上記のコードはより簡潔に記述することも可能。

もっとも、PostScript をテキストファイルで直接プログラムから出力する事なんてほとんど無い。強いて言えば、TeX に EPS(Encapsuled PostScript) を貼り付けたくて、EPS の一部分を変更したいときくらいだ。それすらほとんど無いけど。

参考文献


タグ:PostScript

Java で画像を編集して保存するには? [Java]

Java プログラムの TIPS。Java で画像を編集して保存するコードの例。

下記プログラムは sample.jpg を読み込み、"hello world."という文字列をその画像に重ねて出力し、out.jpg にJPEGとして保存する。

drawString の部分を他の Java2D のメソッドに変更すれば、線、ポリゴン、円、楕円など自由に描画できる。

このコードは、

java version "1.4.2_05"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)

Vine Linux 3.0 (VineSeed) (Valandraud)

という環境では正常に動作した。


Java で使用可能なフォントの一覧を取得するには? [Java]

Java SDK 1.2.x から論理フォント以外のフォントを使えるようになった。

フォント一覧を出力するには getAllFonts メソッドを使う。

  • 東風ゴ シックを JLabel で使用する
  • 標準出力に使用可能なフォント名をリストアップする

機能を持つサンプルを以下に示す。

どれが日本語フォントかわからない場合は、Nakata 氏のサイト で紹介されているように、

で調べてみることが一応可能。


Vine Linux 3.0 における jdk1.5.0 の日本語フォントの設定 [Java]

2~3 年くらい前の話。現在は状況が変わっているかもしれない。

Linux で

  • Java で記述された GUI プログラム(Window を表示するもの)
  • Swing を利用している(Java2D を利用しているときも同様だと思う)
とき、日本語が文字化け(□「四角」が表示されてしまう)することがあった。そのときの回避方法の一つをメモしておく。

Java 2 Platform Standard Edition Development Kit 5.0<br> (JDK 5.0) に、

Red Hat Linux のバージョンには JIS X 0201 用の TrueType フォントをデフォルトで持たないものがあり、フォント設定ファイルに JIS X 0201 の定義がありません。回避策として TrueType JIS X 0201 フォントを J2RE の lib/fonts/fallback ディレクトリにインストールしてください。

とある。そこで、 jre/lib/fonts に fallback ディレクトリを作成して TrueType JIS X 0201 フォントのシンボリックリンクを張る。例えば、

$ cd /usr/java/jdk1.5.0/jre/lib/fonts/fallback
# ln -s /usr/X11R6/lib/X11/fonts/TrueType/kochi-gothic.ttf .
# ln -s /usr/X11R6/lib/X11/fonts/TrueType/kochi-mincho.ttf .
とする。すると、文字化けを回避できる。
タグ:文字化け Java

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。