resize script

Μια περιοχή όπου τα μέλη μας μπορούν να βάζουν τα PHP scripts που έχουν φτιάξει και θέλουν να τα μοιραστούν με τα υπόλοιπα μέλη.

Συντονιστές: Super-Moderators, WebDev Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 26 Σεπ 2008 22:13

eftiaksa ena eksoteriko scriptaki na kanei resize ...
kai apla eipa na to valo edo :p

lipon ....
ftiaxnoume ena file ... grafoume afta:

Κώδικας: Επιλογή όλων

<? $imagefor=$_GET&#91;'im'&#93;;
$chgt=$_GET&#91;'imw'&#93;;
$chdh=$_GET&#91;'imh'&#93;;
if&#40;&#40;file_exists&#40;$imagefor&#41;&#41; && &#40;!empty&#40;$chgt&#41;&#41;&#41; &#123;
	$filename = substr&#40;$imagefor,-3&#41;;
	if &#40;&#40;$filename=='PEG'&#41; || &#40;$filename=='peg'&#41; || &#40;$filename=='JPG'&#41;&#41; $filename='jpg';
	if &#40;&#40;$filename=='PNG'&#41; || &#40;$filename=='png'&#41;&#41; $filename='png';
	$imagedata = getimagesize&#40;$imagefor&#41;;
	$w = $imagedata&#91;0&#93;;
	$h = $imagedata&#91;1&#93;;
	if &#40;$chdh==''&#41; &#123; 
		if &#40;$h > $w&#41; &#123;
			$new_w = &#40;$chgt / $h&#41; * $w;
			$new_h = $chgt;	
		&#125; else &#123;
			$new_h = &#40;$chgt / $w&#41; * $h;
			$new_w = $chgt;
			&#125;
		&#125; else &#123;
		$new_h = $chgt;
		$new_w = $chdh;
	&#125;
	$im2 = ImageCreateTrueColor&#40;$new_w, $new_h&#41;;
	if &#40;$filename=='jpg'&#41; $image = imagecreatefromjpeg&#40;$imagefor&#41;;
	if &#40;$filename=='png'&#41; $image = imagecreatefrompng&#40;$imagefor&#41;;
	ImagecopyResampled &#40;$im2, $image, 0, 0, 0, 0, $new_w, $new_h, $w, $h&#41;;
if &#40;$filename=='jpg'&#41; &#123; header&#40;"Content-Type&#58; image/jpg"&#41;; 
imagejpeg&#40;$im2&#41;; &#125;
if &#40;$filename=='png'&#41; &#123;
header&#40;"Content-Type&#58; image/png"&#41;;
header&#40;'Content-Length&#58; '.strlen&#40;$im2&#41;&#41;; 
imagepng&#40;$im2,'',100&#41;; &#125;
imagedestroy &#40;$im2&#41;;
&#125; else &#123; if &#40;empty&#40;$chgt&#41;&#41; &#123; echo 'I need at list imw<br>'; 
echo 'Usage&#58; resize.php?im=&#91;imagepath&#93;&imw=&#91;width&#93;&imh=&#91;height&#93;'; &#125;
else &#123; echo 'I can\'t find '.$imagefor; &#125; &#125;
?>
kai to sozoume san ... thumbnail.php

apla meta sto simeio pou theloume na mpei h eikona dinoume:

Κώδικας: Επιλογή όλων

<img src="thumbnail.php?im=eikona.jpg&imw=80&imh=50" />
etc mas kanei thn eikona resize se 80x50

an theloume na ypologish me vash tin megaliterh plevra kai na kanei analogiko resize apla dinoume mono timh mono sto imw dld:

Κώδικας: Επιλογή όλων

<img src="thumbnail.php?im=eikona.jpg&imw=80" />
afta ... elpizo na voithish
Τελευταία επεξεργασία από το μέλος Alice_Cooper την 13 Νοέμ 2008 11:23, έχει επεξεργασθεί 1 φορά συνολικά.

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1948
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

resize script

Δημοσίευση από vassilism » 27 Σεπ 2008 02:16

Πολύ ωραίο scriptaki Alice, σευχαριστούμε :D
Με τα gif τι παίζει και δεν τα έβαλες? Μήπως δεν τα δουλεύει σωστά η GD?

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 27 Σεπ 2008 03:03

xmmm den ta skeftika kan .....
den mou xriazotan ekei pou to eftiaxna gi'afto ....
tha do ti paizei kai an mas pairnei tha to tropopoihso ;)

molis vro xrono lipon :)

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

resize script

