Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Kolor GD ze zmiennej
Forum PHP.pl > Forum > Przedszkole
suhy
  1.  
  2. if(!empty($color)) {
  3. $cR = hexdec('0x'.substr($color,1,2));
  4. $cG = hexdec('0x'.substr($color,3,4));
  5. $cB = hexdec('0x'.substr($color,5,6));
  6. $color = ImageColorAllocate($im, $cR, $cG, $cB);
  7. }

nastepnie jest wypisywanie tekstu tym kolorem.

Wynikiem działania tego skryptu jest tekst w kolorze czarnym

Zmienna $color w tym wypadku wyglada mniej wiecej tak #123456 (i jest poprawna tzn. 0-a).
Fantazyn
Parametry funkcji substr to kolejno
1. String (Twoja nazwa koloru).
2. Początku wycinka (liczymy od 0).
3. Długość wycinka (a nie koniec wycinka!).

Czyli przynajmniej tutaj jest błąd. Spróbuj tak:
  1. if(!empty($color)) {
  2. $cR = hexdec('0x'.substr($color,1,2));
  3. $cG = hexdec('0x'.substr($color,3,2));
  4. $cB = hexdec('0x'.substr($color,5,2));
  5. $color = ImageColorAllocate($im, $cR, $cG, $cB);
  6. }

Tomplus
Myśle że jak zastosujes tą funkcje:
http://pl.php.net/manual/en/function.hexdec.php

to po wycięciu FF do zmiennej i konwersji hexdec(FF) wynik będzie Ci wynosił 255 smile.gif
suhy
  1. if(!empty($color)) {
  2. $color = ImageColorAllocate($im,0xFF,0xFF,0xFF); // ta linia jest ble
  3. $cR = hexdec('0x'.substr($color,1,2));
  4. $cG = hexdec('0x'.substr($color,3,2));
  5. $cB = hexdec('0x'.substr($color,5,2));
  6. $color = ImageColorAllocate($im, $cR, $cG, $cB);
  7. }


Zrobiłem tak i niedziała (bez drugiej linijki nie działało)
Pokazuje w kolorze ciemno zielonym (boze... jaki ja głupi...)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.