firefox-1.5 PostScript出力の続き

Masaさんより ゲストブックに情報を頂き、Firefox-1.5.* の吐き出すPostScriptの フォント定義部分をいじくることでちゃんと日本語フォントが出ることが 分かった。Firefoxから直接プリントアウトする場合と、PSファイルに落とす場 合があるのでスクリプトを2個に分けて作った。まず、プリントアウト用。

EPSON用のlprフィルタを以下のようにした。

ps2stcolor(printcapのifに指定)

#!/bin/sh
# lpd input filter with gdevstcolor
#

setoffset() {
cat<<_EOF_
<<
/.HWMargins [0 0 0 0]
>>
setpagedevice
_EOF_
}
wakeup() {
  printf '\000\000\000\033\001@EJL 1284.4\n@EJL     \n\033@'
}
fontfix() {
  sed \
  -e 's,/UCS2Font /Courier,/UCS2Font /Ryumin-Light-UniJIS-UCS2-H,' \
  -e 's,^default_ls,ja_ls,'
}

PATH=/usr/local/gs7/bin:$PATH
read firstline
case "$firstline" in
  %!*)
	# model=escp2-pm800c
	model=escp2-pm770c
	printf '\000\000\000\033\001@EJL 1284.4\n@EJL     \n\033@'
	# (echo "$firstline";  cat) | \
	(echo "$firstline"; setoffset; fontfix) | \
	  gs -sDEVICE=stp -sModel=$model -sOutputFile=- -dNOPAUSE -q -sBATCH -
	;;
  *)
	(echo "$firstline"; cat) && exit 0 ;;
esac
exit 2

続いてPSファイルに落としたとき用。/usr/local/etc/fffontfix てな名前で

#!/bin/sh
sed \
  -e 's,/UCS2Font /Courier,/UCS2Font /Ryumin-Light-UniJIS-UCS2-H,' \
  -e 's,^default_ls,ja_ls,'

としておいて、ghostview(7.07)を呼ぶwrapperを /usr/local/etc/gv7 てな感じで以下のように作っておいた。

#!/bin/sh
PATH=/usr/local/gs7.07/bin:/usr/local/etc:$PATH
fffontfix "$@" | ghostview -

うちはまだデフォルトのgsが5.50vfだったりするので。

さて、問題は学生環境にいれた Solalis9 での Firefox 1.5だな。 全員のデフォルトにこのフィルタをいれるにはどうしたら。


叱咤激励感想ツッコミはゲストブック

Generated with mkdiary.rb
yuuji@example.org
Fingerprint16 = FF F9 FF CC E0 FE 5C F7 19 97 28 24 EC 5D 39 BA
HIROSE Yuuji - ASTROLOGY / BIKE / EPO / GUEST BOOK / YaTeX [Tweet]