Toon posts:

[PHP & GD] slechte kwaliteit thumbs

Pagina: 1
Acties:
  • 44 views sinds 30-01-2008

Verwijderd

Topicstarter
Kon nergens een goede uitleg voor mijn probleem vinden, vrienden van mij, PHP experts weten ook geen oplossing voor dit probleem.. Ik heb een mooi script van http://www.phpfreaks.com gehaald om jpg plaatjes te resizen naar thumbnails, het werkt, alleen de kwaliteit van de thumbnails is heel slecht, lijkt wel 26 kleuren plaatje of zo..
Ik heb de GD library geinstalleerd, in phpinfo zegt ie enabled.. Zou moeten werken dus! Heeft iemand hier ervaring mee of weet wat de oplossing zou kunnen zijn?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<? 
header("Content-type: image/jpeg"); 
header("Content-type: image/png"); 

$new_width=200;  //Image width Change if needed 
$new_height=150;  //Image height Change if needed 

$source_path="images/";   //Source File path 
$destination_path="images/Thumb/";     //Destination file path 

$db = mysql_connect("localhost", "","") or die("Cannot Connect");   // Database Connection 

mysql_select_db("temp",$db) or die("Cannot open database"); //Database Name 

$sql = mysql_query("SELECT * FROM images") or die("Query failed");  //Query 

while ($row = mysql_fetch_array($sql)) 
{ 

    $image_name = $row["Image_path"];  //Image path retrived 

    //Identifying Image type 

    $len = strlen($image_name); 
    $pos =strpos($image_name,"."); 
    $type = substr($image_name,$pos + 1,$len); 

    if ( $type=="jpeg" || $type=="jpg") 
    { 
        thumb_jpeg ($image_name); //Call to jpeg function 
    } 
    else if($type="png" || $type="PNG") 
    { 
        thumb_png ($image_name);    //Call to PNG function 
    } 

    echo ("Done........"); 
        
} 

//JPEG function 
function thumb_jpeg($image_name) 
{ 
    global $source_path; 
    global $destination_path; 

    global $new_width; 
    global $new_height; 

    $destimg=ImageCreate($new_width,$new_height) or die("Problem In Creating image"); 

    $srcimg=ImageCreateFromJPEG($source_path.$image_name) or die("Problem In opening Source Image"); 

    ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizing"); 

    ImageJPG($destimg,$destination_path.$image_name) or die("Problem In saving"); 
} 

//PNG function 
function thumb_png($image_name) 
{ 
    global $source_path; 
    global $destination_path; 

    global $new_width; 
    global $new_height; 

    $destimg=ImageCreate($new_width,$new_height) or die("Problem In Creating image"); 

    $srcimg=ImageCreateFromPNG($source_path.$image_name) or die("Problem In opening Source Image"); 

    ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg)) or die("Problem In resizing"); 

    ImagePNG($destimg,$destination_path.$image_name) or die("Problem In saving"); 
} 

?>

[ Voor 70% gewijzigd door Verwijderd op 12-01-2004 13:10 ]


  • SuperRembo
  • Registratie: Juni 2000
  • Laatst online: 20-08-2025
In plaats van ImageCreate() moet je ImageCreateTrueColor() gebruiken.

| Toen / Nu


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 12:46

crisp

Devver

Pixelated

en ImageCopyResampled() ipv ImageCopyResized()

Ik zou om die 2 headers trouwens ook een if-else zetten

Intentionally left blank


Verwijderd

Topicstarter
crisp schreef op 12 januari 2004 @ 13:16:
en ImageCopyResampled() ipv ImageCopyResized()

Ik zou om die 2 headers trouwens ook een if-else zetten
kan je me misschien uitleggen hoe dat moet? met databases en php kan ik het allemaal wel, maar dat lukt me niet denk ik.. :o

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 09-01 11:25

D2k

Verwijderd schreef op 12 januari 2004 @ 13:19:
[...]


kan je me misschien uitleggen hoe dat moet? met databases en php kan ik het allemaal wel, maar dat lukt me niet denk ik.. :o
:?
ik geloof nou niet echt dat wat crisp noemt ingewikkeld is?

Doet iets met Cloud (MS/IBM)


Verwijderd

Verwijderd schreef op 12 januari 2004 @ 13:19:
[...]


kan je me misschien uitleggen hoe dat moet? met databases en php kan ik het allemaal wel, maar dat lukt me niet denk ik.. :o
if (request is jpg) print header jpg else (print header png)

:)

Verwijderd

Topicstarter
Verwijderd schreef op 12 januari 2004 @ 13:20:
[...]


if (request is jpg) print header jpg else (print header png)

:)
oh ok dank je wel..
is ook niet echt moeilijk, alleen moet ik me daar toch ook eens wat meer mee bezig gaan houden... B)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Mag ik je dan verzoeken voortaan net even wat meer inspanning te vertonen dan een script van phpfreakz te copy/pasten, hier neer te kwakken en te hopen dat iemand het allemaal voor je regelt? Hou je ajb. aan de quickstart genoemd in de P&W FAQ, scheelt ons en jou een hoop geleuter.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.