PHPで画像を扱うサンプルコード色々
2008年07月15日-
スポンサード リンク
Welcome? php|architect's C7Y, The PHP Community Website
PHPで画像を扱うサンプルコードが色々紹介されてます。
(1) ご存知、画像のサイズを得るサンプル
$information = getimagesize($path_to_image);
(2) Imagick(ImageMagick)を使って更に情報を得る
<?php
$image = new Imagick();
$image->pingImage($path_to_image);
$information = $image->identifyImage();
?>
(3) EXIF情報を読む
$exif_information = exif_read_data($path_to_image, 'EXIF');
(4) EXIF情報をImagickで読む
<?php
$im = new Imagick($path_to_image);
$ exif_information = $im->getImageProperties('exif:*');
?>
(5) 各種フォーマット画像をJpegに変換
<?php
$image_information = getimagesize($path_to_image);
/* Load image into buffer */
switch ($image_information[2])
{
case IMAGETYPE_GIF:
$image = imagecreatefromgif($path_to_image);
break;
case IMAGETYPE_JPEG:
$image = imagecreatefromjpeg($path_to_image);
break;
case IMAGETYPE_PNG
$image = imagecreatefrompng($path_to_image);
break;
default:
echo “Unsupported Image Type”;
exit;
}
imagejpeg($image, $path_to_destination_image);
imagedestroy($image);
?>
最後のimagejpegをimagepngにすれば、PNGに変換できますね
(6) 画像のリサイズ
<?php
$image = imagecreatefromjpeg($path_to_image);
$max_width = 100;
$ratio = $max_width / imagesx($image);
$max_height = imagesy($image) * $ratio;
$thumbnail = imagecreatetruecolor($max_width, $max_height);
imagecopyresampled($thumbnail, $ image, 0, 0, 0, 0,
$max_width, $max_height, imagesx($image), imagesy($image));
imagejpeg($thumbnail, $path_to_thumbnail);
imagedestroy($thumbnail);
?>
(7) Imagick でフォーマット変換
<?php
$imagick = new Imagick($path_to_image);
$imagick->setImageFomat(‘jpeg');
$imagick->writeImage($path_to_destination_image);
?>
(8) Imagick で画像のリサイズ
<?php
$imagick = new Imagick($path_to_image);
$imagick->thumbnailImage(100, null);
$imagick->writeImage($path_to_thumbnail);
?>
Imagickを使えばコードが非常にシンプルになっていいですね。
関連エントリ
スポンサード リンク
Advertisements
SITE PROFILE
最新のブログ記事(新着順)
- CSSのみで実装された500種類のローディングアニメーション「CSS Loaders」
- 画像ホバーで様々なエフェクトをかけられる「Izmir」
- CSSのbox-shadowをGUIで生成できる「CSS Box Shadows Generator」
- 好きな画像や文字を埋め込んだQRコードをリアルタイムで作れるWEBツール
- 約7500種の汎用ピクトグラムアイコン集「Phosphor Icons」
- ほぼCSSで実装されたUIフレームワーク「Ellegant CSS」
- TailwindCSSベースの150種類以上のUIライブラリ「SailboatUI」
- 1700種類以上のSVGアイコン「MingCute Icon」
- 2000種類以上の汎用ピクトグラムアイコン集「Atlas Icons」
- かわいい手書き風フォント「うさぎとまんげつのサンセリフ」
- 過去のエントリ