1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
<?php
if ($infophoto['extension'] == 'png' OR $infophoto['extension'] == 'PNG')
{
$source = imagecreatefrompng($nom);
$hauteur_source = imagesy($source);
if ($hauteur_source > 250)
{
// dimensions des deux images
$largeur_source = imagesx($source);
$forme = $hauteur_source / $largeur_source; // si image plus haute que large: >1, si plus large: <1
$hauteur_destination = 250; // hauteur arbitraire
$largeur_destination = 250 / $forme; // largeur proportionnée
// créer la miniature
$destination = imagecreatetruecolor($largeur_destination, 250);
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
// enregistrer la nouvelle image
imagepng($destination, $mini_nom);
}
else
{
// enregistrer l'image de départ avec le nom d'une miniature
imagepng($source, $mini_nom);
}
}
elseif ($infophoto['extension'] == 'jpg' OR $infophoto['extension'] == 'jpeg')
{
$source = imagecreatefromjpeg($nom);
$hauteur_source = imagesy($source);
;
if ($hauteur_source > 250)
{
// dimensions des deux images
$largeur_source = imagesx($source);
$forme = $hauteur_source / $largeur_source; // si image plus haute que large: >1, si plus large: <1
$hauteur_destination = 250; // hauteur arbitraire
$largeur_destination = 250 / $forme; // largeur proportionnée
// créer la miniature
$destination = imagecreatetruecolor($largeur_destination, 250);
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
// enregistrer la nouvelle image
imagejpeg($destination, $mini_nom);
}
else
{
// enregistrer l'image de départ avec le nom d'une miniature
imagejpeg($source, $mini_nom);
}
}
elseif ($infophoto['extension'] == 'gif')
{
$source = imagecreatefromgif($nom);
$hauteur_source = imagesy($source);
if ($hauteur_source > 250)
{
// dimensions des deux images
$largeur_source = imagesx($source);
$forme = $hauteur_source / $largeur_source; // si image plus haute que large: >1, si plus large: <1
$hauteur_destination = 250; // hauteur arbitraire
$largeur_destination = 250 / $forme; // largeur proportionnée
// créer la miniature
$destination = imagecreatetruecolor($largeur_destination, 250);
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);
// enregistrer la nouvelle image
imagegif($destination, $mini_nom);
}
else
{
// enregistrer l'image de départ avec le nom d'une miniature
imagegif($source, $mini_nom);
}
}
else // echec à l'enregistrement, la fonction renvoie FALSE
{
header('Location: ../administration.php');
exit ();
}
?>
|