praegune kellaaeg 20.06.2025 13:17:35
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
03.03.2009 02:03:54
PHP: imagecopyresample |
|
|
oskab keegi öelda, kuidas ühte pilti teise peale kopeerida?
imagecopyresampled($dst_image, $src_image, 50, 50, 0, 0, 300, 300 ,300, 300);
dst_image: imagefilledrectangle 300x300
src_image: createfrom... 200x200
mul jääbi 2 äärt mustaks...
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
inzinz
HV kasutaja
liitunud: 26.01.2005
|
03.03.2009 11:03:01
|
|
|
Koodi järgi vaadates on sul väga palju valesti ja ma imestan et php sulle piki näppe pole andud sellise möödapaneku eest...
Loe http://php.net/imagecopyresampled aadressilt natuke täpsemalt parameetrite kohta.
Need esimesed 50, 50 väärtused käsivad php'l sinu src_image toppida dst_image peale nii, et vasak ülemine punkt asub koordinaatides 50,50.
Pluss, viimased kaks parameetrit on src_image laiuse kohta, kuna aga sinu pilt on 200x200, siis ehk oskad selgitada misjaoks sa üritad 200x200 pildist kätte saada 300x300 tükki ?
imagecopyresampled($dst_image, $src_image, 0, 0, 0, 0, 300, 300 ,200, 200);
Selline kood peaks ilusti ära täitma sinu dst_image
_________________ Upload.ee - eestimaine failiupload |
|
Kommentaarid: 4 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
03.03.2009 11:28:46
|
|
|
inzinz, see kood teeb lihtsalt 200x200 pilti 300x300 suuruseks. kui muuta ära dst ja src järjekord, siis tehakse ainult tausta pilt. näiteks, kuidas saaks seal väiksema kopeerida suurema peale keskele!
php:
|
<?php $bg = imagecreatetruecolor(300 , 300); $rgb = imagecolorallocate($bg, 123, 156, 17); imagefilledrectangle($bg, 0, 0, 300, 300, $rgb); imagealphablending($bg, true); imagejpeg($bg, 'bg.jpg'); $img = imagecreatetruecolor(200 , 200); $rgb = imagecolorallocate($img, 177, 17, 22); imagefilledrectangle($img, 0, 0, 200, 200, $rgb); imagealphablending($img, true); imagejpeg($img, 'pilt.jpg'); imagecopyresampled($bg, $img, 0, 0, 0, 0, 200, 200 ,300, 300); imagejpeg($bg, 'full.jpg'); ?>
|
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
inzinz
HV kasutaja
liitunud: 26.01.2005
|
03.03.2009 14:06:42
|
|
|
no kui tahad peale keskele kopeerida, siis sa pead ju panema kõik laiused ja kõrgused 200.
Sinu koodis sa üritasid source imagest (200px) kätte saada 300px pilti
Et saada nii nagu sa tahad pead tegema nii:
imagecopyresampled($dst_image, $src_image, 50, 50, 0, 0, 200, 200, 200, 200);
Ehk: võtad esialgse pildi (0,0,200,200 ala) ja paned selle teise pildi peale alasse, mille laius ja kõrgus on samuti 200x200px kuid ülemine vasak punkt on asukohas 50,50
_________________ Upload.ee - eestimaine failiupload |
|
Kommentaarid: 4 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
03.03.2009 15:57:40
|
|
|
tnx, see gd on üks suur peavalu mulle, aga nüüd lõpuks sain vist enamvähem ok thumbnaili scripti valmis!
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|