exifshowcaseプラグイン

'Exif'という言葉をご存知だろうか?その詳細については Googleででも検索して貰うとして、 非常に簡単に説明すると、撮影情報や著作権情報、その説明、位置情報など様々なデータの 格納方式を定めた画像ファイルの規格名称である。

この形式の画像ファイルを活用したExif画像掲示板 もあるが、ベースとしているのが掲示板というシステムのため、画像とそのデータ閲覧 目的としては、

  • 単純な順列としてしか構成できない*1
    • グループ化、階層化した扱いが出来れば、閲覧にも管理にも都合が良い
  • 保守管理の使い勝手が今一歩
    • 出来ることは削除、コメントの編集くらい
    • 複数による管理に対応していない
  • その他の情報への拡張性が乏しい
    • せいぜい投稿コメントにリンクを加える程度か

等の点で不満が残っていた。

ところが、気が付いてみるとこれらの不満はWikiEnginesがとっくの昔に解決しているではないか。そこで、Exif画像掲示板と同程度のExif情報 表示機能を実現するプラグインの作成を試みることにした。旅行のアルバム、趣味の データ蓄積、ひょっとしたら災害情報の共有*2など色々な用途に活用できるかもしれない。

使い方

#exifshowcase([pattern ,[option parameters]])

patternは、対象とするファイル名を正規表現で記述する*3。patternが指定されない場合は、添付されているJPEG画像(*.jpg)が全て対象となる。

主なオプションパラメータとしては以下のものがある。

noimg   : 画像を表示しない
nokash  : カシミールLMLサーバへのリンクを生成しない
nomapi  : マピオンへのリンクを生成しない
reverse : 表示順を逆辞書順に
noexif  : Exif情報を表示しない
ucomedit: ucomeditプラグインによるUserComment編集フォームへのボタン生成
整数    : 表示列数指定

いまだ開発途上*4なので、これらは 決定ではない。

使用例

ダウンロード

履歴

  • 初出 (2003-12-10)
  • 一部Exifデータ表示に、HTMLエティティ対策追加 (2004-01-11)
  • 表示対象指定を追加 (2004-01-17)
  • オプションパラメータ reverse, noexif を追加 (2004-01-17)
  • 表示列数指定を追加 (2004-01-17)
  • XHTML 1.1 対応を始めるも、スパゲティなソースに…まだ未完? (2004-03-03)
  • W3CのMarkUp Validation Serviceで、一応 This Page Is Valid XHTML 1.1!が出るようになった。 (2004-03-04)
    • プラグインとしてはOKになったものの、広告のiframeをどうしてもobjectでは完全に代替できなかった*6ため、サンプルページのXHTML 1.1 validationは諦めた。(2004-03-04)
    • '宗教的な'対応を僅かに追加 (2004-03-05)
  • ucomeditプラグイン対応 *7 (2004-03-08)
  • ucomeditプラグインへのボタン生成則の修正 (2004-03-19)
  • *.(jpg|jpeg)*8を対象ファイルに (2004-08-25)
  • exif extensionが有効でない場合の、画像長辺検出のバグを修正 (2004-09-28)

備考

  • このexifshowcaseプラグインは、attachプラグインへの改造を前提としている。標準のままのattachプラグインでは 使用出来ない*9ので注意。
  • デジカメ画像のExifデータ編集にはカシミール3Dがお勧め。アウトドア系の趣味や旅の記録であれば、GPSとの連携も楽しい。インドア系の趣味でも、位置情報の付加には価値があるだろう。
  • カシミール3Dのアイコン「 [kash]」を./imageディレクトリに'kash3d.png'として 保存しておく。

コメント

