|
カテゴリ:PHP
鼻水とクシャミが止まらぬーん・・・(;D)rz
こんにちは、HKです。 前回は 画像データをDBへ直接保存->DBから画像データを直接画面出力 という事ができました。 今回は予告通り DBから画像データ取得->メモリ上のみで画像をリサイズ->画面出力 をやってみました。 画像リサイズの流れとしては(JPEGの場合) imagecreatefromjpeg( )により、ファイルID取得 imagecreatetruecolor( )により、画像リソースを作成 imagecopyresampled( )により、先ほど作ったリソースにリサイズしつつ元ファイルをコピー imagejpeg( )により、リサイズしたファイルを出力 こんな感じ。 早速作って実験! ・・・ならないw imagecreatefromjpeg( )で引っかかりました。 そもそも、この関数の引数はファイルへのパスです。 で、今回やろうとしているのは、メモリ上のみでリサイズを完結するです。 ・・・ダメじゃんw メモリ上のみということはファイルパスが存在しません~haha 他に良い関数ないかな~と探していると・・・ありました!救世主! imagecreatefromstring( )関数君です! これは画像データ自体を引数とし、imagecreatefromjpeg( )と同じ返り値を得られます! さっくりプログラムを修正し実験・・・ ("□")キター 成功しました~ 考え始めて8時間超(!?)、ついに完成しました(・-・*) 相変わらず細かいところは(というよりソースコード全て)すっ飛ばしていますが、ちゃんとできる事を確認しました。 途中画像データからファイルサイズ(x,y)を取得するのにstream_wrapper_register( )を使用したりしてます。 ストリームを使うのは初めてだったので、良く分からず使ってますが・・・まあいいか 何かまた一つ賢くなった気がします。ヽ(´ー`)ノ おしまい お気に入りの記事を「いいね!」で応援しよう
Last updated
2007.07.31 18:07:52
コメント(0) | コメントを書く
[PHP] カテゴリの最新記事
|