2009-08-04

Bloggerで透過PNG画像のサムネイルが透過じゃなくなる問題およびその解決

まず何から話し始めたらよいのやら…。

他のブログサービスのことは、利用したことが無いからわからないが(そもそもなんでBloggerを選んだのか自分でもよくわからないが)、Bloggerでは、自分のブログのあるサーバに、自由に画像をアップロードして表示する機能は(多分)無い。

どういうことかというと。

ブログ作成画面で「画像を追加」ボタンを押して画像を載せると、記事中にはサムネイルが表示される。そのリンクをクリックするとアップロードした元の画像が見られる。これ自体は、ブログでは一般的に見られることで、特に写真なんかを掲載したいときには便利だ。しかし、リンクなんか作らないで単純に画像を表示したいだけのときもある。普通のホームページだったら、適当な場所に画像をアップロードしてimgタグのsrc属性でその場所を指定してやればいいだけのことで、わざわざサムネイル画像をupしたり、リンクを張ったりしなくてすむ分だけ楽だ。
ところが、Bloggerの場合「Blogger内の好きな場所に画像をアップロードする」ことができない。用意された機能を使う場合は、先に述べたような「サムネイル方式」でしかやりようがないのだ。imgタグで画像の場所を指定して直接表示したいのなら、どこかBlogger外にスペースを借りてそこに画像をアップロードする必要がある。
僕はそもそもこれが不満だった。

まあ、でも仕方ないので、僕は「サムネイル方式」で画像を載せることにした。前回の記事の反応スキームの画像も(今は違うが)サムネイルだった。
しかし、ここで問題が起こった。僕は、この画像を透過PNGで用意したのにサムネイル画像の背景は白くなっていたのだ。理由は不明である。

そこで、画像を削除してもう一度アップロードしてみようとしたが、Bloggerの仕様では画像を削除したければその画像を含む記事をも消さなけりゃいけない(下記リンク参照)。
自分のブログにアップロードした写真を削除するにはどうすればよいですか。
このあたりの仕様もひどいと思うのだが、とにかく消してもう1回アップロードしてみてもうまくいかない。リンク先の元画像はちゃんと透過PNGになっているのだが、サムネイル画像はなぜか透過じゃなくなっている。

理由が分からないのでお手上げになってしまって、色々調べていたらGoogle BloggerブログHacks Tips Tweaksで、参考になりそうな記事を見つけた。

Google Blogger から透過のまま GIF, PNGをアップロード

ここの著者の方も当初Bloggerでの画像のアップロードの際に使いにくさを感じておられたようだ。PicasaWebから透過GIFやPNGをアップロードしてそのアドレスをBloggerに貼り付けるとJPGに変換されて透過しなくなってしまったのだそうだ。

ん? Bloggerからアップロードした画像ってPicasaに載るんだ。
ちょっと詳しい人にとっては常識なんだろうが、だいたい僕はPicasaがGoogleのサービスであるということ自体知らなかった。Bloggerで画像をアップロードする際も特にそんな記述は無かったような気がする。もうちょっとそこんところはっきりわかるように説明してくれてもいいんじゃないの?>Googleさん。

とにかく、Bloggerから普通にアップロードした画像がPicasaに載るんだったら、そのアドレスをimgタグのsrcにすれば、(サムネイル方式じゃなくて)直接記事中に画像を表示できるし、上記リンク先の通りにやれば透過PNGも問題なさそうだ。まあ、形式としてはどこぞのレンタルスペースを借りて、画像に(Bloggerから見て)外部リンクを張っているのと変わりないんだけれども、BloggerもPicasaもGoogle内のサービスということで完結している感じがするので若干気分がいい。

ということで、無事Picasaに透過PNGの画像をupしてBloggerで表示することができた。ちなみにGoogle BloggerブログHacks Tips Tweaksの著者はうまくいかなかったようだが、なぜか僕がやったときは、Picasaから透過PNGをアップロードしても勝手にJPGに変換されたりせず、特に問題なかった。ただし、ファイル名の後ろにさらに拡張子が追加されて~png.pngという風になっていた。このあたり、勝手にJPGになってしまうことと関係があるのかもしれない。

話の流れが一貫していなくて迷走気味だが、結論はBloggerでの画像の取り扱いはわかりにくい、ということである。

2009年8月9日追記
勢いで書いてしまって、結局何が言いたいのかはっきりしなくなっているので、Googleへの要望という形でまとめてみる。

  • Bloggerの標準機能で「サムネイル方式」でない単純なimgタグで画像を掲載することができるようにしてほしい。
  • Bloggerでアップロードした画像がPicasaに保存されることを明記すべきである。
  • 透過PNGや透過GIF画像を掲載する際は、そのサムネイル画像も透過するようにしてほしい。
  • ブログ内の画像を消すためには記事自体を消さなければならない、というどうしようもない仕様を何とかしてほしい。これはPicasa上で画像を削除すれば一応解決するわけだが…。
  • ついでにもう一つ。Bloggerの機能で画像を載せるとHTMLに画像とそのサムネイル画像のURLが挿入されるわけだが、もしその部分の記述を誤って消してしまうと、画像のURLがわからなくなる。もし画像がPicasaにアップロードされると知らなければ、画像が行方不明状態になってしまう。仕方ないので再度画像をアップロードすることになってしまいばかばかしい。ユーザーインターフェースの改善を望む。

0 件のコメント: