Rumah > rangka kerja php > ThinkPHP > Mari kita bincangkan tentang operasi Imej dalam thinkphp

Mari kita bincangkan tentang operasi Imej dalam thinkphp

藏色散人
Lepaskan: 2022-01-18 10:18:01
ke hadapan
3118 orang telah melayarinya

Lajur tutorial thinkphp berikut akan memperkenalkan anda kepada operasi Imej dalam thinkphp3.2.3 Saya harap ia dapat membantu rakan-rakan yang memerlukan.

Kendalian imej dalam thinkphp3.2.3 bebas
Rujuk Operasi imej dalam thinkphp3.2.3

https://www . kancloud.cn/manual/thinkphp/1878

Tidak bergantung pada mana-mana rangka kerja

Dalam keadaan biasa, perpustakaan gd akan dipasang

Jika anda memerlukan Imagic, sila pasang https://pecl.php. net/package/imagick

Pasang

Perpustakaan kelas Instantiation
composer require whereof/think-image
Salin selepas log masuk

Perpustakaan GD digunakan untuk operasi imej secara lalai Jika anda perlu menggunakan perpustakaan Imagick Untuk operasi, anda perlu menukarnya kepada:
$image = new \whereof\ThinkImage\Image();
Salin selepas log masuk

Kendalian imej
$image = new \whereof\ThinkImage\Image(\Think\Image::IMAGE_IMAGICK); 
// 或者采用
$image = new \whereof\ThinkImage\Image('Imagick');
Salin selepas log masuk

Mari kita lihat cara menggunakan fungsi operasi imej asas.

Buka fail imej

Andaikan terdapat fail 1.jpg di bawah direktori fail kemasukan semasa

Gunakan kaedah terbuka untuk membuka fail imej untuk operasi berkaitan:

juga boleh dipermudahkan kepada kaedah berikut:
$image = \whereof\ThinkImage\Image(); 
$image->open('./1.jpg');
Salin selepas log masuk

Dapatkan maklumat imej
$image = new \whereof\ThinkImage\Image(\whereof\ThinkImage\Image::IMAGE_GD,'./1.jpg'); // GD库
// 或者
$image = new \whereof\ThinkImage\Image(\whereof\ThinkImage\Image::IMAGE_IMAGICK,'./1.jpg');  // imagick库
Salin selepas log masuk

Anda boleh mendapatkan maklumat imej yang dibuka, termasuk saiz imej, jenis , dsb., contohnya:

Pangkas gambar
$width = $image->width(); // 返回图片的宽度
$height = $image->height(); // 返回图片的高度
$type = $image->type(); // 返回图片的类型
$mime = $image->mime(); // 返回图片的mime类型
$size = $image->size(); // 返回图片的尺寸数组 0 图片宽度 1 图片高度
Salin selepas log masuk

Gunakan kaedah potong dan simpan untuk melengkapkan fungsi potong gambar.

Menyokong pemangkasan bermula dari koordinat tertentu, contohnya, bermula dari (100, 30):
//将图片裁剪为400x400并保存为corp.jpg
$image->crop(400, 400)->save('./crop.jpg');
Salin selepas log masuk

Jana lakaran kecil
//将图片裁剪为400x400并保存为corp.jpg
$image->crop(400, 400,100,30)->save('./crop.jpg');
Salin selepas log masuk

Jana menggunakan lakaran kecil kaedah ibu jari

boleh menyokong jenis penjanaan imej kecil yang lain Tetapan termasuk pemalar berikut atau nombor sepadan
// 按照原图的比例生成一个最大为150*150的缩略图并保存为thumb.jpg
$image->thumb(150, 150)->save('./thumb.jpg');
Salin selepas log masuk
:

whereofThinkImageImage

Pangkas Berpusat
IMAGE_THUMB_SCALE     =   1 ; //等比例缩放类型
IMAGE_THUMB_FILLED    =   2 ; //缩放后填充类型
IMAGE_THUMB_CENTER    =   3 ; //居中裁剪类型
IMAGE_THUMB_NORTHWEST =   4 ; //左上角裁剪类型
IMAGE_THUMB_SOUTHEAST =   5 ; //右下角裁剪类型
IMAGE_THUMB_FIXED     =   6 ; //固定尺寸缩放类型
Salin selepas log masuk

Pangkasan sudut kiri atas

// 生成一个居中裁剪为150*150的缩略图并保存为thumb.jpg
$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_CENTER)->save('./thumb.jpg');
Salin selepas log masuk

Pelapik skala

$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_NORTHWEST)->save('./thumb.jpg');
Salin selepas log masuk

Saiz tetap

$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_FILLED)->save('./thumb.jpg');
Salin selepas log masuk

Tambah tera air imej

$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_FIXED)->save('./thumb.jpg');
Salin selepas log masuk

air parameter kedua kaedah mewakili kedudukan tera air Anda boleh lulus dalam pemalar berikut atau nombor sepadan kelas ThinkImag:

//将图片裁剪为440x440并保存为corp.jpg
$image->crop(440, 440)->save('./crop.jpg');
// 给裁剪后的图片添加图片水印(水印文件位于./logo.png),位置为右下角,保存为water.gif
$image->water('./logo.png')->save("water.gif");
// 给原图添加水印并保存为water_o.gif(需要重新打开原图)
$image->open('./1.jpg')->water('./logo.png')->save("water_o.gif");
Salin selepas log masuk

Contohnya:

IMAGE_WATER_NORTHWEST =   1 ; //左上角水印
IMAGE_WATER_NORTH     =   2 ; //上居中水印
IMAGE_WATER_NORTHEAST =   3 ; //右上角水印
IMAGE_WATER_WEST      =   4 ; //左居中水印
IMAGE_WATER_CENTER    =   5 ; //居中水印
IMAGE_WATER_EAST      =   6 ; //右居中水印
IMAGE_WATER_SOUTHWEST =   7 ; //左下角水印
IMAGE_WATER_SOUTH     =   8 ; //下居中水印
IMAGE_WATER_SOUTHEAST =   9 ; //右下角水印
Salin selepas log masuk

juga boleh. menyokong imej tera air. Ketelusan (0~100, nilai lalai ialah 80), contohnya:

$image->open('./1.jpg')->water('./logo.png',\whereof\ThinkImage\Image::IMAGE_WATER_NORTHWEST)->save("water.jpg");
Salin selepas log masuk

Ia juga boleh menyokong penambahan tera air teks pada gambar (dengan mengandaikan bahawa terdapat fail fon 1.ttf dalam direktori fail masukan yang sama), contohnya :

$image->open('./1.jpg')->water('./logo.png',\whereof\ThinkImage\Image::IMAGE_WATER_NORTHWEST,50)->save("water.jpg");
Salin selepas log masuk

$image->open('./1.jpg')->text('ThinkPHP','./1.ttf',20,'#000000',\whereof\ThinkImage\Image::IMAGE_WATER_SOUTHEAST)->save("new.jpg");
Salin selepas log masuk
Pembelajaran yang disyorkan: "
10 tutorial video thinkphp terkini
"

Atas ialah kandungan terperinci Mari kita bincangkan tentang operasi Imej dalam thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:segmentfault.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Isu terkini
ThinkPHP Mengapa menggunakan komposer?
daripada 1970-01-01 08:00:00
0
0
0
thinkphp memuat naik fail
daripada 1970-01-01 08:00:00
0
0
0
Bagaimanakah Thinkphp memanggil sambungan PHP?
daripada 1970-01-01 08:00:00
0
0
0
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan