Billed thumbnail med GD Library
Hej folkensJeg har forsøgt at lave en side, der viser nogle billeder som thumbnails.
Koden:
<?
header("Content-type: image/jpeg");
header("Content-type: image/png");
header("Content-type: image/gif");
require("../billeder/mysql/mysql-funktioner.php");
$dir = "../billeder/files/";
$vis_aar = $_GET['vis_aar'];
$dette_aar = date("Y");
$tabel_billed_hoejde = "110";
$tabel_billed_bredde = "110";
//JPEG funktion
function thumb_jpeg($img_navn)
{
global $dir;
global $tabel_billed_bredde;
global $tabel_billed_hoejde;
$thumb = ImageCreateTrueColor($tabel_billed_bredde,$tabel_billed_hoejde) or die("Der opstod et problem da billedet skulle laves");
$srcimg = ImageCreateFromJPEG($dir.$img_navn) or die("Det angivne billed kunne ikke åbnes");
ImageCopyResampled($thumb,$srcimg,0,0,0,0,$tabel_billed_bredde,$tabel_billed_hoejde,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizing");
ImageJPEG($thumb) or die("Billedet kunne ikke sendes til browseren");
}
//PNG funktion
function thumb_png($img_navn)
{
global $dir;
global $tabel_billed_bredde;
global $tabel_billed_hoejde;
$thumb = ImageCreateTrueColor($tabel_billed_bredde,$tabel_billed_hoejde) or die("Der opstod et problem da billedet skulle laves");
$srcimg = ImageCreateFromPNG($dir.$img_navn) or die("Det angivne billed kunne ikke åbnes");
ImageCopyResampled($thumb,$srcimg,0,0,0,0,$tabel_billed_bredde,$tabel_billed_hoejde,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizing");
ImagePNG($thumb) or die("Billedet kunne ikke sendes til browseren");
}
//GIF funktion
function thumb_gif($img_navn)
{
global $dir;
global $tabel_billed_bredde;
global $tabel_billed_hoejde;
$thumb = ImageCreateTrueColor($tabel_billed_bredde,$tabel_billed_hoejde) or die("Der opstod et problem da billedet skulle laves");
$srcimg = ImageCreateFromGIF($dir.$img_navn) or die("Det angivne billed kunne ikke åbnes");
ImageCopyResampled($thumb,$srcimg,0,0,0,0,$tabel_billed_bredde,$tabel_billed_hoejde,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizing");
ImageGIF($thumb) or die("Billedet kunne ikke sendes til browseren");
}
if(!isset($vis_aar)){
$vis_aar = $dette_aar;
}
aabn_forbindelse_og_vaelgdb();
$sql = mysql_query("SELECT * FROM billeder WHERE kategori='$vis_aar' AND godkendt='1' ORDER BY id");
echo "<h3>Billeder fra $vis_aar</h3><br><br><br><br>";
echo "<table height=$tabel_billed_hoejde width=$tabel_billed_bredde>";
while($b = mysql_fetch_array($sql)){
$id = $b["id"];
$billednavn = $b["billednavn"];
$kommentar = $b["kommentar"];
$antal_billeder = count($id);
//Find extension på fil
$len = strlen($billednavn);
$pos =strpos($billednavn,".");
$extension = substr($billednavn,$pos + 1,$len);
$extension = strtolower($extension);
if($extension == "jpeg" || $extension == "jpg"){
$billednavn = thumb_jpeg($billednavn);
}
elseif($extension == "png"){
$billednavn = thumb_png($billednavn);
}
elseif($extension == "gif"){
$billednavn = thumb_gif($billednavn);
} else {
$billednavn = $billednavn;
}
echo "<tr valign=left></td><td><a href=".$dir."/".$billednavn." target=\"_blank\"><img src=".$dir."/".$billednavn." width=$tabel_billed_bredde height=$tabel_billed_hoejde border=0></a></td></tr></tr><tr valign=top><td><br>".$kommentar."</td></tr>";
}
echo "</table>";
?>
Dette resulterer i et meget interessant output :) Jeg tror den udskriver billederne i kode men døm selv:
ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC $.' ",#(7),01444'9=82<.342ÿÛC 2!!22222222222222222222222222222222222222222222222222ÿÀnn"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?âh¥Å)Àz(¥Å¤1¦“â)¦qIN”ÓÖšiÇ 4Ó3ÐÖuïúÕÿv´CY׿ëéZCs9ìUÅ¥¥ÅjdtÔ´ R+èF)h cM4ÓÍ!àS ȱŒ±ª3^7%NÕõ§\ȉ?uEB;ª²àž¡Tš¸ÆãnÅv¾ òîiRü‚>cô5rëBš^®Ì3îz£Ÿ$·QB8$þ¢ŒLܤhÅ2Ì„ŽµRóýbý*½¬ÍþVw!?•Z½ûÉߊ9ydO74J˜£¿…ö«$éE-4S…rzRRõ£Ä!õª³Ëµz‘V›NzU(—ϲ@ÀÏ4 Ê/–NT•9`Ãjíìô4´¶‰£l¡T7Lÿ{5Ä\BåNÏ•Q³R9Íz“pº¥Œ2ù¯lê0}3W{!«9j?û%®&Wgó%‡{7}JŽj†±¦n¼Ë{X”¸#ïž¿–y®’9ÙNû¡!õÀþ•Ìx§TžÌE%¿1Ê–à~hŒ¯ IEjqé·6wÊ÷)°ïçÛð§Þ(Âú¯=ÍÍÕÝè{Ù·6Àè¼Ô7l<ÖQØšÒ÷hÆÊÎÅ,QŠqÒUtTáQA2Ï J‡*Ã"¥¹v7 §5øFeUÉdÕÜ×5¬d\eI “ùÕF<ÎÂråW-O¨o<¾ÙZ¸¶÷YÇpÖ¬¢eÝuÊ÷?¡®z1žzW¶x&Ù5ŸZ‰æÛ|G#;Æâ@?˜ $‘’¬Û8Aº×/Ü>ŽXã¼-x’}êö†,^VÏÊfbÆ tËc•nz¦Î9+V"*4eqjhë;q¼¨`@ëØÖ³a¨jºÇ, û¹‰úÖóç8ϵDz-p½Ô¼¨µÁ¶Š<ÿÓSÂ7¾{} pú“é÷“ZH’(Øäf¾ŠÔ^8”–Æ:äž+çVëí—÷'Í‘Ÿ'® ªŒl›fzŸÞ.}jÝS'¹ïD‚,ÉŒõ5ÓèòæÏËÆ g\óX1¯|Öæ [9Þþ•5~Òø‹òm€/÷ZæX5¹«¶"›OzÀNµ4VìºïD‰Tü½Çá‹+øE"”|¾{í5Ⴝ³á²ŸøFmÉo—{d{æ¶{èï¼²˜*yôõ«6Î^0O^õ?0 ô⦈ŽF1PXç$¸ŒÕiYÛåAõ5;䛓ì*»®ë@zá†ÞÂy._bfb?„c“_<Ìp@ö¯ µ˜Zæâ™CFñ´xÇ‚+ç™AW*ÝAÅZ%ŒcVæ5úU2jÄtxô4¤8Àâ·4†bã®óšærqœ×C¢ÈËo9V9¨«ð•IûÂk òãýŸëXŠy ma¾fAY+ÖŠ? U·Cûתü!Õƒµæ•!ä
Her ser vi fede Birger på Roskilde Festivalen
ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC $.' ",#(7),01444'9=82<.342ÿÛC 2!!22222222222222222222222222222222222222222222222222ÿÀnn"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚâãäåæçèéêòóôõö÷øùúÿÚ ? ⦠Uc509®c°±º‚j0iÙ¤1ù¥™J Pp)©â‘›ŠW3Í.i¹dQp<Òi æóNà#SœiLED5:š XSHd¢Lú@:”R QHc…!äP)x¤æ––Šm¥ ý)€Ö¦1§µFÜÓLE8êuªéÒ§Z”SÅ1y §µ?8#šC)iA}t¶V3\°È c×ÚšòÚÝ‚ÍVÁ ÄSTÞ×"IÅ]£ÿÙ
Er der nogen der kan hjælpe med dette, sådan at den udskriver billederne?
Med venlig hilsen
Nicolai
