- ベストアンサー
PHP関数で画像を縮小して表示する方法
- PHPで関数を使って画像を縮小し、指定した座標に表示する方法について教えてください。
- 質問のプログラムでは、4枚の同じサイズの画像を縮小して表示したいですが、1枚だけが縮小されて表示される問題が発生しています。
- 具体的な解決策を教えていただけると助かります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
根本的なことだけれど、phpスクリプトで「複数の画像」を返すことは出来ません。ループの「中」で、httpレスポンスヘッダとコンテンツ(画像データ)を返すというのが間違っています。 やるとすれば複数の画像を(縮小するなら縮小して)それをひとつの画像データに組み立ててから返すことになります。まずは全体のimageデータを作っておいて縮小した画像データをそこに順にコピーしていって最終的に出来上がったデータを(レスポンスヘッダとともに)返すことになります。 座標指定なんて書いているので当然理解していると思ったんですが、このコピーする段階で位置を決める(座標を指定する)ということだと思うんですが・・・
その他の回答 (2)
- font_color
- ベストアンサー率45% (24/53)
はじめまして。 ざっと見たところループ内で同じ処理を繰り返しているだけです。 $filename = 'pr-01.jpg'; ↑の部分ファイル名の定義を変数にするといいと思いますよ。
お礼
ご覧頂きましてありがとうございます。 ご回答どうもありがとうございました。 パソコンの前でヒントを求めるかどうか、 合計900時間は悩み続けていました。 どうもありがとうございました。
- corokorocoro
- ベストアンサー率29% (63/211)
どうして一枚目しかリサイズ処理されないかアルゴリズムとしてどこがおかしいかソースを解析したのか? 今回のこれおかしいところがあっという間にわかるレベルの簡単なものだぞ。 というかソースに自分でコメント書いているならおかしいところわかるレベル。 もしかして盗んできたソースでできないできない騒いでいるのかな? それと質問のタイトルの関数がわからないってなっているけどPHPのリファレンスは読んでいるのか? ソースを自分で解析しないリファレンスを読まないってことなら質問者はプログラミングをするのにまったく向かないのでプログラミングは早々に辞めた方がいい。
お礼
もうかれこれ一ヶ月以上悩み続けました。 ソースはPHPリファレンスから引用してきたものです。 PHPリファレンスは読みました。多少参考になりましたが、 全ての引数要素の意味を理解することができませんでした。 厳しめなご意見、どうもありがとうございました。
お礼
ご解説ありがとうございます。 PHPは基礎から学んでいたはずなのですが、 こういう細かいところまで手が届きませんでした。 こちらのご意見を参考にして作りなおしてみます。 ありがとうございました。