Rumah  >  Artikel  >  rangka kerja php  >  Bagaimana untuk melaksanakan fungsi putaran dan pemangkasan imej dalam rangka kerja thinkphp

Bagaimana untuk melaksanakan fungsi putaran dan pemangkasan imej dalam rangka kerja thinkphp

WBOY
WBOYke hadapan
2023-05-30 11:52:381032semak imbas

Langkah pertama: Pasang rangka kerja thinkphp
Jika anda ingin menggunakan rangka kerja thinkphp dalam pembangunan anda sendiri, anda sememangnya perlu memasangnya ke dalam projek anda sendiri. Pemasangan thinkphp adalah sangat mudah Anda hanya perlu mengalihkan pakej mampat yang dinyahmampat terus ke dalam direktori akar projek. Selepas berpindah, anda hanya perlu mengubah suai fail masukan index.php dalam projek untuk mula menggunakan thinkphp.

Langkah 2: Perkenalkan kelas pemprosesan imej dalam thinkphp
Perkenalkan kelas pemprosesan imej dalam rangka kerja thinkphp untuk mengendalikan imej, terutamanya termasuk kaedah pemprosesan asas seperti penskalaan, pemangkasan dan putaran. Antaranya, tanaman bergilir menjadi fokus artikel ini.

Tambah kod berikut dalam pengawal untuk memperkenalkan kelas pemprosesan imej:

use think\Image;

Langkah 3: Pelaksanaan putaran dan pemangkasan imej
Pemotongan putaran adalah untuk memutar imej Operasi gabungan dengan pemangkasan juga sangat mudah untuk dilaksanakan. Berikut ialah bahagian yang paling sukar dalam artikel ini - pelaksanaan kod fungsi 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;
}

Dalam fungsi ini, kita perlu melepasi 4 parameter: laluan imej, lebar pemangkasan, ketinggian pemangkasan dan sudut putaran Laluan imej ialah parameter yang diperlukan, dan 3 parameter lain ialah parameter pilihan, lebar dan The ketinggian lalai kepada sifar, iaitu tiada pemangkasan dilakukan. Sudut putaran juga lalai kepada 0, yang bermaksud tiada putaran dilakukan.

Yang paling penting ialah operasi putaran dan pemangkasan Fungsi Imej::open($image) membuka objek imej dan memanggil kaedah rotate() dan crop() dalam objek untuk melakukan putaran dan. operasi pemangkasan Akhir sekali, kaedah save() menyimpan dan mengeluarkan imej.

Langkah 4: Uji kesan
Akhir sekali, mari uji kod kami. Tambahkan kod berikut pada pengawal kami:

$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;;

Dalam kod di atas, $image ialah laluan imej sasaran, $width dan $height ialah parameter pemangkasan ujian dan $degree ialah parameter putaran ujian Selepas pelaksanaan fungsi rotateCrop() kami mengembalikan laluan imej yang disimpan, dan akhirnya memaparkannya pada halaman. Selepas mengesahkan bahawa semuanya betul, muat semula halaman dan anda boleh menyemak imbas gambar kami yang telah diproses

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan fungsi putaran dan pemangkasan imej dalam rangka kerja thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam