Heim  >  Artikel  >  Backend-Entwicklung  >  Verwendung von ImageMagick für PHP;

Verwendung von ImageMagick für PHP;

高洛峰
高洛峰Original
2016-11-16 10:33:242951Durchsuche

(1). Erstellen Sie ein neues Bild, 500 Pixel breit, 300 Pixel hoch, schwarz, im PNG-Format

$img =new Imagick();
$img->newImage(500,300,'black','png')

Verwendung von ImageMagick für PHP;

(2). 🎜>

Angenommen, wir wählen $img in Beispiel 1 als Hintergrund aus. Zu diesem Zeitpunkt überlagern wir das Bild mit einer Spurs-BIP-Kombination.

Kennen Sie den Pfad des zweiten Bildes es ist $imageSrc="/home/XXXX/spurs.png";

Der erste Schritt besteht darin, dieses Bild zu instanziieren

$imgtwo = new Imagick($imageSrc);

Da wir überlagern möchten, müssen wir die Größe der beiden Bilder auf die gleiche einstellen; zuerst müssen wir die Größe des ersten Bildes anpassen (ps: wir können die Größe auch hier angeben).

$height=$img->getImageHeight();//获取图片1高度
$width=$img->getImageWidth();//获取图片1宽度
Der zweite Schritt besteht darin, die Größe des Bildes zu ändern

$imgtwo->resizeImage($width,$height,Imagick::FILTER_LANCZOS,1);
ResizeImage-Parameterbeschreibung

bool Imagick::resizeImage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )
Parametererklärung:

Spaltenbreite des Bildes

Zeilen Bildhöhe

Filterfilter, der zum Filtern von Bildern verwendet wird, Gaußscher Filter hängt von der Situation ab

Unschärfe Unschärfe = 1 ist Unschärfe, Unschärfe = -1 ist Schärfung

Der dritte Teil, Bilder überlagern

CompositeImage(); verwenden

bool Imagick::compositeImage ( Imagick $composite_object , int $composite , int $x , int $y [, int $channel = Imagick::CHANNEL_ALL ] )
Parameterbeschreibung:

composite_object: Imagick-Objekt für zusammengeführte Bilder

zusammengesetzt: Operation zusammenführen, Operationskonstanten definieren. Weitere Informationen finden Sie in der Konstantenliste der Zusammenführungsoperation

x: die Abszisse relativ zur oberen linken Position (0,0) des Bildscheitelpunkts

y: die Ordinate relativ zur oberen linken Position Position (0,0) des Bildscheitelpunkts

Kanal: Schalten Sie den Kanalmodus ein, indem Sie eine Kanalkonstante übergeben. Um mehrere Kanäle zu unterstützen, können mehrere Kanalkonstanten durch binäre Rechenoperationen kombiniert werden.

ps: Hier wird Bild zwei über Bild eins gelegt

$img->compositeImage($imgtwo,$image->getImageCompose(),0,0)
Das generierte Bild sieht wie folgt aus:

Verwendung von ImageMagick für PHP;

Endlich

1. Wir können das Bild direkt auf der Webseite anzeigen, aber wir müssen eine Kopfzeile hinzufügen.

header("Content-Type: image/png");
echo $img;
(3). Um Text auf dem Bild zu konfigurieren

müssen Sie die ImagickDraw-Klasse verwenden.
在当年目录下生成为img.png
$file="./img.png";
$img->writeImage($file);
这样就会在当前目录下生成图片img.png;

Der erste Schritt besteht darin, die ImagickDraw-Klasse zu instanziieren:

Schriftfarbe festlegen

$draw=new ImagickDraw();
Schriftgröße festlegen

$draw->setFillColor(new ImagickPixel('white'));
Schriftart festlegen

$draw->setFontSize('25');
Schriftrichtung festlegen

$draw->setFont("../fonts/Arial.ttf");
ps:

Imagick: >
$draw->setTextAlignment(Imagick::ALIGN_RIGHT);

Zeichnen Sie auf die Grundplatte;

$img->drawImage($draw);

Verwendung von ImageMagick für PHP;

NBA历史上最伟大的组合GDP

(4).裁剪图片

这个夏天邓肯退役了,GDP组合解题。我们只能把邓肯去掉

$img->cropImage(300, 300, 0, 20);

第一个参数是图片的宽度

第二个是高度

图片裁剪的x轴位置

图片裁剪Y轴位置

然后我们再把生成一个圆角

$img->roundCorners(60, 60);

就生成了少了邓肯现在马刺,外加一个伦纳德

ps:这里我重新写了文字,变成了GP;

Verwendung von ImageMagick für PHP;

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:PHP-Standardbibliothek SPLNächster Artikel:PHP-Standardbibliothek SPL