Maison développement back-end tutoriel php PHP用GD库生成高质量的缩略图片_PHP

PHP用GD库生成高质量的缩略图片_PHP

Jun 01, 2016 pm 12:17 PM
gd库 缩略图

以下是PHP源代码(ResizeImage.php)。
复制代码 代码如下:
$FILENAME="image.thumb";
// 生成图片的宽度
$RESIZEWIDTH=400;
// 生成图片的高度
$RESIZEHEIGHT=400;

function ResizeImage($im,$maxwidth,$maxheight,$name){
$width = imagesx($im);
$height = imagesy($im);
if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){
if($maxwidth && $width > $maxwidth){
$widthratio = $maxwidth/$width;
$RESIZEWIDTH=true;
}
if($maxheight && $height > $maxheight){
$heightratio = $maxheight/$height;
$RESIZEHEIGHT=true;
}
if($RESIZEWIDTH && $RESIZEHEIGHT){
if($widthratio $ratio = $widthratio;
}else{
$ratio = $heightratio;
}
}elseif($RESIZEWIDTH){
$ratio = $widthratio;
}elseif($RESIZEHEIGHT){
$ratio = $heightratio;
}
$newwidth = $width * $ratio;
$newheight = $height * $ratio;
if(function_exists("imagecopyresampled")){
$newim = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
}else{
$newim = imagecreate($newwidth, $newheight);
imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
}
ImageJpeg ($newim,$name . ".jpg");
ImageDestroy ($newim);
}else{
ImageJpeg ($im,$name . ".jpg");
}
}

if($_FILES['image']['size']){
if($_FILES['image']['type'] == "image/pjpeg"){
$im = imagecreatefromjpeg($_FILES['image']['tmp_name']);
}elseif($_FILES['image']['type'] == "image/x-png"){
$im = imagecreatefrompng($_FILES['image']['tmp_name']);
}elseif($_FILES['image']['type'] == "image/gif"){
$im = imagecreatefromgif($_FILES['image']['tmp_name']);
}
if($im){
if(file_exists("$FILENAME.jpg")){
unlink("$FILENAME.jpg");
}
ResizeImage($im,$RESIZEWIDTH,$RESIZEHEIGHT,$FILENAME);
ImageDestroy ($im);
}
}
?>

以下是测试代码(demo.php)
复制代码 代码如下:
include('ResizeImage.php');
if(!empty($_POST)){
echo($FILENAME.".jpg?cache=".rand(0,999999));
}
?>





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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment désactiver l'aperçu des vignettes de la barre des tâches dans Win11 ? Désactivez la technique d'affichage des vignettes de l'icône de la barre des tâches en déplaçant la souris Comment désactiver l'aperçu des vignettes de la barre des tâches dans Win11 ? Désactivez la technique d'affichage des vignettes de l'icône de la barre des tâches en déplaçant la souris Feb 29, 2024 pm 03:20 PM

Cet article explique comment désactiver la fonction de vignette affichée lorsque la souris déplace l'icône de la barre des tâches dans le système Win11. Cette fonctionnalité est activée par défaut et affiche une vignette de la fenêtre actuelle de l'application lorsque l'utilisateur passe le pointeur de la souris sur une icône d'application dans la barre des tâches. Cependant, certains utilisateurs peuvent trouver cette fonctionnalité moins utile ou perturber leur expérience et souhaiter la désactiver. Les miniatures de la barre des tâches peuvent être amusantes, mais elles peuvent aussi être distrayantes ou ennuyeuses. Compte tenu de la fréquence à laquelle vous survolez cette zone, vous avez peut-être fermé plusieurs fois des fenêtres importantes par inadvertance. Un autre inconvénient est qu'il utilise plus de ressources système, donc si vous cherchez un moyen d'être plus efficace en ressources, nous allons vous montrer comment le désactiver. mais

Comment personnaliser les vignettes des dossiers dans Windows 11 22H2 Comment personnaliser les vignettes des dossiers dans Windows 11 22H2 Apr 30, 2023 pm 04:52 PM

Windows 1122H2 est la première mise à jour de fonctionnalités pour Windows 11 et devrait apporter une tonne de nouvelles fonctionnalités et des améliorations indispensables. L'une des améliorations est la possibilité de prévisualiser les vignettes des fichiers d'un dossier. Si vous n’aimez pas l’apparence des vignettes des dossiers dans Windows 11, voici comment la modifier. Un ensemble d'icônes personnalisées pour les vignettes de dossiers dans Windows 11 (avec l'aimable autorisation de LEXX911 de Reddit) qui vous permet de zoomer sur les aperçus et de modifier les styles d'icônes de dossier. Vous devez toujours gérer les aperçus de fichiers individuels (sous Windows 7, par exemple, les vignettes des dossiers peuvent afficher plusieurs images en même temps), mais vous pouvez les agrandir et les rendre plus pratiques. REMARQUE IMPORTANTE :

