Heim  >  Artikel  >  PHP-Framework  >  So implementieren Sie die Funktion zum Drehen und Zuschneiden von Bildern im Thinkphp-Framework

So implementieren Sie die Funktion zum Drehen und Zuschneiden von Bildern im Thinkphp-Framework

WBOY
WBOYnach vorne
2023-05-30 11:52:381032Durchsuche

Schritt 1: Thinkphp-Framework installieren
Wenn Sie das thinkphp-Framework in Ihrer eigenen Entwicklung verwenden möchten, müssen Sie es natürlich in Ihrem eigenen Projekt installieren. Die Installation von thinkphp ist sehr einfach. Sie müssen lediglich das dekomprimierte komprimierte Paket direkt in das Projektstammverzeichnis verschieben. Nach dem Umzug müssen Sie nur noch die Eintragsdatei index.php im Projekt ändern, um thinkphp verwenden zu können.

Schritt 2: Führen Sie die Bildverarbeitungsklasse in thinkphp ein.
Führen Sie die Bildverarbeitungsklasse im thinkphp-Framework ein, um Bilder zu bedienen, hauptsächlich einschließlich grundlegender Verarbeitungsmethoden wie Skalierung, Zuschneiden und Drehung. Unter anderem steht der Rotationszuschnitt im Mittelpunkt dieses Artikels.

Fügen Sie den folgenden Code im Controller hinzu, um die Bildverarbeitungsklasse einzuführen:

use think\Image;

Schritt 3: Implementierung der Bilddrehung und des Zuschneidens
Drehen und Zuschneiden ist ein kombinierter Vorgang aus Drehen und Zuschneiden von Bildern und ist sehr einfach durchzuführen implementieren. Das Folgende ist der schwierigste Teil dieses Artikels – die Code-Implementierung der Funktion „RotateCrop“.

/**
* 旋转并裁剪图片操作
* @param string $image 被操作图片路径
* @param int $width 裁剪宽度
* @param int $height 裁剪高度
* @param int $degree 旋转角度
* @return bool|string 处理后保存的文件路径或者false
**/
public function rotateCrop($image, $width, $height, $degree) {
    $image = Image::open($image);
    $image->rotate($degree)->crop($width, $height)->save($image);
    return $image->save() ? $image->getPathName() : false;
}

In dieser Funktion müssen wir 4 Parameter übergeben: Bildpfad, Zuschneidebreite, Zuschneidehöhe und Drehwinkel. Der Bildpfad ist ein erforderlicher Parameter, und die anderen 3 Parameter sind optionale Parameter. Die Standardeinstellung für Breite und Höhe ist Null . Das heißt, es wird kein Zuschneiden durchgeführt. Der Drehwinkel ist ebenfalls standardmäßig auf 0 eingestellt, was bedeutet, dass keine Drehung durchgeführt wird.

Die wichtigste davon sind die Rotations- und Zuschneidevorgänge. Die Funktion Image::open($image) öffnet ein Bildobjekt, ruft die Methoden „rotate()“ und „crop()“ im Objekt auf, um Rotations- und Zuschneidevorgänge durchzuführen, und schließlich save() Speichern Sie einfach das Bild und geben Sie es aus.

Schritt 4: Testen Sie den Effekt
Abschließend testen wir unseren Code. Fügen Sie unserem Controller den folgenden Code hinzu:

$image = 'image/test.jpg';
$width = 200;
$height = 300;
$degree = 90;
$test = $this->rotateCrop($image, $width, $height, $degree);
echo &#39;<img src="&#39;.$test.&#39;" />&#39;;

Im obigen Code ist $image der Zielbildpfad, $width und $height sind Testzuschneideparameter, $degree ist ein Testrotationsparameter. Nach der Ausführung unserer Funktion „rotateCrop( )“ kehren wir zurück einen gespeicherten Bildpfad erstellen und ihn schließlich auf der Seite anzeigen. Nachdem Sie bestätigt haben, dass alles korrekt ist, laden Sie die Seite neu und Sie können unsere verarbeiteten Bilder durchsuchen

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Funktion zum Drehen und Zuschneiden von Bildern im Thinkphp-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen