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