login  Naam:   Wachtwoord: 
Registreer je!
 Forum

GD Thumbs resizen (Opgelost)

Offline Erwt - 13/01/2009 14:46 (laatste wijziging 14/01/2009 10:35)
Avatar van ErwtPHP beginner Hey,

Ik wil graag:

Een script dat een thumb maakt van een bestand. Hij moet dan 2 stappen doorlopen:

1. Als een bestand geupload wordt van 1024x768 moet hij hem zo maken dat hij eerst 768x768 wordt. (dus gewoon een stuk afknippen).

2. Van het 768x768 bestand schaalt hij hem dan naar 125x125 zodat hij WEL scherp is maar dat je ook goed de inhoud kan zien van grote bestanden.

Ga maar eens na wat voor rare thumbs je krijgt als je een foto van 1920x1200 gaat croppen naar 125x125. Je ziet dan misschien een vogel die niets met het onderwerp te maken heeft.

16 antwoorden

Gesponsorde links
Offline Filip - 13/01/2009 14:48
Avatar van Filip IRC guru je kan je thumb genereren op die grote.. maar waarom wil je een niet vierkante foto wel vierkant weergeven?
Offline Erwt - 13/01/2009 15:01
Avatar van Erwt PHP beginner Een fotoalbum vind ik er niet uitzien als foto één 190 bij 200 is en de andere 200 bij 210 e.d. Ik wil ze gewoon graag vierkant op de website hebben, en als je er op klikt dat er dan de normale grootte getoond wordt.

1. Bij het maken van de thumb hem direct vierkant maken.

2. De thumb op originele ratio houden maar in html schalen naar 1:1.

3. Zijn er nog alternatieven? 
Offline masters86 - 13/01/2009 15:43
Avatar van masters86 Nieuw lid Je maakt de foto's allemaal op het formaat die jij wil met photoshop bijv. 125*125 die sla je naast je orginele afbeelding. Vervolgens zoek je hoe lightbox werkt en dan kun je een hele mooie maar simple slide show geven.

groet martin
Offline Erwt - 13/01/2009 15:56 (laatste wijziging 13/01/2009 15:56)
Avatar van Erwt PHP beginner En ik ga zeker duizenden foto's in photoshop aanpassen. Ik ben gek 
  1. // denkt men echt dat mijn IQ zo laag is? :p
Offline masters86 - 13/01/2009 15:58
Avatar van masters86 Nieuw lid oh dat zijn er indd iets te veel  
Offline Erwt - 13/01/2009 16:02
Avatar van Erwt PHP beginner Het wordt een uitgebreid fotoalbum met meerdere categorieën en nog veel meer functionaliteiten. Dus ik wil het gehele fotoalbum geautomatiseerd hebben.

Nog steeds de vraag, wat is de beste manier om ze te schalen als ze niet 1:1 zijn maar ik de thumbs wel 1:1 wil..
Offline Joost - 13/01/2009 16:14
Avatar van Joost PHP expert Wat je zou kunnen doen is een deeltje van de foto nemen? De linkerbovenhoek van 125px naar rechts en naar beneden.. Dan krijg je ze allemaal mooi op dezelfde grootte en geen verpestte foto's.
Offline Martijn2008 - 13/01/2009 16:15
Avatar van Martijn2008 PHP beginner Je kunt ook gewoon free thumbnail generators downloaden hoor. Daarmee kun je in 1 keer een hele map foto's omzetten naar het formaat dat jij wilt. Ook kun je vaak de kwaliteit van de opslag bepalen en met de contrast / brightness spelen.
Offline finduilas - 13/01/2009 16:31
Avatar van finduilas PHP gevorderde
Erwt schreef:
En ik ga zeker duizenden foto's in photoshop aanpassen. Ik ben gek 
[..code..]


Photoshop moet dit maar doen voor je 

Batch bestand of script? In PS is dit allesinds mogelijk 
Offline Erwt - 13/01/2009 16:49 (laatste wijziging 13/01/2009 17:12)
Avatar van Erwt PHP beginner De bedoeling is dat iemand die geen verstand van pc's images kan uploaden. Deze foto's worden dan vierkant in een fotoalbum weergegeven.

@Medieval: Ik weet wat je bedoeld, je snijdt er eigenlijk gewoon een stuk uit.. dit zal wel mooi zijn maar geen idee 'hoa dat nu weer werkt..'(sounds depressed doenst it?)

Dat lijkt mij de beste oplossing.. ik ga even kijken hoe ik dit aan ga pakken als iemand nog een voorbeelscript of informatie heeft dan hoor ik dat graag.

Probleem: Als je met redelijke camera's werkt (wat tegenwoordig nog wel eens het geval wil zijn) krijg je van die 1920x1200 foto's. Als ik daar een thumb van 125x125 uit haal.. dan raad je het al.. dan krijg je niet zo danig veel te zien dat je weet waar de hele foto over zou gaan, terwijl dat de bedoeling wel is..
Offline Flex1986 - 13/01/2009 17:17 (laatste wijziging 13/01/2009 17:20)
Avatar van Flex1986 Gouden medaille

Senior Member
Volgende functie heb ik aantal jaar geleden gemaakt. Is niet mooiste functie maar wat het doet is afbeelding maken op een random stuk van de foto.

$image_src = de image
$file = $_FILES['foto'] Oftewel geuploade foto
$size = hoogte een breedte
$save = waar je hem wil opslaan

Functie is nog wel te verbeteren maar misschien dat je er iets aan hebt.

  1. function cropSquareImage($image_src,$file,$size,$save){
  2.  
  3. $image_dst = imagecreatetruecolor($size,$size);
  4.  
  5.  
  6.  
  7. list($width_src, $height_src) = getimagesize($file);
  8.  
  9.  
  10.  
  11. $src_x = 0;
  12.  
  13. $src_y = 0;
  14.  
  15.  
  16.  
  17. if($width_src < $height_src){
  18.  
  19. $src_size = $width_src;
  20.  
  21. $src_y = floor(($height_src - $width_src) / 2);
  22.  
  23. } else {
  24.  
  25. $src_size = $height_src;
  26.  
  27. $src_x = floor(($width_src - $height_src) / 2);
  28.  
  29. }
  30.  
  31.  
  32.  
  33. $image_src2 = imagecreatetruecolor($src_size,$src_size);
  34.  
  35.  
  36.  
  37. imagecopyresampled($image_src2,$image_src,0,0,$src_x,$src_y,$src_size,$src_size,$src_size,$src_size);
  38.  
  39. imagecopyresampled($image_dst,$image_src2,0,0,0,0,$size,$size,$src_size,$src_size);
  40.  
  41. imagejpeg($image_dst,$save,100);
  42.  
  43.  
  44.  
  45. imagedestroy($image_src);
  46.  
  47. imagedestroy($image_dst);
  48.  
  49. imagedestroy($image_src2);
  50.  
  51. }
Offline Koen - 13/01/2009 17:34
Avatar van Koen PHP expert http://www.site...mp;id=1580
Offline Martijn2008 - 13/01/2009 17:35
Avatar van Martijn2008 PHP beginner Ik vind het best wel een leuke functie ! Weet je misschien toevallig ook wat ik eraan moet veranderen om thumbnails onder fly te kunnen genereren. Mijn ervaring leert namelijk dat je foto's altijd het beste met zo'n hoog mogelijke kwaliteit kunt opslaan.
Offline Erwt - 14/01/2009 08:38
Avatar van Erwt PHP beginner

Deze zijn 'niet' vierkant.

Nog één keer wat ik ongeveer zoek:

Een script dat een thumb maakt van een bestand. Hij moet dan 2 stappen doorlopen:

1. Als een bestand geupload wordt van 1024x768 moet hij hem zo maken dat hij eerst 768x768 wordt. (dus gewoon een stuk afknippen).

2. Van het 768x768 bestand schaalt hij hem dan naar 125x125 zodat hij WEL scherp is maar dat je ook goed de inhoud kan zien van grote bestanden.

Ga maar eens na wat voor rare thumbs je krijgt als je een foto van 1920x1200 gaat croppen naar 125x125. Je ziet dan misschien een vogel die niets met het onderwerp te maken heeft.
Offline Flex1986 - 14/01/2009 10:01
Avatar van Flex1986 Gouden medaille

Senior Member
Heb je die van mij al geprobeerd? Volgens mij doet die namelijk wat je wilt. Zo niet dan kan je hem toch zelf aanpassen? Je gebruikt dezelfde php functies.
Offline Erwt - 14/01/2009 10:29 (laatste wijziging 14/01/2009 11:36)
Avatar van Erwt PHP beginner Jouw versie: (resulteert in een fout )

Mijne doet het, hij maakt hem eerst kleinste kant x kleinste kant en daarna schaalt hij hem gewoon naar 125 x 125.
  1. <?php
  2. // Stap1: Voorbereiden
  3. header('Content-type: image/jpeg');
  4.  
  5. // Stap2: Foto en groottes ophalen.
  6.  
  7. $file = "bloem.jpg";
  8. list($oriWidth,$oriHeight) = getimagesize($file);
  9. $kleinste = ($oriWidth<$oriHeight) ? $oriWidth : $oriHeight;
  10.  
  11. // Stap3: Maak de foto kleinste X kleinste (Dus vierkante crop)
  12.  
  13. $oriImg = imagecreatefromjpeg($file);
  14. $newImg = imagecreatetruecolor(125,125);
  15. imagecopyresampled($newImg,$oriImg,0,0,0,0,$kleinste,$kleinste,$oriWidth,$oriHeight);
  16.  
  17. // Stap4: De foto schalen naar 125x125
  18.  
  19. imagecopyresampled($newImg,$oriImg,0,0,0,0,125,125,$kleinste,$kleinste);
  20.  
  21. // Stap5: Plaatje opslaan
  22. imagejpeg($newImg, null, 100);
  23. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.233s