コード

thumbnail用のイベントを準備

2010年11月22日

画像のThumbnailの扱いについて色々とできるように、Jeans CMS本体を整備し、SVN314としました。

「サムネイルの保存サイズ」 「サムネイルの表示サイズ」 「管理画面でのサムネイルの表示サイズ」の3つが、グローバル設定で指定できます。

なおSVN311以降では、Mocchiさんのご尽力により、Windows Bitmapのサムネイルを作成できるようになっています。これはもともとPHPのGDにはなかった機能で、バイナリファイルを扱うメソッドを書くことで実現したものです。

「?action=media&mode=thumbnail&file_path=1/2010-06-26-Clipboard02.png」のように、サムネイル表示用のアクションでURLにfile_pathを指定することで、skins/media/にある画像ファイルのサムネイルを扱えるようになりました。この機能をどのように使っていくかは、今後のバージョンで探ってゆきたいと思います。<%thumbnail%>などのスキンタグを使用することになると思います。

「pre_create_thumbnail」というイベントを用意しました。これにより、サムネイルの保存サイズを、プラグインからの指定で変更することができます。また、各種サイズのサムネイルをプラグインで保存しておきたい場合のタイミングとして、このイベントを利用することもできます。

デフォルトのサムネイル保存サイズは、240pxとしました。これは、240という数字がさまざまな整数の倍数であるためと、このサイズのサムネイルはおよそ10-20kbほどの大きさのファイルになり、今のインターネット環境やサーバー環境にそれほど負担をかけないと判断したためです。

なお、以前のバージョンからSVN308以降のバージョンにアップグレードする際は、次のクエリーを管理画面のデータベースのページで実行してください。
DROP INDEX jeans_binary_uniquekey;
CREATE UNIQUE INDEX jeans_binary_uniquekey ON jeans_binary (type,name,contextid,owner);
INSERT INTO jeans_config_desc (name, desc, type, defvalue, extra, configtype, owner, sequence) VALUES ('THUMBNAIL_SIZE', '_ADMIN_CONF_THUMBNAIL_SIZE', 'text', '240', 'numeric', 'global', 'jeans', '270');
INSERT INTO jeans_config_desc (name, desc, type, defvalue, extra, configtype, owner, sequence) VALUES ('THUMBNAIL_SIZE', '_ADMIN_CONF_THUMBNAIL_VIEW_SIZE', 'text', '120', 'numeric', 'global', 'jeans', '271');
INSERT INTO jeans_config_desc (name, desc, type, defvalue, extra, configtype, owner, sequence) VALUES ('THUMBNAIL_SIZE', '_ADMIN_CONF_THUMBNAIL_ADMIN_SIZE', 'text', '80', 'numeric', 'global', 'jeans', '272');

コメント

コメントはありません

コメント送信