Comment afficher les vignettes dans Vscode_Comment afficher les vignettes dans Vscode Comment afficher les vignettes dans Vscode_Comment afficher les vignettes dans Vscode Apr 02, 2024 pm 02:43 PM

1. Entrez d'abord Visual Studio Code et cliquez sur [Fichier] dans le coin supérieur gauche. 2. Cliquez ensuite sur [Préférences]. 3. Cliquez sur l'élément [Paramètres]. 4. Cliquez ensuite sur [Éditeur de texte-Vignette]. 5. Enfin, dans l'élément vignette, activez [Contrôler l'affichage ou non des vignettes].

Guide d'utilisation de la bibliothèque GD en PHP Guide d'utilisation de la bibliothèque GD en PHP May 20, 2023 pm 02:40 PM

1. Qu'est-ce que la bibliothèque GD ? La bibliothèque GD est un ensemble de fonctions de bibliothèque permettant de créer et de traiter divers formats d'image. C'est l'une des bibliothèques de traitement d'images les plus couramment utilisées en PHP. 2. Installez la bibliothèque GD Installez la bibliothèque GD sous CentOS/RedHat 1. Installez la bibliothèque d'extension GD de PHP yuminstallphp-gd 2. Redémarrez le service du serveur webhttpdrestart 3. Vérifiez la version de la bibliothèque GD supportée par PHP php-i |

Que dois-je faire si php ne peut pas ouvrir la bibliothèque gd ? Que dois-je faire si php ne peut pas ouvrir la bibliothèque gd ? Nov 18, 2022 am 10:31 AM

Solution au problème selon lequel php ne peut pas ouvrir la bibliothèque gd : 1. Recherchez et ouvrez le fichier de configuration php.ini ; 2. Supprimez le symbole de commentaire ";" devant "extension_dir" ; le dossier ext.

Génération automatique de vignettes à l'aide de JavaScript Génération automatique de vignettes à l'aide de JavaScript Jun 16, 2023 pm 12:51 PM

Avec le développement d’Internet, les images sont devenues un élément indispensable des pages Web. Mais à mesure que le nombre d’images augmente, la vitesse de chargement des images est devenue un problème très important. Afin de résoudre ce problème, de nombreux sites Web utilisent des vignettes pour afficher des images, mais pour générer des vignettes, nous devons utiliser des outils de traitement d'images professionnels, ce qui est une chose très gênante pour certains non-professionnels. Ensuite, utiliser JavaScript pour générer automatiquement des vignettes devient un bon choix. Comment utiliser JavaS

Comment afficher les vignettes sur une clé USB Comment afficher les vignettes sur une clé USB Feb 12, 2024 pm 08:36 PM

Je rencontre souvent des clients qui disent que quelques problèmes informatiques mineurs sont très gênants dans les moments critiques. En résumé, il y a les éléments suivants. La raison pour laquelle le fichier ne peut pas être copié sur la clé USB peut être due au fait que le format de partition de la clé USB est FAT32 au lieu de NTFS. Vous pouvez essayer de changer le format de partition de la clé USB en NTFS afin de pouvoir copier des fichiers volumineux. Deuxièmement, les images ne sont pas affichées sous forme de vignettes, vous devez donc cliquer dessus une par une pour les retrouver. Le troisième type est que la page devient soudainement plus grande ou plus petite. Si vous ne connaissez pas ces trois situations, elles peuvent être résolues grâce à quelques opérations simples. 1. Changez la partition du disque U en NTFS. Le format de partition par défaut d'un disque U nouvellement acheté est généralement FAT32. Dans des circonstances normales, son utilisation ne pose aucun problème. Cependant, lorsque vous devez copier des fichiers de taille supérieure à 4G, une invite qui ne peut pas être copiée apparaîtra, ce qui entraîne des problèmes d'utilisation. pour

Explication détaillée des étapes pour générer des vignettes en PHP Explication détaillée des étapes pour générer des vignettes en PHP Sep 13, 2023 am 08:40 AM

Explication détaillée des étapes pour générer des vignettes avec PHP, des exemples de code spécifiques sont nécessaires Dans l'ère actuelle de développement rapide d'Internet, les images sont un élément indispensable des pages Web, mais les images haute résolution occuperont non seulement beaucoup de bande passante, mais aussi. affectent également la vitesse de chargement des pages Web de l’utilisateur. Par conséquent, nous devons souvent générer des vignettes à partir d’images originales pour réduire la taille de l’image et celle du fichier. En tant que langage de script côté serveur populaire, PHP fournit de riches fonctions de traitement d'images qui peuvent être utilisées pour générer des vignettes. Les étapes de génération de vignettes en PHP seront présentées en détail ci-dessous.

See all articles