SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.05.2016, 21:16:05
JanHH JanHH ist offline
Anfänger
 
Registriert seit: May 2016
Alter: 66
Beiträge: 3
Image Resize

Hallo, ich habe mir ein Script zum Hochladen von Bildern und zum erzeugen von Thumb's geschrieben. Das funktioniert soweit auch, aber die Bildqualität von dem Thumb ist schlecht, die farben total verfälscht.

Nun die Frage voran liegt das ?
Es ändert sich daran auch nichts wenn ich bei imagejpeg den Paramter für die Qualität mit 100 angebe.

Hier mein Script.

PHP-Code:
<?php
/*
echo "<pre>";
echo "FILES:<br />";
print_r ($_FILES );
echo "</pre>";
*/
$image_pfad "images/big/";
$thump_pfad "images/";

if ( 
$_FILES['uploaddatei']['name']  <> "" )
{
    
// Datei wurde durch HTML-Formular hochgeladen
    // und kann nun weiterverarbeitet werden
 
    // Kontrolle, ob Dateityp zulässig ist
    
$zugelassenedateitypen = array("image/png""image/jpeg""image/gif");
 
    if ( ! 
in_array$_FILES['uploaddatei']['type'] , $zugelassenedateitypen ))
    {
        echo 
"<p>Dateitype ist NICHT zugelassen</p>";
    }
    else
    {
        if ( 
$_FILES['uploaddatei']['name'] <> '' )
        {
            if( 
move_uploaded_file $_FILES['uploaddatei']['tmp_name'] , $image_pfad$_FILES['uploaddatei']['name'] ) )
             {
                echo 
"<p>Hochladen war erfolgreich: ";
                echo 
'<a href="' .$image_pfad$_FILES['uploaddatei']['name'] .'">';
                echo 
$image_pfad$_FILES['uploaddatei']['name'];
                echo 
'</a>';
                
$src_size getimagesize $image_pfad$_FILES['uploaddatei']['name'] );

                echo 
'<br>' 'Bildbreite: ' $src_size[0] . '<br>'
                echo 
'Bildhöhe: ' $src_size[1] . '<br>'
                echo 
'Grafik-Typ: ' $src_size[2] . '<br>'
                echo 
'HTML-Zeichenkette: ' $src_size[3] . '<br>'
                
                
$src_img imagecreatefromjpeg $image_pfad$_FILES['uploaddatei']['name'] );
                                
                
$dst_long_side =300;
                
$dst_quallity 100;
                
$prefix "kl_";  
                
                if (
$src_size[0] > $src_size[1])
                {
                    
$factor $src_size[0]/$dst_long_side;
                }
                else
                {
                    
$factor $src_size[1]/$dst_long_side;
                }
                echo 
"Faktor ............." .$factor;

                   
$dst_x floor($src_size[0]/$factor);
                
$dst_y floor($src_size[1]/$factor);

                echo 
"Faktor x............." .$dst_x ;
                echo 
"Faktor y............." .$dst_y;

                
//Bild erzeugen
                
$dst_img imagecreate $dst_x$dst_y ); 
                                
                
imagecopyresized $dst_img $src_img $dst_x $dst_y $src_size[0], $src_size[1] );
                   
                
imagejpeg($dst_img,$thump_pfad.$_FILES['uploaddatei']['name']);

                echo 
'<img src="'.$thump_pfad.$_FILES['uploaddatei']['name'].'" style="float:'.$float.';"/>';
                echo 
'<img src="'.$image_pfad.$_FILES['uploaddatei']['name'].'" style="float:'.$float.';"/>';

                
imagedestroy($src_img);
                
imagedestroy($dst_img);

           
            }
            else
            {
                echo 
"<p>Hochladen fehlgeschlagen !</p>";
            }
        }        else
        {
            echo 
"<p>Dateiname ist nicht zulässig</p>";
        }
    }
}
 
