Thumbnails dezelfde groot, een probleem
Stel, ik maak een thumbnail van een foto, dan zou ik graag dezelfde formaten willen voor een horizontale als verticale foto.
Hiermee bedoel ik de hoogte en de breedte.
De bedoeling is om ze allemaal mooi naast elkaar te plaatsen, maar als ik een verticale verklein, dan is de verhouding lengte / breedte verdwenen.
Is hier een oplossing voor?
Eventueel CSS?
Diov
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//De hoogte en breedte ophalen van het plaatje
$dimensions = getimagesize($pad.$nieuwnaam);
//Dit is de breedte die alle plaatjes krijgen
$doelbreedte = "500";
//Hoogte en breedte toekennnen aan nieuwe variabelen
$bronbreedte = $dimensions[0];
$bronhoogte = $dimensions[1];
if($bronbreedte > $doelbreedte)
{
//De nieuwe hoogte berekenen aan de gegevens van het oude plaatje en de doel breedte
$doelhoogte = ($bronhoogte * $doelbreedte) / $bronbreedte;
//De hoogte, als het nodig is, afronden
$doelhoogte = round($doelhoogte, 0);
} else {
$doelhoogte = $bronhoogte;
$doelbreedte = $bronbreedte;
}
$dimensions = getimagesize($pad.$nieuwnaam);
//Dit is de breedte die alle plaatjes krijgen
$doelbreedte = "500";
//Hoogte en breedte toekennnen aan nieuwe variabelen
$bronbreedte = $dimensions[0];
$bronhoogte = $dimensions[1];
if($bronbreedte > $doelbreedte)
{
//De nieuwe hoogte berekenen aan de gegevens van het oude plaatje en de doel breedte
$doelhoogte = ($bronhoogte * $doelbreedte) / $bronbreedte;
//De hoogte, als het nodig is, afronden
$doelhoogte = round($doelhoogte, 0);
} else {
$doelhoogte = $bronhoogte;
$doelbreedte = $bronbreedte;
}
let op: Dit is een script van 9 jaar oud, dus mogelijk kan het beter, maar dan heb je een richting.
- Diov - op 08/05/2014 22:59:43:
dan zou ik graag dezelfde formaten willen voor een horizontale als verticale foto.
Hiermee bedoel ik de hoogte en de breedte.
Hiermee bedoel ik de hoogte en de breedte.
Dat gaat niet lukken, naar mijn idee.
Hoe wil je een foto van bv 450 x 300 gelijk krijgen aan een foto van 300 x 450?
De verhouding bij de een is 3:2 en de ander 2:3. Dat kun je nooit gelijk krijgen.
Vergelijk het met de tv. Vroeger was dat 4:3 nu 16:9 (breedbeeld). Bij 4:3 uitzendingen verschijnt er dan zo'n zwarte balk boven/onder in het scherm.
Dus als je thumbnails 100x150 en 150x100 zijn, moet je thumbnail een canvas van 150x150 krijgen. Vervolgens resize je de foto naar 150px op de langste zijde. Voor het mooiste effect centreer je de foto door (bijvoorbeeld) aan imagecopyresized op te geven dat de liggende foto's op coördinaat 0,25 beginnen en de staande foto's op 25,0.