[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 透明 favicon
>>>>> In [emacs-w3m : No.09836] 青田さん wrote:
>> Version: ImageMagick 6.3.5 09/20/07 Q16 http://www.imagemagick.org
>> を使って http://fedora-jp.sourceforge.jp/ の favicon を
>> $ cat favicon.ico | convert -geometry 48x48 ico: png:- | display -
>>
>> で表示したものを添付しますね。背景の市松模様は、display が透過色
>> を表示する場合の仕様です。
> むむ、うちのとはマスク位置が正反対です。
> Version: ImageMagick 6.2.8 06/14/06 Q16 http://www.imagemagick.org
> を使い同様に表示したものを添付します。
ええっ、これが同じ画像だなんて信じられませんね。絵づらは XEmacs
が modeline に表示するものと良く似ています。同じ convert を使っ
て w3m-favicon-type の値も同じ png なのに、どうしてこうも違うの
かしらん。ちなみに Emacs が表示するものは IE6 のと似ていて、どち
らも "F" の上の横棒が欠けています。
> http://www.imagemagick.org/script/changelog.php に
> 2007-11-02 6.3.7-0 Cristy <quetzlzacatenango@xxxxxxxx>
> Fixed transparancy bug for the ICO image format.
> とあるのが気になります。
ほほう。6.3.7-3 を試してみました。これだと "F" の上の横棒が見え
ます:
>> もう一つの手としては create-image の引数で :background "色" を指
>> 定すると、少なくとも png ではできるみたいです。ただ、ImageMagick
>> や Emacs が link している libpng のバージョンにもよるかもしれな
>> いので、油断ができません。
> うぅむ、 :background はぼくも気がついたのですが、Emacs 22.1.50.1 、
> libpng が
> $ strings /home/QtPalmtop/bin/emacs|grep png|grep version
> libpng version 1.2.14 - November 28, 2006
> libpng version 1.2.14 - November 28, 2006 (header)
> で試してみてもうまくいきませんでした。
うちは libpng version 1.2.22 - October 13, 2007 でした。
> http://www.debian.org/ の favicon に対して
> (insert-image
> (create-image "~/deb.png" 'png nil))
> => 背景が白
> (insert-image
> (create-image "~/deb.png" 'png nil :background "red"))
> => 背景が黒 (= バッファの背景)
> となりました。
ことらではどちらも背景が黒。ほよよ。
> 透過だけはされているのかな?この時は、ちゃんと透過色だけが色抜きされて
> ます…。不思議…。これを利用して、mode-line の背景色を指定してやると透
> 過できているように見えるかもしれませんね。
やっかいなのは header line と mode line の背景色が同じではないこ
と、さらに mode line の色は選択されているときとそうでないときで
変化することですね。
あるいは表示する favicon の左右に 1-dot 幅の透明な縦棒をくっつけ
て heuristic を使うとか...ううむ、降りたくなってきた。^^;;
それから、png の透過色は、こことか emacs-devel で過去に話が出て
ましたが、まだ Emacs の普通のバッファ上ではサポートされていない
と思うんですよ。だから上記の青田さんの例は、こうでもして実験しな
いといけないと思います。
(と書いたものの、どうも w3m-favicon.el が作るものと同じ感じにな
りません。そのまま書いておきます。すみません。)
(progn
(pop-to-buffer "*testing*")
(setq header-line-format
(propertize
" "
'display
(create-image "~/deb.png" 'png nil)
'face 'header-line)))
--
山岡