Δημοσίευση από Banavas » 27 Σεπ 2008 10:07

Αν δεν κάνω λάθος πρέπει να βοήθησα σε αυτό το script χωρίς να το ξέρω!
Happy coding....
Μάρκος
http://lasernet.gr

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 27 Σεπ 2008 15:37

den thimame na xrisimopoihsa kati etimo apo allou :-? :question:
apo kati pou eixa ftiaksei pira to simio gia to resize
kai to tropopoihsa , den thimame tote ti eixa diavasei ...
logika apo to php manual kapou, gia to pies command na paro
eixa kairo skopo alla tora etixe na to kano giati ekana
kati paromio opote to alaksa ligo kai ta anevasa edo ...

eixa skopo apo tote :
http://www.freestuff.gr/forums/viewtopic.php?t=32598

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1948
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

resize script

Δημοσίευση από vassilism » 27 Σεπ 2008 16:06

Καλά που το θυμήθηκες? :idea:
Πάει σχεδόν ένας χρόνος και θυμάμαι ήμουν φαντάρος τότε :D

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

resize script

Δημοσίευση από Banavas » 27 Σεπ 2008 16:15

Alice_Cooper έγραψε:den thimame na xrisimopoihsa kati etimo apo allou :-? :question:
apo kati pou eixa ftiaksei pira to simio gia to resize
kai to tropopoihsa , den thimame tote ti eixa diavasei ...
logika apo to php manual kapou, gia to pies command na paro
eixa kairo skopo alla tora etixe na to kano giati ekana
kati paromio opote to alaksa ligo kai ta anevasa edo ...

eixa skopo apo tote :
http://www.freestuff.gr/forums/viewtopic.php?t=32598
Καλά μην βαράς!!!!! και εγώ αυτό το τοπικ είχα στο μυαλό μου και νόμιζα οτι είχα δώσει ένα κομμάτι κώδικα αλλά μάλλον μπερδεύτηκα με κάποιο άλλο τοπικ.
Happy coding....
Μάρκος
http://lasernet.gr

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 27 Σεπ 2008 18:15

Banavas έγραψε:Καλά μην βαράς!!!!! και εγώ αυτό το τοπικ είχα στο μυαλό μου και νόμιζα οτι είχα δώσει ένα κομμάτι κώδικα αλλά μάλλον μπερδεύτηκα με κάποιο άλλο τοπικ.
nai vre den eipa kati ... mporei na thimosoun kai tpt kai na edines link ...
h apla na teriazan simia ston code se tpt... poios kserei... ;)
apla eipa pos kinithika na vgaloume akrh :p
vassilism έγραψε:Καλά που το θυμήθηκες? :idea:
Πάει σχεδόν ένας χρόνος και θυμάμαι ήμουν φαντάρος τότε :D
xexexex apla afto htan o logos pou to eixa skefth ...
alla tora dothike aformh na to ftiakso :p
apo tote htan se mia akrh tou mialou mou ....
kai to post kai to script :p

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 13 Νοέμ 2008 11:25

vassilism έγραψε:Με τα gif τι παίζει και δεν τα έβαλες?
telika to ekana kai gia gif (kalio arga para pote :p )

Κώδικας: Επιλογή όλων

<? $imagefor=$_GET&#91;'im'&#93;;
$chgt=$_GET&#91;'imw'&#93;;
$chdh=$_GET&#91;'imh'&#93;;
if&#40;&#40;file_exists&#40;$imagefor&#41;&#41; && &#40;!empty&#40;$chgt&#41;&#41;&#41; &#123;
	$filename = substr&#40;$imagefor,-3&#41;;
	if &#40;&#40;$filename=='PEG'&#41; || &#40;$filename=='peg'&#41; || &#40;$filename=='JPG'&#41;&#41; $filename='jpg';
	if &#40;&#40;$filename=='PNG'&#41; || &#40;$filename=='png'&#41;&#41; $filename='png';
	if &#40;&#40;$filename=='GIF'&#41; || &#40;$filename=='gif'&#41;&#41; $filename='gif';
	$imagedata = getimagesize&#40;$imagefor&#41;;
	$w = $imagedata&#91;0&#93;;
	$h = $imagedata&#91;1&#93;;
	if &#40;$chdh==''&#41; &#123; 
		if &#40;$h > $w&#41; &#123;
			$new_w = &#40;$chgt / $h&#41; * $w;
			$new_h = $chgt;	
		&#125; else &#123;
			$new_h = &#40;$chgt / $w&#41; * $h;
			$new_w = $chgt;
			&#125;
		&#125; else &#123;
		$new_h = $chgt;
		$new_w = $chdh;
	&#125;
	$im2 = ImageCreateTrueColor&#40;$new_w, $new_h&#41;;
	if &#40;$filename=='jpg'&#41; $image = imagecreatefromjpeg&#40;$imagefor&#41;;
	if &#40;$filename=='png'&#41; $image = imagecreatefrompng&#40;$imagefor&#41;;
	if &#40;$filename=='gif'&#41; $image = imagecreatefromgif&#40;$imagefor&#41;;
	ImagecopyResampled &#40;$im2, $image, 0, 0, 0, 0, $new_w, $new_h, $w, $h&#41;;
if &#40;$filename=='jpg'&#41; &#123; header&#40;"Content-Type&#58; image/jpg"&#41;; 
imagejpeg&#40;$im2&#41;; &#125;
if &#40;$filename=='png'&#41; &#123;
header&#40;"Content-Type&#58; image/png"&#41;;
header&#40;'Content-Length&#58; '.strlen&#40;$im2&#41;&#41;; 
imagepng&#40;$im2,'',100&#41;; &#125;
if &#40;$filename=='gif'&#41; &#123;
header&#40;"Content-Type&#58; image/gif"&#41;;
imagegif&#40;$im2&#41;; &#125;
imagedestroy &#40;$im2&#41;;
&#125; else &#123; if &#40;empty&#40;$chgt&#41;&#41; &#123; echo 'I need at list imw<br>'; 
echo 'Usage&#58; resize.php?im=&#91;imagepath&#93;&imw=&#91;width&#93;&imh=&#91;height&#93;'; &#125;
else &#123; echo 'I can\'t find '.$imagefor; &#125; &#125;
?>
exo skefti kana dio allages
an katso na ta kano anevazo ;)

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1948
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

resize script

Δημοσίευση από vassilism » 13 Νοέμ 2008 17:49

Alice να ρωτήσω κάτι, επειδή δεν το έτρεξα να δω πως δουλέυει.
Έχεις δοκιμάσει να δεις τι κάνει αν το gif έχει transparency ή αν είναι κινούμενο?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6224
Εγγραφή: 30 Νοέμ 2004 03:09

resize script

Δημοσίευση από fafos » 13 Νοέμ 2008 18:16

vassilism έγραψε:Alice να ρωτήσω κάτι, επειδή δεν το έτρεξα να δω πως δουλέυει.
Έχεις δοκιμάσει να δεις τι κάνει αν το gif έχει transparency ή αν είναι κινούμενο?
Patridaaa....

genika me thn GD xrhsimopoieis ta parakato:

Κώδικας: Επιλογή όλων

if&#40;$filename == 'gif' || $filename == 'GIF'&#41; &#123;
$image= imagecolortransparent&#40;$image&#41;;
imagefill&#40;$image, 0,0, $image&#41;;
&#125; elseif&#40;$filename == 'png' || $filename == 'PNG'&#41; &#123;
@$image = imagecolortransparent&#40;$image&#41;;
$image=imagealphablending&#40;$image, false&#41;;
&#40;$image>> 0x8&#41;, 0xFF & $image, 127&#41;;
$image = imagecolorallocatealpha&#40;$image, 0, 0, 0, 127&#41;;
$image = imagecolortransparent&#40;$image, $image&#41;;
&#125;

auto tha kanei ena transparent image se gif h png alla mhn ta perimeneis ola teleia.. tha exei mia lepth leukh grammh h eikona..

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1948
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

resize script

Δημοσίευση από vassilism » 13 Νοέμ 2008 19:58

Άψογος ο πατρίδας :P
Επομένως το πρόβλημα λύνετε εν μέρη με την συνάρτηση imagecolortransparent.
Τώρα παρατηρώ αυτό που λες πατρίδα στο Avatar του Alice. Η εικόνα είναι png και του έχει φάει λίγο το πρόσωπο :P
Ίσως μια νέα έκδοση της GD να λύσει τέτοια προβληματάκια.

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

resize script

Δημοσίευση από Alice_Cooper » 14 Νοέμ 2008 00:53

nop to avatar mou einai etc ftiagmeno ... kai den nomizo na kanei resize sto upload ... to mikrina ego arketa

oso gia to transparency den to dokimasa :p
tha to do me thn proth efkaria ... kai tha kitakso an xriazetai na ensomatoso to komati tou fafos h kapoia allh lish xoris tin line an vro

Απάντηση

Επιστροφή στο “PHP τα δικά μας scripts”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης