Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Stroke na napisie
Forum PHP.pl > Forum > Przedszkole
Skr3czu
Witam

Mam taki kod:
  1. <?php
  2. $d1 ="2007-10-16 00:00:00";
  3.  $d2 = date("Y-m-d G:i:s");
  4.  $r = strtotime($d1) - strtotime($d2);
  5.  
  6.  $dni = date("z",$r);
  7.  $gm = date("G", $r) -1;
  8.  if ($gm < 0)
  9.  {
  10.  $gm = 23;
  11.  $dni --;
  12.  }
  13.  
  14. $text = 'pozostało do końca '.$dni.' dni, '.$gm.date(":i:s", $r);
  15.  
  16. // create a 100*30 image
  17. $im = @imagecreatefrompng('test.png');
  18.  
  19. $textcolor = imagecolorallocate($im, 100, 990, 999);
  20.  
  21. // write the string at the top left
  22. imagestring($im, 3, 60, 2, $text, $textcolor);
  23.  
  24. // output the image
  25. header("Content-type: image/png");
  26. imagepng($im);
  27. ?>


I jest napis
  1. <?php
  2. $text = 'pozostało do końca '.$dni.' dni, '.$gm.date(":i:s", $r);
  3. ?>


Wiem jak zmienić kolor napisu (teraz jest niebieski), ale jak zrobić takie stroke na tym napisie chodzi mi o taka czarna otoczkę, a w środku niebieskie czy da sie tak zrobić ?
Daimos
  1. <span style="border: 1px solid #kolor; background-color: #kolor">tekst</span>
powinno dzialac
Skr3czu
a jak mam to wstawić bo mi sie rozwala ;/
Daimos
  1. <?php
  2. $text = '<span style="border: 1px solid #kolor; background-color: #kolor">pozostało do końca '.$dni.' dni, '.$gm.date(":i:s", $r).'</span>';
  3. ?>
Skr3czu
Nie działa zobacz:
http://iluz.org/
Daimos
oj sory, nie przeczytalem calego kodu, Ty to robisz na obrazku smile.gif to zmienia postac rzeczy, zaraz cos poszukam
--------
widze dwie przydatne funkcje do tego, poczytaj w manualu:
imageline" title="Zobacz w manualu PHP" target="_manual - rysuje linie
imagepolygon" title="Zobacz w manualu PHP" target="_manual - rysuje figure

mozesz narysowac ramke za pomoca linii, lub zrobic kwadrat za pomoca imagepolygon
Skr3czu
to odpowiada za kolor,ale jak zrobić stroke

  1. <?php
  2. $textcolor = imagecolorallocate($im, 100, 990, 999);
  3. ?>
Daimos
wyzej napisalem jak ramke
tu masz jeszcze funkcje do zmiany tla obrazka:
imagefill" title="Zobacz w manualu PHP" target="_manual
Wszystko kolego pisze w manualu, wystarczy poczytac winksmiley.jpg
Skr3czu
Cytat(my salsa @ 14.07.2007, 23:40:54 ) *
wyzej napisalem jak ramke
tu masz jeszcze funkcje do zmiany tla obrazka:
imagefill" title="Zobacz w manualu PHP" target="_manual
Wszystko kolego pisze w manualu, wystarczy poczytac winksmiley.jpg

