PHPで画像にモザイクをかけて保存
2024/01/12
やりたかった事はPHPで
・モザイク処理
・元の画像とは別にファイル名をつけて保存
・jpgだけでOK
■参考サイト
http://pentan.info/php/sample/img_mosaic.html
■ソース
<?
$mosaic = 5; //モザイクの程度を設定
$path = './img/dog.jpg';
list($img_width,$img_height,$type)=getimagesize($path);
if(!($src=imagecreatefromjpeg($path))){
header("Content-Type: image/jpeg");
readfile($path);
}
//モザイク処理
$img_width_m = intval($img_width/$mosaic);
$img_height_m = intval($img_height/$mosaic);
$dst_m=imagecreatetruecolor($img_width_m,$img_height_m);
imagecopyresampled($dst_m,$src,0,0,0,0,$img_width_m,$img_height_m,$img_width,$img_height);
$dst=imagecreatetruecolor($img_width,$img_height);
imagecopyresampled($dst,$dst_m,0,0,0,0,$img_width,$img_height,$img_width_m,$img_height_m);
imagejpeg($dst,'./img/dogs.jpg');//別名で保存
?>
縮小して拡大するだけでモザイクがかかるというのは驚き。
$mosaicの値を変えるとモザイクの程度も変わるので、
面白いものが作られそう。
関連記事
-
-
jQueryで画像を遅延ロードする「jquery.lazyload.js」の利用方法
画像を遅延ロードさせたい時にはjQueryプラグインのlazyloadが便利。以 ...
-
-
Dropzone.jsを使って画像をドラッグ&ドロップでアップロードする方法
画像を複数枚ドラッグ&ドロップでアップロードしたかった。だいぶ前にDro ...
-
-
Chart.jsで描写したグラフを画像としてダウンロードさせる方法
サイト内にChart.jsでグラフを描写し、ボタンやリンクをクリックすることで当 ...
-
-
PHPで画像アップロード、リサイズ、形式変換(jpg->webp等)はclass.upload.phpが便利
今までPHPで画像関連の処理を行う場合、リサイズの時のみsmart_resize ...
-
-
画像にマウスを合わせると拡大表示させる「drift」ライブラリの利用方法
amazon等ECサイトで商品画像にマウスを合わせると当該部分が拡大表示されると ...