ホームページ >バックエンド開発 >PHPチュートリアル >PHP 用の ImageMagick の使用。
(1). 幅 500 ピクセル、高さ 300 ピクセル、黒の新しい画像を作成します
$img =new Imagick(); $img->newImage(500,300,'black','png')(2)。例 1 で $img を背景として選択するとします。 2 番目の画像を画像に重ね合わせます。Spurs gdp の組み合わせを選択します。2 番目の画像のパスは $imageSrc="/home/XXXX/spurs.png" であると想定されます。最初のステップは次のとおりです。この画像をインスタンス化します$imgtwo = new Imagick($imageSrc);重ね合わせるため、最初に 2 つの画像のサイズを同じに設定する必要があります。最初の画像 (追記: サイズも指定できます)。
$height=$img->getImageHeight();//获取图片1高度 $width=$img->getImageWidth();//获取图片1宽度2 番目のステップは画像のサイズを変更することです
$imgtwo->resizeImage($width,$height,Imagick::FILTER_LANCZOS,1);resizeImage パラメータの説明
bool Imagick::resizeImage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )パラメータの説明: 画像の列幅行画像の高さ
filter フィルター、状況に応じてガウスフィルターを使用して画像をフィルターします blur Blur=1 はぼかし、Blur =-1 は鮮明にします 3 番目の部分、画像を重ね合わせます compositeImage();
bool Imagick::compositeImage ( Imagick $composite_object , int $composite , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )パラメータを使用します。説明: complex_object: マージされた画像用の Imagick オブジェクト composite: マージ操作、操作定数を定義します。 詳しくはマージ演算定数一覧をご確認くださいx: 画像頂点の左上位置(0,0)を基準とした横座標y: 画像頂点の左上位置(0,0)を基準とした縦座標画像頂点 channel: チャネル定数を渡してチャネル モードを有効にします。複数のチャネルをサポートするには、2 進算術演算を通じて複数のチャネル定数を組み合わせることができます。 追記: ここでは画像 1 に画像 2 を重ねます
$img->compositeImage($imgtwo,$image->getImageCompose(),0,0)生成された画像は次のとおりです:
最後に
1 画像を Web ページ上で直接表示できますが、ヘッダーを追加する必要があります。情報;
header("Content-Type: image/png"); echo $img;
2. 指定したディレクトリに画像を生成できます
。最初のステップは、ImagickDraw クラスをインスタンス化することです。在当年目录下生成为img.png $file="./img.png"; $img->writeImage($file); 这样就会在当前目录下生成图片img.png;フォントの色の設定
$draw=new ImagickDraw();設定フォントのサイズ
$draw->setFillColor(new ImagickPixel('white'));フォントの設定
$draw->setFontSize('25');フォントの方向の設定
$draw->setFont("../fonts/Arial.ttf");ps: Imagick::ALIGN_RIGHT 右方向Imagick::ALIGN_LEFT 左イマジック:: ALIGN_CENTER Middleフォントエンコーディング形式を設定します
$draw->setTextAlignment(Imagick::ALIGN_RIGHT);drawing テキスト
$draw->setTextEncoding("utf-8")を下のボード
に描画します。
$img->drawImage($draw);
NBA历史上最伟大的组合GDP
(4).裁剪图片
这个夏天邓肯退役了,GDP组合解题。我们只能把邓肯去掉
$img->cropImage(300, 300, 0, 20);
第一个参数是图片的宽度
第二个是高度
图片裁剪的x轴位置
图片裁剪Y轴位置
然后我们再把生成一个圆角
$img->roundCorners(60, 60);
就生成了少了邓肯现在马刺,外加一个伦纳德
ps:这里我重新写了文字,变成了GP;