持っていった方がいるようなので、試しに#commentを付けてみます。不具合があったら教えてください。対応できるとは限りませんが…

  • 非常に興味深いプラグインです。アップロードしたjpgに対して後からコメントを追加する機能の実装は出来ますでしょうか?旅行写真に対してみんなでコメントを書き込むような使用法を考えているのですが -- shibacho 2004-03-05 (金) 00:08:17
  • org:続・質問箱/23のように、articleにファイル添付機能を追加したものが、そういう使用目的には合っていると思います。Exif情報表示に重きをおく場合は、添付画像の表示にrefを使っているところをexifshowcaseにすれば良いかもしれません。 -- ARAI 2004-03-05 (金) 07:13:27
    • Exif情報の書換えは、プラグインとして組みこむことは不可能ではないでしょうが、ちょっと考えた限りでは、あまり使い勝手の良いモノになるとも…。 -- ARAI 2004-03-05 (金) 07:22:04
  • ご指摘の質問箱のページはまだ見ておりませんでした。exif情報を書き換えると便利そうだなと思ったのは、ある程度写真にコメントを書き込んでもらった後で、コメント付きの画像ファイルをダウンロードさせてCD-R等に焼いてアルバムにするという使用用途を考えていたからです。完全に仲間内で楽しむページを想定しています。また、全ての写真に対して網羅的にコメントをつけてもらうのではなく、写真の枚数に対して比較的コメントが少ないページを考えています。そうすると、articleプラグインではなく、一覧で表示されるexifshowcaseプラグインの方がいいなと思ったわけです。ただ、ここまで書いて、自分が考えているのは特殊な用途かなとも思います。ありがとうございました。 -- shibacho 2004-03-05 (金) 09:38:03
    • あまりお役に立たなかったようですね。このプラグインは「編集済み画像」でアルバム的な表示をし、必要とあれば(個々の画像ではなく)ページ単位にcommentや直接の編集等で情報を付け足していく指向を持っていまして、ページとしてはともかく、画像データ編集というものではないのです。Exifデータ編集という方向を考えたことがない訳ではありませんが、PC上の便利なツール を思うと、今一歩その姿が見えてきませんでした。 -- ARAI 2004-03-05 (金) 21:15:43
      • 結局、新たに作ったプラグインとの連係という形ではありますが、一応UserCommentの編集が出来るようになりました。 -- ARAI 2004-03-08 (月) 19:44:30
  • 一覧表示でucomeditの連携の時に、UserComment?が空の時にeditボタンが表示されないようです。342行目のif ( $params['ucomedit'] ) のブロックを次の } の次に移動してやれば表示されるようですが、これでOKなのかな? -- shibacho 2004-03-19 (金) 04:21:07
    • レポートありがとうございます。空だったり空白文字だけだったりする場合を考えていませんでした。ボタン生成の判別は、$paramas["ucomedit"]かつ取得したExifデータ配列にキー"UserComment"が存在する場合に修正しました。shibachoさんの対処でも特に問題はありませんが、ucomeditプラグインでは扱えないファイルの場合にもボタンが生成されてしまいます。 -- ARAI 2004-03-19 (金) 18:33:51
    • アルバム作成の際には、バックアップや完成後のダウンロードにgetallプラグインが便利かもしれませんよ。と、ちょっと宣伝してみたり [bigsmile] 。 -- ARAI 2004-03-19 (金) 18:59:45
  • 修正ありがとうございます。getallプラグインは存在を知らなかったら車輪の再発明しちゃうところでした(笑) -- shibacho 2004-03-19 (金) 23:00:58
  • FOMA端末の拡張子がJPGでした。大文字対応可能にできますでしょうか。 -- 2004-08-25 (水) 14:53:37
  • あ、すいません。▲.jpgとともに使用します。 -- たらこせる 2004-08-25 (水) 14:54:42
    • 対応しました。 -- ARAI 2004-08-25 (水) 19:54:20
  • $sztypeは,$exif_extensionの真偽に関わらず,$exif["COMPUTED"]["Height"]や$exif["COMPUTED"]["Width"]を基に決定されているようです.$exif_extensionが偽の場合には,list($ew, $eh) = getimagesize($fname);した後で$sztypeを決定すると良いように思うのですが,いかがでしょうか? -- 2004-09-28 (火) 13:05:27
    • ありがとうございます。ご指摘の通りです。早速修正しました。 -- ARAI 2004-09-28 (火) 18:33:36
  • お役に立てて幸いです. -- 2004-09-29 (水) 00:32:58
  • attach_refの差分を1.4.4に適用してみたのですが、すんなりいかなくて、どこを修正したか把握してないと厳しそうです。オリジナルで対応していただけるとうれしいなぁ... -- 大怪獣もぎゃ 2004-12-30 (木) 20:21:56
    • THUMB_USEをFALSEにすれば、attach/refの改造は必須ではありませんよ。1.4.4でも標準のままで問題はありませ…あ、その辺のことをどこにも書いてませんね。 [worried]
      attach/refへの改造については、pukiwiki.org:自作プラグイン/attach.inc.php・ref.inc.phpにSnakeさんという方が作成された1.4.4用の差分があります。 -- ARAI 2004-12-31 (金) 09:48:39
  • できたぁ。Snakeさんのパッチでうまくいきました。ありがとうございます。ちなみに適応したのはこちら。 -- 大怪獣もぎゃ 2004-12-31 (金) 16:14:18
  • ExifShowCase?のほうにcomment欄がなかったのでこちらに書かせていただきます。インストールが難しくて大変でしたが、やっと使えるようになりとても重宝しています。そこで一つ要望があるのですが、Exifの回転情報を参照して表示する機能はあるのでしょうか?これがあれば、ExifShowCase?を元のデジカメの情報を劣化させることのないフォトライブラリー管理ソフトとして使えるようになるのですが・・・。 -- nobunora 2005-03-28 (月) 02:36:29 -- (PukiWiki.orgより転載) 2005-03-28 (月) 20:45:52
    • Orientationを拾うこと自体は容易なことです。ですが、それに従った画像の表示となるとちょっと話は違います。画像の表示はattachプラグインに依存しており、attachプラグインには画像回転の機能は実装されていないのです。 -- ARAI 2005-03-28 (月) 21:46:34
      • 一案としては、サムネイル生成改造あたりに、Orientationを拾ってimagerotateをする処理を加えてみてはどうでしょうか。 -- ARAI 2005-03-28 (月) 22:10:37
  • 転載ありがとうございます。comment欄があるのに気がつきませんでした。すみません。サムネイルだけでも回転すればかなり見栄えがいいですね!皆さんのログを見ていたら、欲しい機能を自分でも作ってみたくなりました。プラグインのインストール程度でも出来るとうれしくて、このままついついはまってしまいそうです。 -- nobunora 2005-03-29 (火) 00:16:05
  • #exifshowcase()で添付ファイルのサムネイルが表示されませんが、どこが悪いのでしょうか? -- kahata 2006-05-02 (火) 12:51:20
    • う〜む、それだけでは何とも。attachの方の改造がうまく出来ていないとか、PHPでgdが使えないとかなら、THUMB_USEをFALSEにすることで回避できる筈ですが…。分かりません。 -- ARAI 2006-05-02 (火) 14:24:11
  • ありがとうございました。THUMB_USEをFALSEにすることで回避できました。 -- kahata 2006-05-02 (火) 15:27:02


*1 掲示板そのものを複数設置すれば出来ないことはないだろうが、管理コストがその分増える
*2 Exif掲示板をそのような目的で運営されている方が実在した!GPS対応カメラ付携帯が普及している現在なら、とても実用的で社会の役に立つ応用になる可能性がある。
*3 PHPのeregで評価
*4 穴はあるだろうし、加えたら便利だろうと考えている機能もあることはあるが、個人的用途としてはもう十分なので、実際にこの先開発が進むかどうかは…
*5 refプラグインの改造だから当然そうなる
*6 IE5.5/FireBird0.7
*7 機能の追加はしないんじゃなかったのか?という突っ込みは却下 [smile] 僅かにボタンを一つ付けただけである…ということにしておこう。
*8 case insensitive
*9 noimg、あるいはTHUMB_USEをFALSEとした使用なら、標準のままでもOK。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-05-02 (火) 15:27:02 (1302d)