Nie chodzi mi o ramke tylko o stroke czy da sie zrobic ? i jak ?
Daimos
oj ciezka sprawa z tym, nie sadze zeby bylo to mozliwe w jakis prosty sposob z poziomu PHP
tzn mozesz zrobic tak jak sie robi cienie
zrobic inny napis np. w kolorze zielonym i na to nalozyc napis minimalnie mniejszy, lub przesuniety (wtedy dwa razy) w kolorze czerwonym
efektem bedzie czerwony napis w zielonej otoczce
Skr3czu
Ale to wszystko z poziomu PHP ? jak tak to jak to zrobić ?
Daimos
no zrobilem takie cos:
-edit---- link juz nie potrzebny winksmiley.jpg ----
szybko ogladaj bo gasze serwer zaraz winksmiley.jpg
na podstawie Twojego kodu:
  1. <?php
  2.  
  3. $d1 ="2007-10-16 00:00:00";
  4.  $d2 = date("Y-m-d G:i:s");
  5.  $r = strtotime($d1) - strtotime($d2);
  6.  
  7.  $dni = date("z",$r);
  8.  $gm = date("G", $r) -1;
  9.  if ($gm < 0)
  10.  {
  11.  $gm = 23;
  12.  $dni --;
  13.  }
  14.  
  15. $text = 'pozostało do końca '.$dni.' dni, '.$gm.date(":i:s", $r);
  16.  
  17. // create a 100*30 image
  18. $im = @imagecreatefrompng('test.png');
  19.  
  20. $textcolor = imagecolorallocate($im, 0, 0, 0); // kolor tekstu - czarny
  21. $textcolor2 = imagecolorallocate($im, 255, 255, 255); // tu jest kolor otoczki
  22. // w tym wypadku otoczka bedzie biala
  23. // write the string at the top left
  24. imagestring($im, 3, 19, 10, $text, $textcolor2);
  25. imagestring($im, 3, 20, 9, $text, $textcolor2);
  26. imagestring($im, 3, 21, 10, $text, $textcolor2);
  27. imagestring($im, 3, 20, 11, $text, $textcolor2);
  28.  
  29.  
  30. imagestring($im, 3, 20, 10, $text, $textcolor);
  31.  
  32. // output the image
  33. header("Content-type: image/png");
  34. imagepng($im);
  35. ?>
Skr3czu
Mam takie cos:
http://iluz.org/

  1. <?php
  2.  
  3. $d1 ="2007-10-16 00:00:00";
  4.  $d2 = date("Y-m-d G:i:s");
  5.  $r = strtotime($d1) - strtotime($d2);
  6.  
  7.  $dni = date("z",$r);
  8.  $gm = date("G", $r) -1;
  9.  if ($gm < 0)
  10.  {
  11.  $gm = 23;
  12.  $dni --;
  13.  }
  14.  
  15. $text = 'Premiera GTA IV za '.$dni.' dni, '.$gm.date(":i:s", $r);
  16.  
  17. // create a 100*30 image
  18. $im = @imagecreatefrompng('gta.png');
  19.  
  20. $textcolor = imagecolorallocate($im, 0, 0, 0); // kolor tekstu - czarny
  21. $textcolor2 = imagecolorallocate($im, 255, 255, 255); // tu jest kolor otoczki
  22. // w tym wypadku otoczka bedzie biala
  23. // write the string at the top left
  24. imagestring($im, 2, 19, 10, $text, $textcolor2);
  25. imagestring($im, 2, 20, 9, $text, $textcolor2);
  26. imagestring($im, 2, 21, 10, $text, $textcolor2);
  27. imagestring($im, 2, 20, 11, $text, $textcolor2);
  28.  
  29.  
  30. imagestring($im, 2, 20, 10, $text, $textcolor);
  31.  
  32. // output the image
  33. header("Content-type: image/png");
  34. imagepng($im);
  35. ?>


Tylko jak to ustawić,aby cały text był po prawej stronie i żeby był trochę wyżej ?
Daimos
juz nie przesadzaj, robie Ci praktycznie gotowca, a Tobie sie niechce zajrzec do manuala ;>
zobacz co oznaczaja cyferki w funkcji imagestring" title="Zobacz w manualu PHP" target="_manual i bedziesz wiedzial jak zmienic pozycje tekstu
ale ok, bede dobry winksmiley.jpg to powinno Ci ulatwic sprawe
  1. <?php
  2. // odleglosci
  3. $od_lewej = 10;
  4. $od_gory = 10;
  5. imagestring($im, 2, ($od_lewej-1), $od_gory, $text, $textcolor2);
  6. imagestring($im, 2, $od_lewej, ($od_gory-1), $text, $textcolor2);
  7. imagestring($im, 2, ($od_lewej+1), $od_gory, $text, $textcolor2);
  8. imagestring($im, 2, $od_lewej, ($od_gory+1), $text, $textcolor2);
  9. imagestring($im, 2, $od_lewej, $od_gory, $text, $textcolor);
  10. ?>
Skr3czu
juz sobie poradze wielkie dzieki ;]
Daimos
odpowiedz juz jest powyzej, odpisales jak edytowalem posta winksmiley.jpg
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.