[GastForen Programmierung/Entwicklung PHP und MySQL bilder mit php bearbeiten

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

bilder mit php bearbeiten

vollueli
Beiträge gesamt: 785

5. Sep 2005, 21:23
Beitrag # 1 von 10
Bewertung:
(2114 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo
ich habe ein problem: ich möchte für eine fotogallery bilder automatisch vergrössern (oder verkleinern) lassen.
nun habe ich etwas gegoogelt und folgenden code gefunden. auf programmierforen.de
Code
 <? 
$breite = 300; //Bildbreite auf 100 Pixel setzen
$hoehe = 300; //Bildhöhe auf 100 Pixel setzen
$image = imagecreate($breite, $hoehe); //Leeres Bild erstellen
$color = imagecolorallocate($image, 255, 255, 255); //Farbe weiß allokieren
imagefill($image, 0, 0, $color); //Hintergrund einfärben
header("Content-Type: image/jpeg"); //Header manipulieren
imagejpeg($image); //Bild ausgeben
?>

nur klappt das nicht ganz, wie das resultat (quelltext) zeigt.
was muss ich da anders machen?
vielen dank für eure antworten!

(Dieser Beitrag wurde von vollueli am 5. Sep 2005, 21:24 geändert)
X

bilder mit php bearbeiten

Intermedia
Beiträge gesamt: 1287

5. Sep 2005, 21:38
Beitrag # 2 von 10
Beitrag ID: #186000
Bewertung:
(2108 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

das hat aber nichts mit vergrößern oder verkleinern von Bildern zu tun, hiermit kannst du nur ein Bild erzeugen welches noch weiß ist und damit nicht zu sehen ist.
Kennst du die Fahne der Ostfriesen? Weißer Adler auf weißen Grund. ;-)

Hier mal eine Funktion welche ich verwende um ein Vorschaubild beim Upload zu erstellen und dies noch zu verkleinern, es ist geeignet für GD 1 und 2.

Du kannst entweder die Breite des Bildes angeben und die Höhe wird im Verhältnis berechnet oder du kannst es umgekehrt machen.

Vielleicht hilft es dir weiter.


function up($ibg_tmp="",$ibg_ziel="",$ibg_name="",$ibg_kopie="",$ibg_p1="",$ibg_p2="", $ibg_quali="", $ibg_gd="", $ibg_namekopie=""){

//$ibg_ziel = Ziel-Verzeichnis
//$ibg_name = Dateiname Orginaldatei
//$ibg_namekopie = Dateiname Kopie
//$ibg_tmp = Temporärer Dateiname
//$ibg_kopie = 0 = keine Kopie; 1 = Kopie
//$ibg_p1 = maximale Höhe der Bildkopie
//$ibg_p2 = maximale Breite der Bildkopie
//$ibg_quali = Qualität in %
//$ibg_gd = 1 ( 1 = GD 2.x; 0 = GD 1.x)

move_uploaded_file($ibg_tmp,$ibg_ziel.$ibg_name);


@chmod($ibg_ziel.$ibg_name,0777);

if($ibg_kopie == "1"){

$bld = @getimagesize($ibg_ziel.$ibg_name);
$breite = $bld[0];
$hoehe = $bld[1];



$faktor = $breite /$ibg_p1;
$hoeheneu = $hoehe / $faktor;



$src = imagecreatefromjpeg($ibg_ziel.$ibg_name);



if ($hoeheneu < $ibg_p2)
{
$faktorbr = $hoehe / $ibg_p2;
$brneu = $breite / $faktorbr;

if($ibg_gd == "0"){
$dst = imagecreate($brneu, $ibg_p2);
}
else
{
$dst = imageCreateTrueColor($brneu, $ibg_p2);
}

imagecopyresized($dst, $src, 0, 0, 0, 0, $brneu, $ibg_p2, $breite,$hoehe);
}
else
{
if($ibg_gd == "0"){
$dst = imagecreate($ibg_p1, $hoeheneu);
}
else
{
$dst = imageCreateTrueColor($ibg_p1, $hoeheneu);
}
imagecopyresized($dst, $src, 0, 0, 0, 0, $ibg_p1, $hoeheneu, $breite,$hoehe);
}

imagejpeg($dst,$ibg_ziel.$ibg_namekopie,$ibg_quali);
@chmod($ibg_ziel.$ibg_namekopie,0777);
imagedestroy($dst);

} // Ende wenn Kopie gewollt

}

Gruß Sven


als Antwort auf: [#185998]

bilder mit php bearbeiten

Pozor
Beiträge gesamt: 892

5. Sep 2005, 21:45
Beitrag # 3 von 10
Beitrag ID: #186002
Bewertung: |
(2106 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich habs kurz bei mir getestet und es sieht im quelltext ähnlich aus.
Nimm mal rot als Farbe und dann siehst du es auch.


als Antwort auf: [#185998]

bilder mit php bearbeiten

vollueli
Beiträge gesamt: 785

5. Sep 2005, 21:46
Beitrag # 4 von 10
Beitrag ID: #186003
Bewertung:
(2103 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo
naja, manchmal sieht man weiss auf weiss wirklich nicht... *kopfandiewandhau*
danke, jetzt klappt es.
@sven: dein script werde ich auch gleich testen.


als Antwort auf: [#186002]

bilder mit php bearbeiten

Intermedia
Beiträge gesamt: 1287

5. Sep 2005, 21:50
Beitrag # 5 von 10
Beitrag ID: #186004
Bewertung:
(2101 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: hallo
naja, manchmal sieht man weiss auf weiss wirklich nicht... *kopfandiewandhau*


Im privaten verrate ich dir auch wie man schwarz auf schwarz nennt.;-)

Dann mal noch viel Erfolg!

Gruß Sven


als Antwort auf: [#186003]

bilder mit php bearbeiten

vollueli
Beiträge gesamt: 785

6. Sep 2005, 18:39
Beitrag # 6 von 10
Beitrag ID: #186147
Bewertung:
(2081 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo
nun habe ich es hinbekommen, ein bild zu vergrössern. folgende angaben habe ich festgelegt:
$breite=200;
$hoehe=200;
$laenge=200;
nun habe ich also ein quadratisches bild.
wie mach ich es nun, wenn ich möchte, dass ein bild maximal 200px breit/hoch/lang ist.
zur zeit habe ich bei imagecopyresized:
Code
imagecopyresized($image1, $image, 0,0, 0,0,100,100,100,100); 

was genau bedeuten all diese zahlen? einige sind mir klar, andere nicht...


als Antwort auf: [#186004]

bilder mit php bearbeiten

Intermedia
Beiträge gesamt: 1287

6. Sep 2005, 21:44
Beitrag # 7 von 10
Beitrag ID: #186156
Bewertung:
(2071 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: wie mach ich es nun, wenn ich möchte, dass ein bild maximal 200px breit/hoch/lang ist.


nun erklär mir mal bitte die 3 Parameter, breit/hoch/lang. Dachte im Zweidimensionalen gibt es nur Breite und Höhe!?

Wenn du eine proportionale Scalierung der Bilder, entweder nach der Breite oder der Höhe willst, dann schau dir mal mein Beispiel an.
Hier wird wahlweise nach der Höhe oder nach der Breite, welche vorgegeben werden kann, scaliert, nach beiden Parametern dürfte nicht möglich sein.

Gruß Sven


als Antwort auf: [#186147]

bilder mit php bearbeiten

ganesh
Beiträge gesamt: 1981

6. Sep 2005, 23:47
Beitrag # 8 von 10
Beitrag ID: #186163
Bewertung:
(2065 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Hier wird wahlweise nach der Höhe oder nach der Breite, welche vorgegeben werden kann, scaliert, nach beiden Parametern dürfte nicht möglich sein.


Und wieso nicht? Schau Dir das zweite Bsp. hier an:
http://ca.php.net/...agecopyresampled.php

übrigens: imagecopyresampled() erzeugt qualitativ bessere Ergebnisse.


als Antwort auf: [#186156]
(Dieser Beitrag wurde von ganesh am 6. Sep 2005, 23:47 geändert)

bilder mit php bearbeiten

ganesh
Beiträge gesamt: 1981

6. Sep 2005, 23:51
Beitrag # 9 von 10
Beitrag ID: #186164
Bewertung:
(2063 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
imagecopyresized($image1, $image, 0,0, 0,0,100,100,100,100);
was genau bedeuten all diese zahlen? einige sind mir klar, andere nicht...
_________________

Weisst Du was ein Manual ist? Das ist eine feine Sache, dort stehen solche Infos nämlich drin:

Zitat Beschreibung:
int imagecopyresized ( resource dst_im, resource src_im, int dstX, int dstY, int srcX, int srcY, int dstW, int dstH, int srcW, int srcH )

ImageCopyResized() kopiert einen rechteckigen Ausschnitt eines Bildes in ein anderes. Dst_im gibt das Zielbild, src_im die Bildquelle an. Unterscheiden sich die Angaben der Quelle und des Ziels bezogen auf die Koordinaten, Höhe oder Breite, wird das Teilbild entsprechend gedehnt oder geschrumpft. Die Koordinaten beziehen sich auf die linke obere Ecke. Sie können hiermit auch Teilbilder innerhalb ein- und desselben Bildes kopieren, sofern dst_im und src_im gleich sind. Falls sich dabei aber die kopierten Teile überlappen, führt das zu unvorhersehbaren Ergebnissen.


praktisch zu wissen sind gängige Abkürzungen:
int = integer
src = source (Quelle)
dst = destination (Ziel)

http://ca.php.net/...imagecopyresized.php


als Antwort auf: [#186147]

bilder mit php bearbeiten

vollueli
Beiträge gesamt: 785

7. Sep 2005, 17:19
Beitrag # 10 von 10
Beitrag ID: #186303
Bewertung:
(2043 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo
vielen dank an euch! nun klappt es prima!
sorry, dass ich gestern etwas übereilig gefragt habe, ich hatte einen recht nervenaufreibenden tag und habe dann einfach nicht noch lange suchen wollen oder das manual zu lesen...
ansonsten weiss ich schon, was ein manual ist und benutze es auch recht oft. aber am meisten lerne (zumindest) ich, indem ich eine mischung zwischen ausprobieren und code kopieren anwende. so kann ich es nachher recht gut im kopf behalten.
also sorry für das mühsame posten gestern und danke für eure lösungen!


als Antwort auf: [#186164]
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
01.12.2022

Online
Donnerstag, 01. Dez. 2022, 10.00 - 10.45 Uhr

Webinar

Die drei ColorLogic-Programme ZePrA, CoPrA und ColorAnt sind in neuen Versionen mit vielen neuen Funktionen im Jahr 2022 veröffentlich worden oder werden in Kürze veröffentlicht (ColorAnt 9). In unserem ca. 45 minütigen kostenlosen Webinar zeigen wir Ihnen einige dieser neuen Funktionen mit dem Schwerpunkt auf Automatisierung und Produktivitätssteigerungen.

Ja

Organisator: Impressed GmbH

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=311

ColorLogic Update-Webinar ZePrA 10, CoPrA 9 und ColorAnt 9
Veranstaltungen
02.02.2023

Prozesse optimieren und effizient gestalten

Zürich
Donnerstag, 02. Feb. 2023, 08.00 - 10.00 Uhr

Digitalisierung, Webauftritt

Digitalisierung mitgestalten - Worauf kommt es an? Wie wichtig ist die Webseite? Webseite mit Word Press? Interne Prozesse optimieren

Ja

Organisator: B. Isik - SNF Academy

Kontaktinformation: Birol Isik, E-Mailinfo AT bkcc DOT ch

https://digitalisierung-heute.ch/digitalisierung-informationstag-schweiz/