[PHP-users 32083] Re: 携帯用画像ファイルの再配布不可識別子

takeyoshi @ glovalex.com takeyoshi @ glovalex.com
2007年 5月 9日 (水) 14:08:11 JST


利根川様
PHP-usersのみなさま
ご無沙汰しております。
竹吉です。
せっかくご教授頂いたのに、導入後のご報告が遅れてしまい申し訳ございません。
遅ればせながらImageMagickの導入
およびMagickWandによるコメント追加処理の開発・検証が完了いたしました。
MagickWand導入に関して多少苦戦しました。
既存環境でPHPの展開ソースディレクトリが残ったままbuildconf --forceをしても上手くいかず。。。
いったん既存のソースディレクトリを退避させbuildconf --forceいたしました。
コメント追加ロジックは以下のような感じです。
 // 転送禁止
 $file_path = "画像ファイルパス";
 //-- ファイルオープン
 $fp = fopen($file_path,'rb');
 $data = fread($fp,filesize($file_path));
 fclose($fp);
 //-- MagickWandによる画像読込み
 $magick = NewMagickWand();
 MagickReadImageBlob($magick,$data);
 
 //-- アクセス端末のキャリアで追加コメント制御
 if(EZだったら){
 MagickCommentImage($magick,"kddi_copyright=on"); 
 }elseif(ドコモだったら){
 MagickCommentImage($magick, "copy=\"NO\"");
 }elseif(ソフトバンクだったら){
 // no comment
 }
 //-- MagickSetFormat()引数用
 $finfo =getimagesize($file_path);
 switch($finfo[2]){
 case "1":
 $type = "gif";
 break;
 case "2":
 $type= "jpg";
 break;
 case "3":
 $type= "png";
 break;
 default:
 
 }
 MagickSetFormat($magick,$type);
 $data = MagickGetImagesBlob($magick);
 //-- 画像ファイル上書き(rewind()の方がいいか・・・)
 $fp = fopen($file_path,'w+');
 fwrite($fp, $data);
 fclose($fp);
検証の結果、転送不可となった画像ファイルが生成されました。
本当に助かりました。
大変遅くなりましたが、ご教授ありがとうございました。
On 2007年4月26日 13:38:23 +0900
"S.Tonegawa" <stone @ 328w.co.jp> wrote:
> 竹吉さん、PHP-usersのみなさま
>> こんにちわ、利根川と申します。
>> On 2007年04月26日, at 12:15, takeyoshi @ glovalex.com wrote:
>> > 早速のご教授、ありがとうございます。
> > 即、ステージングに導入し検証いたします。
> >
> >> MagickWandを使えば、MagickCommentImage()で
> >> JPEG/GIF/PNGに再配布禁止のコメントを入れる事が可能です。
> > これだけなんですね・・・。
> > 早速導入後、使用して結果報告致します。
>> そうですか、お役に立てそうで、なによりです。
>> たぶん、こんな流れで実現できるはずです。
> ----
> $magick = NewMagickWand();
>> // ▼画像データを設定
> // $image_dataは、画像ののバイナリデータ
> MagickReadImageBlob($magick, $image_data);
>> // ▼コメントを設定
> if ($carrier == 'i') {
> // i-mode
> MagickCommentImage($magick, "copy=\"NO\"");
> } else if ($carrier == 'e') {
> // ez
> MagickCommentImage($magick, "kddi_copyright=on");
> }
>> // ▼画像データを取り出す
> $image_data = MagickGetImagesBlob($magick);
> ----
>> > 携帯コンテンツ開発は初めてなのですが奥が深いですね・・。
> > 各キャリア・機種への対応が際限なく様々なシーンで押し寄せてくる 
> > 感覚です。
>> 確かに。
> 私も、日々、キャリア依存/機種依存に悩まされています。
>> とりあえず、画像の再配布禁止、うまくいくといいですね。
>> ----
> S.Tonegawa
> mitsubachiworks inc.
>>>> _______________________________________________
> PHP-users mailing list PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3



PHP-users メーリングリストの案内

AltStyle によって変換されたページ (->オリジナル) /