function 
dateiname_bereinigen($dateiname)
{
    
// erwünschte Zeichen erhalten bzw. umschreiben
    // aus allen ä wird ae, ü -> ue, ß -> ss (je nach Sprache mehr Aufwand)
    // und sonst noch ein paar Dinge (ist schätzungsweise mein persönlicher Geschmach ;)
    
$dateiname strtolower $dateiname );
    
$dateiname str_replace ('"'"-"$dateiname );
    
$dateiname str_replace ("'""-"$dateiname );
    
$dateiname str_replace ("*""-"$dateiname );
    
$dateiname str_replace ("ß""ss"$dateiname );
    
$dateiname str_replace ("ß""ss"$dateiname );
    
$dateiname str_replace ("ä""ae"$dateiname );
    
$dateiname str_replace ("ä""ae"$dateiname );
    
$dateiname str_replace ("ö""oe"$dateiname );
    
$dateiname str_replace ("ö""oe"$dateiname );
    
$dateiname str_replace ("ü""ue"$dateiname );
    
$dateiname str_replace ("ü""ue"$dateiname );
    
$dateiname str_replace ("Ä""ae"$dateiname );
    
$dateiname str_replace ("Ö""oe"$dateiname );
    
$dateiname str_replace ("Ü""ue"$dateiname );
    
$dateiname htmlentities $dateiname );
    
$dateiname str_replace ("&""und"$dateiname );
    
$dateiname str_replace ("+""und"$dateiname );
    
$dateiname str_replace ("(""-"$dateiname );
    
$dateiname str_replace (")""-"$dateiname );
    
$dateiname str_replace (" ""-"$dateiname );
    
$dateiname str_replace ("\'""-"$dateiname );
    
$dateiname str_replace ("/""-"$dateiname );
    
$dateiname str_replace ("?""-"$dateiname );
    
$dateiname str_replace ("!""-"$dateiname );
    
$dateiname str_replace (":""-"$dateiname );
    
$dateiname str_replace (";""-"$dateiname );
    
$dateiname str_replace (",""-"$dateiname );
    
$dateiname str_replace ("--""-"$dateiname );
 
    
// und nun jagen wir noch die Heilfunktion darüber
    
$dateiname filter_var($dateinameFILTER_SANITIZE_URL);
    return (
$dateiname);
}
Mit Zitat antworten
  #2  
Alt 03.05.2016, 12:41:54
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Image Resize

nimm mal imagecreatetruecolor()
Mit Zitat antworten
  #3  
Alt 06.05.2016, 17:39:10
JanHH JanHH ist offline
Anfänger
 
Registriert seit: May 2016
Alter: 66
Beiträge: 3
AW: Image Resize

Leider das gleiche ergebnis. Die Farben in dem verkleinerten Bild stimmen überhaupt nicht mehr.
Mit Zitat antworten
  #4  
Alt 09.05.2016, 14:43:57
chorn chorn ist offline
Junior Member
 
Registriert seit: Apr 2016
Alter: 44
Beiträge: 171
AW: Image Resize

Zeig nochmal den Code, hab's lokal probiert, ist nachvollziehbar und läuft mit truecolor.
Mit Zitat antworten
  #5  
Alt 10.05.2016, 12:33:25
JanHH JanHH ist offline
Anfänger
 
Registriert seit: May 2016
Alter: 66
Beiträge: 3
AW: Image Resize

Hallo,
und danke für den Tip. Hat nun doch mit imagecreatetruecolor() hingehauen, hab beim ersten Versuch irgendwas verkehrt gemacht.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Neue Werte nach Löschaktion generieren themerx MySQLi/PDO/(MySQL) 6 02.04.2014 16:31:00
Image resize erikS PHP für Fortgeschrittene und Experten 2 18.07.2006 11:33:54
wieder mal image hochladen und fehlermeldung nites PHP Grundlagen 11 24.02.2006 14:31:47
Image Resize verändert die Farben?? Katrin PHP für Fortgeschrittene und Experten 12 19.11.2003 15:07:16
Image Resize & Save Gweilo PHP für Fortgeschrittene und Experten 5 25.10.2002 20:19:19


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:52:50 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt