Comment modifier la taille du fichier binaire image en php

PHPz
Libérer: 2023-04-03 11:32:01
original
592 Les gens l'ont consulté

Dans le développement Web et les applications, nous devons souvent modifier les images pour répondre à différents besoins et objectifs. La taille du fichier binaire (volume du fichier) de l'image est un facteur important que nous ne pouvons ignorer, car une image trop volumineuse réduira les performances et la vitesse de chargement du site Web ou de l'application, et peut même entraîner la perte de l'utilisateur. taille du fichier image L'optimisation est très nécessaire. PHP est un langage de programmation puissant et l'un des langages couramment utilisés dans le développement de réseaux. Ci-dessous, je vais vous présenter comment utiliser PHP pour modifier la taille du fichier binaire des images.

1. Pourquoi devez-vous modifier la taille du fichier binaire des images ?

Dans le développement Web, il existe de nombreuses façons d'afficher des images aux utilisateurs, et les deux méthodes les plus courantes consistent à charger les images directement dans la page ou à les fournir sous forme de pièces jointes que les utilisateurs peuvent télécharger. Lorsque vous utilisez des images à charger directement dans la page, la page Web chargera l'image en fonction du contenu de la page. Si l'image est trop grande, la vitesse de chargement de la page Web ralentira et l'expérience utilisateur sera réduite dans le pire des cas. , cela peut provoquer le blocage de la page Web. Lorsqu'elle est fournie sous forme de pièce jointe aux utilisateurs pour le téléchargement, la taille du fichier binaire (volume du fichier) d'une image étant trop grande, la vitesse de téléchargement sera trop lente, ce qui entraînera une mauvaise expérience utilisateur.

Par conséquent, pour les images du projet, nous devons contrôler la taille de leur fichier binaire (volume du fichier). Une méthode courante consiste à compresser et à optimiser les images. Pour le développement PHP, vous pouvez utiliser la bibliothèque GD pour modifier la taille du fichier binaire des images.

2. Introduction à la bibliothèque GD

La bibliothèque GD est une bibliothèque open source écrite en langage C et utilisée pour créer dynamiquement des images. Cette bibliothèque peut traiter des images aux formats PNG, JPEG, GIF et autres, et générer des images dans différents formats grâce à des opérations telles que la mise à l'échelle, le recadrage, la rotation, l'ajout de texte et de filigranes. La bibliothèque GD fournit une série de fonctions qui peuvent être prises en charge via l'extension GD de PHP.

3. Comment modifier la taille des fichiers binaires d'images avec PHP

La méthode d'utilisation de PHP pour modifier la taille des fichiers binaires d'images est principalement réalisée grâce à la compression et à l'optimisation. Voici deux méthodes d'utilisation de la bibliothèque GD de PHP pour réaliser la compression et l'optimisation :

1. Ajuster la taille de l'image par proportion

Cette méthode peut conserver le rapport hauteur/largeur de l'image inchangé, mais uniquement redimensionner l'image proportionnellement.

Exemple de code :

<?php
$src_file = &#39;test.jpg&#39;;  // 图片的路径和名称
$dst_file = &#39;thumbnail.jpg&#39;; // 缩略图的路径和名称
$quality = 50; // 压缩后的图片质量,0~100,0 地表示压缩比最高
$max_width = 200;  // 图片最大的宽度

// 获取原始图片的宽和高
$size = getimagesize($src_file);
$src_width = $size[0];
$src_height = $size[1];

// 计算缩小比例
if($src_width > $max_width){
    $shrink = $max_width / $src_width;
} else{
    $shrink = 1;
}

// 计算缩略图的宽度和高度
$des_width = intval($src_width * $shrink);
$des_height = intval($src_height * $shrink);

// 创建图片资源
$src_image = imagecreatefromjpeg($src_file);
$des_image = imagecreatetruecolor($des_width, $des_height);

// 拷贝并缩放图片
imagecopyresampled($des_image, $src_image, 0, 0, 0, 0, $des_width, $des_height, $src_width, $src_height);

// 保存图片
imagejpeg($des_image, $dst_file, $quality);

// 释放图片资源
imagedestroy($src_image);
imagedestroy($des_image);
?>
Copier après la connexion

Ici, l'image test.jpg est mise à l'échelle proportionnellement. La largeur maximale après la mise à l'échelle est de 200 pixels. Le nom de l'image enregistrée est miniature.jpg et la qualité de compression est de 50.

Remarque : en utilisant cette méthode, vous pouvez également choisir de recadrer l'image lors du zoom. Pensez à utiliser le format PNG, qui préserve la transparence lorsque l’image est agrandie ou réduite.

2. Ajustez directement la qualité de l'image

Cette méthode peut comparer et mesurer la qualité de l'image et la sortir directement sous forme d'image modifiée.

Exemple de code :

<?php
$src_file = &#39;test.jpg&#39;;  // 原始图片
$dst_file = &#39;optimize.jpg&#39;; // 优化后的图片
$quality = 50; // 压缩后的图片质量,0~100,0 地表示压缩比最高

// 创建图片资源
$src_image = imagecreatefromjpeg($src_file);

// 优化图片
imagejpeg($src_image, $dst_file,$quality);

// 释放图片资源
imagedestroy($src_image);
?>
Copier après la connexion

Dans ce code, la qualité de compression de l'image test.jpg est réduite à 50 et le nom de l'image enregistrée est optimise.jpg.

Remarque : Veuillez noter que cette méthode ne peut pas modifier la taille de l'image.

4. Résumé

Dans le développement de PHP, il est très nécessaire d'utiliser la bibliothèque GD pour modifier la taille du fichier binaire des images. En compressant et en optimisant les images, la taille des images peut être efficacement réduite, optimisant ainsi la vitesse de chargement des pages Web et améliorant l'expérience utilisateur. Cet article présente une introduction à la bibliothèque GD et deux méthodes d'utilisation de la bibliothèque GD pour modifier la taille du fichier binaire des images en PHP. J'espère que cela sera utile aux ingénieurs PHP effectuant du développement Web.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!