0

imagecopymerge を使用するプログラムがあります。ここでは、2 つの画像を使用しています。背景用の最初の画像とその中に配置される 2 番目の画像。私はそうすることができますが、今は2番目の画像を特定のサイズにしたいです。この画像はユーザーによってアップロードされ、サーバーに保存されるため、サイズを制御できません。imagecopymerge で使用する前に、2 番目の画像のサイズを変更するにはどうすればよいですか? 答えてくれてどうもありがとう。また、アップロード中にサイズを変更することは、私の最低限のオプションであることを考慮してください。サイズは255x175にしたいです。

これは私が持っているものです:

$uploadFilename = $uploadsDirectory.$now.'-'.$_FILES[$fieldname]['name'])

$upload = $uploadFilename;
$im = imagecreatefromjpeg("bg.jpg");
$img2 = imagecreatefromjpeg($upload);
$black = imagecolorallocate($im, 0, 0, 0);
$font = 'arialbi.ttf';
$font2 = 'ariali.ttf';

$newtitle = wordwrap($title, 28, "\n", true);
$newertitle = explode("\n", $newtitle);

imagettftext($im, 28, 0, 7, 270, $black, $font, $newertitle[0]);
imagettftext($im, 28, 0, 7, 320, $black, $font, $newertitle[1]);
imagettftext($im, 10, 0, 320, 362, $black, $font, $namehere);

imagecopymerge($im, $img2, 10, 350, 0, 0, imagesx($img2), imagesy($img2), 100);
imagedestroy($im);
4

2 に答える 2

2

http://php.net/manual/en/function.imagecopyresampled.php

コードを取得してください...

imagecopymerge($im, $img2, 10, 350, 0, 0, imagesx($img2), imagesy($img2), 100);

そして、それを次のように変更します...

imagecopyresampled($im, $img2, 10, 350, 0, 0, 255, 175, imagesx($img2), imagesy($img2));
于 2013-11-07T02:48:25.097 に答える