サムネイル画像作成などでファイルサイズが大きいものは失敗するときがある。
そんなときリソース化にしてみると画像が壊れていないか確認できる。
$img_contents = file_get_contents('path'); //サムネイル
//リソース化できないのは取得失敗
if (!@imageCreateFromString($img_contents)){
throw new exception("ファイルサイズが大きすぎるようです。");
}
サムネイル画像作成などでファイルサイズが大きいものは失敗するときがある。
そんなときリソース化にしてみると画像が壊れていないか確認できる。
$img_contents = file_get_contents('path'); //サムネイル
//リソース化できないのは取得失敗
if (!@imageCreateFromString($img_contents)){
throw new exception("ファイルサイズが大きすぎるようです。");
}
php GDライブラリ
ImageCopyResampled — 再サンプリングを行いイメージの一部をコピー、伸縮する
ImageCopyResized — 画像の一部をコピーしサイズを変更する
似てるけど結果にかなり差があり。
色化けした場合はこれを疑おう。
画質を落とさない出力
header(“Content-type: image/jpeg”);
ImageJPEG($im,”,100);
100をつけるとおk
つーかデフォルトを100にしてよ・・・。
ファイルの先頭8バイトだけで画像のフォーマットを調べる方法
http://labs.gmo.jp/blog/ku/2007/05/8.html
こりゃー便利だ。
つーかなんでGDはサポートしてないんだろう??
リソースから取得できてもよさそうなもんなのに。。