Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z ImageColorAt, gd
harold82
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 31.08.2006

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


Skrypt generujacy token odmawia wspolpracy po dodaniu do niego funkcji 
ImageColorAt.
Dzialanie skryptu polega na stworzeniu obrazka i wstawieniu do niego lini, elips
i napisu.
Pisze algrytm rozmywajacy obrazek w celu utrudnienia zycia bootom, ale wlasnie j
k tylko
 wstawie do kodu ImageColorAt to przestaje dzialac w ogole!

Ten post edytował harold82 16.11.2008, 09:01:41
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
bigZbig
post
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


Wiesz w tym bloku kodu moglbys faktycznie wstawic fragment kodu zamiast samego tekstu, ktory nie informujo o niczym poza tym, ze probujesz bezskutecznie uzyc funkcji ImageColorAt.
Go to the top of the page
+Quote Post
harold82
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 31.08.2006

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


  1. <?php
  2.  $czcionki= array('times.ttf', 'comic.ttf');
  3.  header("Content-type: image/gif");
  4.  $obraz = ImageCreate(200, 100); 
  5.  
  6.  $kolor = ImageColorAllocate($obraz, 255, 255, 255); 
  7.  ImageFilledRectangle($obraz, 0, 0, 200, 200, $kolor); 
  8.  ImageFilledArc($obraz, 25, 25, 40, 40, 180, 360, $kolor, 1);
  9.  
  10. for($i = 0; $i < 255; $i++) {
  11. $color = imagecolorallocate($obraz, 90, 170, rand(200,255));
  12. imageline($obraz, 0, rand(0,100),200,rand(0,100), $color); }
  13.  
  14. //tutaj wstawiam ImageColorAt
  15.  
  16. Imagegif($obraz);
  17. ImageDestroy($obraz);
  18.  ?>


Obrazek jak obrazek (jest to uproszczona wersja). Wszystko dziala untill nie probuje pobrac indeksu koloru jakiegos pixela. Funkcje uzywam z parametrami:

ImageColorAt ($obraz, $x, $y);

Po wstawieniu funkcji (zmienne istnieja!) skrypt w ogole nie wyswietla obrazka!!!
Go to the top of the page
+Quote Post
bigZbig
post
Post #4





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


Wstawiłem linijkę:
  1. <?php $rgb = ImageColorAt ($obraz, 100, 100); ?>

we wskazanym przez Ciebie miejscu i działa. Jesteś pewien, że wartości zmiennych $x i $y istnieją, i że zawierają się w obrazku?
Go to the top of the page
+Quote Post
harold82
post
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 31.08.2006

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


Rzeczywiscie dziala!! Nie mam pojecia co bylo nie tak!!
Mam taki jeszcze mini-problem, a w zasadzie nie problem tylko luke w informacjach!
Nie moge nigdzie znalezc funkcji do zmiany koloru piksela. Mozna niby prostokat wstawic (taki z jednego piksela) ale skrypt i tak do wydajnych nie nalezy!!
Prosze o informacje, sugestie itd jednoczesnie dziekuje za cierpliwosc (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

A kod na rozmycie obrazka narazie wyglada tak:

  1. <?php
  2. $red = 0; $green = 0; $blue = 0;
  3. for($x = 2; $x <200; $x=$x+2) { // petla przechodzaca przez kolejne piksele
  4.  for ($y = 2; $y < 100; $y=$y+2) {
  5.  
  6. for($xx= -1; $xx < 2; $xx++) { // piksele w promieniu 1 
  7.  for($yy= -1; $yy <2; $yy++) {
  8. $rgb = ImageColorAt ($obraz, ($x+$xx), ($y+$yy);
  9.  $kolor_RGB = ImageColorsForIndex($obraz, $rgb);
  10.  $red += $kolor_RGB['red'];
  11. $green += $kolor_RGB['green'];
  12.  $blue += $kolor_RGB['blue']; }}
  13. //zmien kolor piksela $x,$y na ($red/9),($green/9),(blue/9)  
  14.  
  15. }}
  16. ?>




Jest problem (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) bo nie zczytuje kolorow z tablicy i zawsze wychodzi bialy
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 18.09.2025 - 08:07