Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP menukar fail imej PNG kepada fail imej WBMP

PHP menukar fail imej PNG kepada fail imej WBMP

王林
王林ke hadapan
2024-03-21 10:47:38440semak imbas

Dalam pembangunan PHP, kadangkala perlu menukar fail imej dalam format PNG kepada format WBMP, yang boleh menyesuaikan diri dengan senario aplikasi yang berbeza dengan lebih baik. Hari ini, editor PHP Baicao akan memperkenalkan kepada anda cara menggunakan kod PHP untuk mencapai proses penukaran ini. Melalui contoh kod ringkas, kami boleh menukar fail imej PNG kepada fail imej WBMP dengan mudah, membolehkan imej dipaparkan dengan lebih sempurna pada peranti berbeza!

PHP Tukar fail imej PNG kepada fail imej WBMP

Petikan

PNG (Grafik Rangkaian Mudah Alih) dan WBMP (Peta Bit Wayarles) ialah dua format imej yang popular dengan aplikasi berbeza dalam keadaan berbeza. PNG ialah format mampatan tanpa kerugian dengan kualiti imej yang tinggi, manakala WBMP ialah format peta bit monokrom yang biasa digunakan pada peranti mudah alih dan persekitaran yang terhad sumber. Dalam sesetengah kes, mungkin perlu menukar imej PNG kepada imej WBMP. Artikel ini menerangkan cara untuk mencapai penukaran ini menggunakan kod php.

Kaedah

Pustaka PHP GD menyediakan fungsi pemprosesan imej, termasuk keupayaan untuk menukar imej PNG kepada imej WBMP. Berikut adalah langkah-langkah untuk membuat penukaran ini:

  1. Muat imej PNG: Gunakan fungsi imagecreatefrompng() untuk memuatkan imej daripada fail PNG. Fungsi ini akan mengembalikan sumber imej.
$png_image = imagecreatefrompng("image.png");
  1. Buat imej WBMP: Gunakan fungsi imagecreate() untuk mencipta imej WBMP kosong. Fungsi ini akan mengembalikan sumber imej.
$wbmp_image = imagecreate(width, height);
  1. Tukar Warna: Oleh kerana WBMP ialah format monokrom, warna dalam imej PNG perlu ditukar kepada hitam dan putih. Anda boleh menggunakan fungsi imagecolorallocate() untuk mencipta dua entri palet untuk hitam dan putih.
$black = imagecolorallocate($wbmp_image, 0, 0, 0);
$white = imagecolorallocate($wbmp_image, 255, 255, 255);
  1. Imbasan Progresif: Imbas imej PNG secara progresif dan tukar warna setiap piksel kepada hitam atau putih dan tuliskannya ke dalam imej WBMP.
for ($y = 0; $y < height; $y++) {
for ($x = 0; $x < width; $x++) {
$rgb = imagecolorat($png_image, $x, $y);
$color = ($rgb["red"] + $rgb["green"] + $rgb["blue"]) / 3 < 128 ? $black : $white;
imagesetpixel($wbmp_image, $x, $y, $color);
}
}
  1. Simpan imej WBMP: Gunakan fungsi imagewbmp() untuk menyimpan imej WBMP ke fail.
imagewbmp($wbmp_image, "image.wbmp");

Contoh

Berikut ialah contoh kod PHP lengkap untuk menukar imej PNG kepada imej WBMP:

Perkara lain yang perlu diperhatikan

  • Format WBMP tidak menyokong ketelusan, jadi mana-mana kawasan lutsinar dalam imej PNG akan ditukar kepada hitam atau putih.
  • Anda boleh mengubah saiz imej WBMP menggunakan fungsi imagescale().
  • Jika imej PNG mempunyai palet diindeks, ia perlu ditukar kepada imej warna benar menggunakan fungsi imagepalettetotruecolor() dan kemudian ditukar.

Atas ialah kandungan terperinci PHP menukar fail imej PNG kepada fail imej WBMP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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