Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]GD obcięcie z grafiki
Mike122
post 22.07.2007, 22:08:54
Post #1





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


Witam w jaki sposób z grafiki o wymiarach 1280x960 wyciąć 20px z prawej strony i 80 z dołu?
Może ktoś mi podać jakieś funkcje? Pozdrawiam.


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
FliSs_tCv
post 22.07.2007, 22:12:32
Post #2





Grupa: Zarejestrowani
Postów: 198
Pomógł: 3
Dołączył: 27.02.2007
Skąd: Tczew

Ostrzeżenie: (0%)
-----


nie lepiej jakims programem do grafiki ;> polecam Corel Paint Shop Pro X

chyba ze ma to czemus słuzyc tongue.gif heh pozdrawiam smile.gif

Ten post edytował FliSs_tCv 22.07.2007, 22:12:56


--------------------
Go to the top of the page
+Quote Post
Mike122
post 22.07.2007, 22:24:20
Post #3





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


~FliSs_tCv chyba proste że bym użył programu graficznego gdyby była to statyczna grafika a ona jest dynamiczna i jest generowane ponad 10 000 razy w ciągu dnia zresztą w temacie napisałem GD dry.gif
Więc po co odpisujesz? Posty nabijasz? blinksmiley.gif


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
FliSs_tCv
post 22.07.2007, 22:28:23
Post #4





Grupa: Zarejestrowani
Postów: 198
Pomógł: 3
Dołączył: 27.02.2007
Skąd: Tczew

Ostrzeżenie: (0%)
-----


sorka smile.gif nie wiem jescze co to GD tongue.gif i tak mi sie napisało smile.gif jak widac jestem z poczatkujących mam tylko 47 postów sad.gif wiec ucze sie kazdy popelnial kiedys bledy smile.gif a ja napewo nie chcialem podbijac posta pozdrawiam smile.gif panie czepialski tongue.gif


--------------------
Go to the top of the page
+Quote Post
babejsza
post 23.07.2007, 09:39:00
Post #5





Grupa: Zarejestrowani
Postów: 407
Pomógł: 1
Dołączył: 4.03.2003
Skąd: warszawa

Ostrzeżenie: (0%)
-----


Co to znaczy 20px? Ciąg pikseli? Poziomy czy pionowy?

Poza tym polecam imageMagick zamiast GD. W GD będziesz się musiał trochę namęczyć, a w IM będzie to wyglądało mniej więcej tak:
  1. <?php
  2. passthru ('convert twojObrazek.jpg -crop 20x1+0+0 twojNowyObrazek.png')
  3. ?>


Ten post edytował babejsza 23.07.2007, 09:39:17
Go to the top of the page
+Quote Post
mild
post 23.07.2007, 09:42:47
Post #6





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 22.04.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Skorzystaj z imagecopy
U Ciebie mniej wiecej tak to bedzie wygladac:
  1. <?php
  2. imagecopy ( $dst_im, $src_im, 0, 0, 0, 0, 1260, 880 )
  3. ?>

$src_im to plik zrodlowy, otworz go prze imagecreatefrom*** (tu format)
$dst_im to plik w ktorym chcesz zapisac.
O ile nigdzie sie nie machnalem tongue.gif

Ten post edytował mild 23.07.2007, 09:48:25
Go to the top of the page
+Quote Post
qwaq
post 23.07.2007, 12:37:44
Post #7





Grupa: Zarejestrowani
Postów: 162
Pomógł: 1
Dołączył: 15.05.2007
Skąd: Łódź

Ostrzeżenie: (0%)
-----


moj pomysł jest taki aby tworząc obrazek w gd za pomocą createimage() podać mu odpowiednio mniejsze wymiary niz ma obrazek
wtedy część elementów dynamicznych będzie tworzona poza nim i przez to się nie wyświetli
dzięki temu obrazek będzie jak przycięty

Ten post edytował qwaq 23.07.2007, 12:38:20


--------------------
Chcę kobietę!!! Cierpliwą i wyrozumiałą jak stado bydła przed dojeniem.....

Życie jest jak papier toaletowy-długie, szare i do dupy, ale na szczęście czasem pachnie rumiankiem


wynajmę mieszkanie?
Go to the top of the page
+Quote Post
ArturS
post 31.03.2008, 17:43:46
Post #8





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 8.01.2006
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


Pozwolę sobie odświeżyć temat, bo utknąłem właśnie na tym, a nie bardzo mogę znaleźć rozwiązanie. Próbowałem z fukcją imagecopy i innymi pochodnymi, ale nic z tego blinksmiley.gif

Ostatnie testowe bazgroły wyglądają tak:
  1. <?php
  2. $img = imagecreatefromjpeg('portfolio/kiki.jpg');
  3. $w = imagesx($img);
  4. $h = imagesy($img);
  5.  
  6. $trans = imagecolortransparent($img);
  7. if($trans >= 0) {
  8.  
  9. $rgb = imagecolorsforindex($img, $trans);
  10.  
  11. $oldimg = $img;
  12. $img = imagecreatetruecolor(50,20);
  13. $color = imagecolorallocate($img,$rgb['red'],$rgb['green'],$rgb['blue']);
  14. //imagefilledrectangle($img,0,0,50,20,$color);
  15. //imagecopyresampled($img,$oldimg,50,50,0,0,$w-50,$h-100,$w,$h);
  16. imagecopy($img,$oldimg,0,0,0,0,40,40);
  17. //imagecopyresampled($img,$oldimg,0,0,0,0,50,20,$w,$h);
  18. }
  19.  
  20. imagegif($img,'portfolio/out.gif');
  21. ?>


Obraz jednak jak miał tak ma 300x300px sadsmiley02.gif Jakie jest tego rozwiązanie?

No dobra, znalazłem rozwiązanie. Pewnie się przyda więc wklejam przykład (zapis do pliku).
  1. <?php
  2. $lewo = 50; 
  3. $prawo = 100;
  4. $gora = 30; 
  5. $dol = 100;
  6.  
  7. $fotka = 'obraz.jpg';
  8. $f = imagecreatefromjpeg($fotka);
  9. $x = imagesx($f);
  10. $y = imagesy($f);
  11. $nowa = imagecreatetruecolor(70,70);
  12. imagecopyresampled($nowa,$f,0,0,0+$lewo,0+$gora,$x,$y,$x,$y);
  13. //header("Content-type: image/jpg");
  14. imagejpeg($nowa,"obraz_s.jpg",90);
  15. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 20:41