Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menambah Tera Air pada Imej Menggunakan PHP?

Bagaimanakah Saya Boleh Menambah Tera Air pada Imej Menggunakan PHP?

DDD
Lepaskan: 2024-10-18 14:03:30
asal
324 orang telah melayarinya

How Can I Add Watermarks to Images Using PHP?

Tambah Tera Air pada Imej Menggunakan PHP

Jika anda sedang mengusahakan tapak web yang membenarkan pengguna memuat naik imej, anda mungkin perlu menambah tera air pada imej tersebut untuk melindunginya daripada penggunaan yang tidak dibenarkan. Menambah tera air memastikan logo atau penjenamaan anda kelihatan pada setiap imej yang dimuat naik. Begini cara anda boleh mencapai ini dalam PHP:

Menggunakan Fungsi PHP

Manual PHP menyediakan contoh komprehensif menggunakan fungsi berikut:

  • imagecreatefrompng() - Memuatkan imej tera air sebagai PNG
  • imagecreatefromjpeg() - Memuatkan imej asal untuk ditanda air sebagai JPEG
  • imagecopy() - Menyalin imej tera air ke imej asal

Letakkan Tera Air

Untuk meletakkan tera air dengan berkesan, anda boleh menentukan jidar menggunakan pembolehubah $marge_right dan $marge_bottom. Ini membolehkan anda mengawal jarak antara tera air dan tepi imej asal.

Mengoutput Imej Tera Air

Setelah tera air telah ditambahkan, anda boleh mengeluarkan imej tera air menggunakan fungsi header() untuk menetapkan jenis kandungan kepada PNG. Kemudian, gunakan imagepng() untuk mengeluarkan imej dan imagedestroy() untuk mengosongkan memori yang digunakan.

Contoh Kod

Berikut ialah contoh coretan kod:

<code class="php">// Load the stamp and the photo to apply the watermark to
$stamp = imagecreatefrompng('stamp.png');
$im = imagecreatefromjpeg('photo.jpeg');

// Set the margins for the stamp and get the height/width of the stamp image
$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

// Copy the stamp image onto our photo using the margin offsets and the photo 
// width to calculate positioning of the stamp. 
imagecopy($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp));

// Output and free memory
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Tera Air pada Imej Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan