skillup

技術ブログ

PHP

PHPでの画像トリミング&縮小

投稿日:

PHPにて画像のトリミング&縮小処理があったんで、メモ。

仕様は下記の通り

  • 16:9の画像(解像度:5168×2907)を高さを維持して4:3にする。つまり横長だった画像比を変えるので、両サイドを取り除く
  • 解像度自体を320×240にする。

サンプルコード

imagecopysamledの意味がなかなかわかりませんでした。

トリミング

トリミングに関しては開始点($startPointX)でコントロールします。

中央点を取った後でリサイズ後の画像の横幅の半分を引き算します。(図で書いたほうがわかりやすいかも。)

縮小

最終的なファイルの縮小サイズに関してはimagecopysampledの背景画像の幅、高さの引数だけではだめで、$canvasの値を修正しないといけません。

以外にいろいろなところで使いそうですね・・

参考リンク

http://keicode.com/cgi/php05.php

http://www.24w.jp/study_contents.php?bid=php&iid=php&sid=graphic&cid=002

http://symfoware.blog68.fc2.com/blog-entry-859.html

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

phpの時分秒+cakePHPのupdate

ちょっと小ネタ集になります。 Contents1 PHPで秒→時分秒変換2 cakePHPでのupdate PHPで秒→時分秒変換 PHPで秒数から時分秒に変換するプログラムです。 汎用的かなと思った …

no image

コード静的解析ツールを使った際の気づきなど

最近のプロジェクトでコード静的解析ツール(phpcs,phpmd)を使った際の気づきなど コードを書きながら常時エディタがチェックするタイプのものでないとまず無理(保存するたびでも無理だし、コミット時 …

no image

mb_convert_encodingに関して(文字コードの自動検出やその周辺)

以前Perlでもやりましたが、文字コードの自動検出に関して。 ちなみにcp932=SJIS-WINです。 参考リンク Perlでの動的改行コード読み込みに関して+cp932ネタ PHPの場合、mb_d …

no image

PHPにおけるstaticキャッシュ

PHPにおけるstaticキャッシュに関して。 PHPのおけるキャッシュはいくつかありまして、一般的にはmemcachedなどのKVS方式のキャッシュサーバーなどを使う方法が一般的かと思います。 キャ …

no image

PHPの開発事情 (PHPBrew/ビルトインサーバー/Xdebug/PHPUnit/Composer)

私自身、プログラミングは好きなんですがあまり現代の流行の技術に興味がありません(汗) IT業界はドッグイヤーならぬ、マウスイヤーとも呼ばれているようで、常に最新技術の動向には目を光らせていく必要があり …