Maison  >  Article  >  développement back-end  >  PHP convertit les fichiers image PNG en fichiers image WBMP

PHP convertit les fichiers image PNG en fichiers image WBMP

王林
王林avant
2024-03-21 10:47:38443parcourir

Dans le développement PHP, il est parfois nécessaire de convertir les fichiers image au format PNG au format WBMP, qui peut mieux s'adapter aux différents scénarios d'application. Aujourd'hui, l'éditeur PHP Baicao vous présentera comment utiliser le code PHP pour réaliser ce processus de conversion. Grâce à des exemples de code simples, nous pouvons facilement convertir des fichiers image PNG en fichiers image WBMP, permettant aux images de s'afficher plus parfaitement sur différents appareils !

PHP Convertir un fichier image PNG en fichier image WBMP

Citation

PNG (Portable Network Graphics) et WBMP (Wireless Bitmap) sont deux formats d'image populaires avec différentes applications à différentes occasions. PNG est un format de compression sans perte avec une qualité d'image élevée, tandis que WBMP est un format bitmap monochrome couramment utilisé sur les appareils mobiles et les environnements aux ressources limitées. Dans certains cas, il peut être nécessaire de convertir une image PNG en image WBMP. Cet article explique comment réaliser cette conversion en utilisant le code php.

Méthode

La bibliothèque PHP GD fournit des fonctions de traitement d'image, notamment la possibilité de convertir des images PNG en images WBMP. Voici les étapes pour réaliser cette conversion :

  1. Charger des images PNG : Utilisez la fonction imagecreatefrompng() pour charger des images à partir de fichiers PNG. Cette fonction renverra une ressource image.
$png_image = imagecreatefrompng("image.png");
  1. Créer une image WBMP : Utilisez la fonction imagecreate() pour créer une image WBMP vierge. Cette fonction renverra une ressource image.
$wbmp_image = imagecreate(width, height);
  1. Convertir les couleurs : Étant donné que WBMP est un format monochrome, les couleurs de l'image PNG doivent être converties en noir et blanc. Vous pouvez utiliser la fonction imagecolorallocate() pour créer deux entrées de palette pour le noir et le blanc.
$black = imagecolorallocate($wbmp_image, 0, 0, 0);
$white = imagecolorallocate($wbmp_image, 255, 255, 255);
  1. Balayage progressif :  Numérisez progressivement une image PNG, convertissez la couleur de chaque pixel en noir ou blanc et écrivez-la dans une image 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. Enregistrer l'image WBMP : Utilisez la fonction imagewbmp() pour enregistrer une image WBMP dans un fichier.
imagewbmp($wbmp_image, "image.wbmp");

Exemple

Voici un exemple de code PHP complet pour convertir une image PNG en image WBMP :

Autres choses à noter

  • Le format WBMP ne prend pas en charge la transparence, donc toutes les zones transparentes d'une image PNG seront converties en noir ou blanc.
  • Vous pouvez redimensionner les images WBMP à l'aide de la fonction imagescale().
  • Si l'image PNG a une palette indexée, elle doit être convertie en image TrueColor à l'aide de la fonction imagepalettetotruecolor(), puis convertie.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer