Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Uzrasas ant Nuotraukos
Parašė xbondx3· 2009 Bal. 19 14:04:15
#1
Sveiki, turiu nuotraukos mazinimo skripta, bet nezinau kaip padaryti, kad ant nuotraukos uzdetu zodi.
<?php
$tipas = $_GET['tipas'];
$foto = $_GET['foto'];
if($tipas=="bw"){$i = new imagethumbnail_blackandwhite(); }else{$i = new imagethumbnail();}
$i->open("img/foto/$foto");
$i->setY("100"); ///// Procentas foto sumazinus keiciasi foto dydis.
if($tipas=="bw"){$i->blackandwhite();}else{}
header("Content-type: image/jpeg;");
$i->imagejpeg();
header("Content-type: image/jpeg;");
$i->imagejpeg();
class imagethumbnail{
var $filename;
var $x;
var $y;
var $image;
var $thumbnail;
function imagethumbnail() {}
function open($filename) {
$this->filename = $filename;
$imageinfo = array();
$imageinfo = getimagesize($this->filename,$imageinfo);
$this->old_x = $imageinfo[0];
$this->old_y = $imageinfo[1];
switch ($imageinfo[2]) {
case "1": $this->image = imagecreatefromgif($this->filename); break;
case "2": $this->image = imagecreatefromjpeg($this->filename); break;
case "3": $this->image = imagecreatefrompng($this->filename); break;
}
}
function setX($x="") {
if (isset($x)) { $this->x = $x; }
return $this->x;
}
function setY($y="") {
if (isset($y)) { $this->y = $y; }
return $this->y;
}
function generate() {
if ($this->x > 0 and $this->y > 0) { $new_x = $this->x; $new_y = $this->y; } elseif ($this->x > 0 and $this->x != "") { $new_x = $this->x; $new_y = ($this->x/$this->old_x)*$this->old_y; } else { $new_x = ($this->y/$this->old_y)*$this->old_x; $new_y = $this->y; }
$this->thumbnail = imagecreatetruecolor($new_x,$new_y);
$white = imagecolorallocate($this->thumbnail,255,255,255);
imagefill($this->thumbnail,0,0,$white);
imagecopyresampled ( $this->thumbnail, $this->image, 0, 0, 0, 0, $new_x, $new_y, $this->old_x, $this->old_y);
}
function imagegif($filename="") {
if (!isset($this->thumbnail)) { $this->generate(); }
imagetruecolortopalette($this->thumbnail,0,256);
if ($filename=="") {imagegif($this->thumbnail); } else { imagegif($this->thumbnail,$filename); } }
function imagejpeg($filename="",$quality=80) {
if (!isset($this->thumbnail)) { $this->generate(); }
imagejpeg($this->thumbnail,$filename,$quality);
}
function imagepng($filename="") {
if (!isset($this->thumbnail)) { $this->generate(); }
if ($filename=="") { imagepng($this->thumbnail); } else { imagepng($this->thumbnail,$filename); }
}
}
class imagethumbnail_blackandwhite extends imagethumbnail {
function imagethumbnail_blackandwhite() {}
function blackandwhite() {
if (!isset($this->thumbnail)) { $this->generate(); }
for ($x=0;$x<256;$x++) {
$palette[$x] = imagecolorallocate($this->thumbnail,$x,$x,$x);
}
for ($x=0;$x<imagesx($this->thumbnail);$x++) {
for ($y=0;$y<imagesy($this->thumbnail);$y++) {
$rgb = imagecolorat($this->thumbnail,$x,$y);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
$val = (($r*0.299)+($g*0.587)+($b*0.114));
imagesetpixel($this->thumbnail,$x,$y,$palette[$val]);
}}}}
?>
Ka cia reiketu pakeisti ar prideti? Skriptas veikiantis gal kam pravers :)
Parašė iGolf· 2009 Bal. 19 14:04:13
#2
<td background='/images/tavo-paveiklėlis.gif' style='padding-bottom:5px;' width='460' height='60'><MARQUEE scrolldelay='1' SCROLLAMOUNT='1' direction='left'>
sveiki sveiki </MARQUEE></td>
štai kodas dėk kur nori ant betkokio paveikslėlio tik įterpk ten į tą tavo-paveikslėlis ir veiks :)
Parašė xbondx3· 2009 Bal. 19 14:04:30
#3
iGolf parašė:
<td background='/images/tavo-paveiklėlis.gif' style='padding-bottom:5px;' width='460' height='60'><MARQUEE scrolldelay='1' SCROLLAMOUNT='1' direction='left'>
sveiki sveiki </MARQUEE></td>
štai kodas dėk kur nori ant betkokio paveikslėlio tik įterpk ten į tą tavo-paveikslėlis ir veiks :)
Pas mane wapinis puslapis.
Turetu but kazkas panasaus i sita skripta:
<? header("Content-type: image/gif"); $img=imagecreatefromgif("paveiksliukas.gif"); $spalva=imagecolorallocate($img,0,0,0); imagettftext($img,10,0,15,20,$spalva,"sriftas.ttf","Tekstas"); imagegif($img); ?>
bet kadangi as naudoju ana cs tai man ten reik kazka pakeist, bet ka?
Parašė bad_user· 2009 Bal. 19 14:04:52
#4
Nu tai pagalvok logiškai, kai sumažinai tada ir uždėk ;] Beje be reikalo čia klausei. Mažai kas čia OOP moka. ;]
Parašė ozzWANTED· 2009 Bal. 19 15:04:21
#5
SoNG parašė:
Nu tai pagalvok logiškai, kai sumažinai tada ir uždėk ;] Beje be reikalo čia klausei. Mažai kas čia OOP moka. ;]
Nu jau. Moka visi IT specialybių studentai. Net ir VPU. Pirmam kurse visados dėsto kaip minimum be pascalio, C ir C++. Antram jau įvairiai, bet esminiškai tai po dviejų visi beveik būna jau išėję ASM, C, C++, JAVA. Trečiam jau daugumoj į C# eina(.NET programavimas). Taip kad pagal apklausas spėju, kad bent 70-80 čia besilankančių žmonių tikrai moka :). O tai vadinčiau pakankamu kiekiu.
12kl olipiadininkai informatikos taip pat c++ programina, ir yra kandę oop. :). Tai dar manau ~+10 žm. galime pridėt.
Parašė xbondx3· 2009 Bal. 19 15:04:08
#7
gal ir tiktu bet nezinau kaip je susieti su tuo cs.
Parašė ozzWANTED· 2009 Bal. 19 15:04:12
#8
GD Text. v7 core. Tau visas reikalingas kodas. Su wapu nedirbu ir nesigilinu, nes mano asmenine nuomone ši technologija yra mirusi.
Parašė iGolf· 2009 Bal. 19 18:04:03
#9
xbondx3,
nenusimanau c++
bėda :(
Parašė xbondx3· 2009 Bal. 19 19:04:56
#10
Tai niekas nezino?