Archief - PHP: Hoogte/breedte img beperken

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Baggel

Legacy Member
Hoe kan je een maximum hoogte en grote toepassen op een figuur , ik ben naamelijk bezig met een fotoboek te maken ...
greets Baggel

GenesisX

Legacy Member
Ik denk niet dat zoiets bestaat, maar wel een script om te bepalen of een afbeelding groter is dan ingegeven groottes en indien het groter is, te verkleinen :)

Baggel

Legacy Member
en als ik mss een tabel kan vergrendelen? zodat de figuur in die tabel blijft ?

Tyfius

Legacy Member
<img src="mekker.jpg" width="200" height="200" /> ?

Je kan via PHP ook afbeeldingen gaan resizen, dus thumbnails creeren die je dan op je main page kan afbeelden.

Baggel

Legacy Member
Hoe doe je dat dan ? (want als je dan een afbeelding < 200x200 dan vergroot die tot 200 x200 ) snappie ?

GenesisX

Legacy Member
Das een vaste grootte, geen maximum. En maxwidth werkt hier alleen bij een container, dus niet bij afbeelding. Eventjes vragen aan de pro's hier :p

Edit - Zoals ik al zei, er is een script dat je image resized als het groter is dan x*x. Google my friend ...

Baggel

Legacy Member
heb al gegoogled , geeft veel te veel paginas trug ... :)
maar leg me nu wat meer uit .... please

orez

Legacy Member
ge weet da het over PHP gaat, en NOG erin slagen een verkeerde prefix te gebruiken... usernote given.

GenesisX

Legacy Member
Het is een javascriptje dat je in de img tag zet. Maar kheb het gelijk nie meer :x

Zero Grav

Legacy Member
Baggel zei:
heb al gegoogled , geeft veel te veel paginas trug ... :)
maar leg me nu wat meer uit .... please

Google geeft te veel pagina's terug? Loop heen!

Baggel

Legacy Member
zabulus bedankt maat

Voorbeeld 2. Resampling an image proportionally

This example will display an image with the maximum width, or height, of 200 pixels.
<?php
// The file
$filename = 'test.jpg';

// Set a maximum height and width
$width = 200;
$height = 200;

// Content type
header('Content-type: image/jpeg');

// Get new dimensions
list($width_orig, $height_orig) = getimagesize($filename);

if ($width && ($width_orig < $height_orig)) {
$width = ($height / $height_orig) * $width_orig;
} else {
$height = ($width / $width_orig) * $height_orig;
}

// Resample
$image_p = imagecreatetruecolor($width, $height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);

// Output
imagejpeg($image_p, null, 100);
?>

LunchBox

Legacy Member
Je hebt voor die functies wel GDLIB nodig. (niet onbelangrijk)
--
je kan voor van het achterhalen van de formule een eenvoudig oefeningetje maken:
- stel de ruimte die je beschikbaar hebt is 8x5, dan doe je gewoon voor de gemakkelijkheid van het rekenen even maal twee
- 16x10 wil je dus verkleinen naar 8x5, de berekening wordt dan 16/?=8 (?=2) 10/?=5 (2 is dus de deelfactor)

als je dit dan wil omzetten naar een formule wordt dit:
1. bepalen of het landscape of portrait is: als originele_hoogte is groter dan originele_breedte
2. kijken wat de deelfactor is (dit wordt dus de ratio)
3. proportioneel overzetten:

A. voor landscape: (rechthoek in de breedte)
Code:
originele_breedte / beschikbare_breedte = ratio
originele_hoogte / ratio = proportionele_hoogte
B. voor portrait: (rechthoek in de hoogte)
Code:
originele_hoogte / beschikbare_hoogte = ratio
originele_breedte / ratio = proportionele_breedte

Dan komt het er enkel nog op aan de syntax om te zetten naar de scripttaal die je gebruikt. (kortom: de denkwijze is universeel)

soepkieke

Legacy Member
hoe kan ik dan zon resized bestand in nen databasegaan steken of terug als bestand opslaan?

Baggel

Legacy Member
ik heb het nu zo gedaan (a la lunchbox)
PHP:
	// Maximum hoogte en breedte
$width2 = 740;
$height2 = 740;


// veranderen van afmetingen
list($wo, $ho) = getimagesize($filename);
if($wo<=$height2 && $ho<=$width2){
$width=$wo;
$height=$ho;
}elseif($wo>$ho){
$ratio=($wo / $width2) ;
$width=($ho / $ratio);
}elseif($ho>$wo){
$ratio=($ho / $height2);
$height=($wo/$ratio);
}
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan