Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: imagettftext
Forum PHP.pl > Forum > PHP
polibode
witam , mam problem z funckja imagettftext
oto mój kod
  1. <?php
  2.  
  3. include ('session.php');
  4.  
  5.  
  6. $tekst1 = $_SESSION['gora1'];
  7. $karta = explode (' ', trim($_SESSION['gora2']));
  8. if ($karta[2] != '')
  9. {
  10.     $tekst2 = $karta[0].' '.$karta[1].' '.$karta[2].' '.$karta[3];
  11.     $tekst3 = $karta[4];
  12. }
  13.  
  14.  
  15. $tekst4 = $_SESSION['gora3'];
  16. $tekst5 = $_SESSION['gora4'];
  17. $tekst6 = $_SESSION['gora5'];
  18.  
  19. header("Content-type: image/png");
  20. $im = @ImageCreateFromJPEG ('../jpg/1_jpg.jpg')
  21.   or die("Cannot Initialize new GD image stream");
  22.  
  23. $background_color1 = imagecolorallocate($im, 255, 255, 255);
  24. $background_color2 = imagecolorallocate($im, 212, 212, 212);
  25. $text_color1 = imagecolorallocate($im, 0, 0, 0);
  26. $text_color2 = imagecolorallocate($im, 212, 212, 212);
  27. //imagestring($im, 2, 95, 24,  "$tekst1", $text_color1);
  28. //imagestring($im, 2, 95, 22,  "$tekst1", $background_color1);
  29.  
  30. imagettftext($im, 20, 0, 95, 24, $text_color1, 'font/arial.ttf',$tekst1);
  31.  
  32. imagestring($im, 2, 345, 24,  "$tekst2", $text_color1);
  33. imagestring($im, 2, 345, 22,  "$tekst2", $background_color1);
  34. imagestring($im, 2, 355, 34,  "$tekst3", $text_color1);
  35. imagestring($im, 2, 355, 32,  "$tekst3", $background_color1);
  36.  
  37. imagestring($im, 2, 345, 50,  "$tekst5", $text_color1);
  38. imagestring($im, 2, 345, 48,  "$tekst5", $background_color2);
  39.  
  40. imagestring($im, 2, 640, 24,  "$tekst4", $text_color1);
  41. imagestring($im, 2, 640, 22,  "$tekst4", $background_color1);
  42. imagestring($im, 2, 620, 50,  "$tekst6", $text_color1);
  43. imagestring($im, 2, 620, 48,  "$tekst6", $background_color2);
  44.  
  45.  
  46. imagepng($im);
  47. imagedestroy($im);
  48. ?>

Nie wiem , czcionkę arial.ttf wziąłem z Windowsa

Z imagestring działa, ale chciałem "upiększyć" w jednym miejscu
Kas
Ale w czym konkretnie problem?
polibode
nic nie wyświetla we wskazanym miejscu (jużmyślałem , że wśród moich sesyjnych skryptów się coś załamuje ) ale wziąłem otworzyłem nowy plik z taką samą strukturą katalogów i też nie działa)

imgestring ma tylko jedną czcionkę, a ariala wziąłem z Wina
Kas
Nie mam pomysłu...

A czy cokolwiek się wyświetla?
polibode
tak wszytko działa

jednakże zastosowanie
  1. <?php
  2.  
  3. imagettftext($im, 20, 0, 95, 24, $text_color1, 'font/arial.ttf',$tekst1);
  4.  
  5. ?>

zamiast
  1. <?php
  2.  
  3. imagestring($im, 2, 95, 24, "$tekst1", $text_color1);
  4. imagestring($im, 2, 95, 22, "$tekst1", $background_color1);
  5.  
  6.  
  7. ?>

nie działa.
Zastanawiam się jak źle używam tej fukcji , najwyraźniej coś z arial.ttf może być nie tak?
czy może składnia?
Kas
1)
  1. <?php
  2. header("Content-type: image/png");
  3. ?>

chyba powinien być tym razem na końcu.

2) Porównaj sobie z manualem (wszystko wygląda dobrze).
polibode
umieściłem na końcu , ale nie działa również
  1. <?php
  2.  
  3. include ('session.php');
  4.  
  5.  
  6. $tekst1 = $_SESSION['gora1'];
  7. $karta = explode (' ', trim($_SESSION['gora2']));
  8. if ($karta[2] != '')
  9. {
  10. $tekst2 = $karta[0].' '.$karta[1].' '.$karta[2].' '.$karta[3];
  11. $tekst3 = $karta[4];
  12. }
  13.  
  14.  
  15. $tekst4 = $_SESSION['gora3'];
  16. $tekst5 = $_SESSION['gora4'];
  17. $tekst6 = $_SESSION['gora5'];
  18.  
  19. //header("Content-type: image/png");
  20. $im = @ImageCreateFromJPEG ('../jpg/1_jpg.jpg')
  21. or die("Cannot Initialize new GD image stream");
  22.  
  23. $background_color1 = imagecolorallocate($im, 255, 255, 255);
  24. $background_color2 = imagecolorallocate($im, 212, 212, 212);
  25. $text_color1 = imagecolorallocate($im, 0, 0, 0);
  26. $text_color2 = imagecolorallocate($im, 212, 212, 212);
  27. //imagestring($im, 2, 95, 24, "$tekst1", $text_color1);
  28. //imagestring($im, 2, 95, 22, "$tekst1", $background_color1);
  29.  
  30. imagettftext($im, 20, 0, 95, 24, $text_color1, 'font/arial.ttf',$tekst1);
  31.  
  32. imagestring($im, 2, 345, 24, "$tekst2", $text_color1);
  33. imagestring($im, 2, 345, 22, "$tekst2", $background_color1);
  34. imagestring($im, 2, 355, 34, "$tekst3", $text_color1);
  35. imagestring($im, 2, 355, 32, "$tekst3", $background_color1);
  36.  
  37. imagestring($im, 2, 345, 50, "$tekst5", $text_color1);
  38. imagestring($im, 2, 345, 48, "$tekst5", $background_color2);
  39.  
  40. imagestring($im, 2, 640, 24, "$tekst4", $text_color1);
  41. imagestring($im, 2, 640, 22, "$tekst4", $background_color1);
  42. imagestring($im, 2, 620, 50, "$tekst6", $text_color1);
  43. imagestring($im, 2, 620, 48, "$tekst6", $background_color2);
  44.  
  45. header("Content-type: image/png");
  46.  
  47. imagepng($im);
  48. imagedestroy($im);
  49. ?>
Kas
W takim razie zastosuj funkcję imagettftext() - obsługuje więcej parametrów.
Poza tym u Ciebie działa.
polibode
no własnie ją stosuję, w widocznym miejscu , ale skąd odpowiedz , ze u mnie działa.

Nie widzę , żadnego tekstu na wyświetlanej u mnie grafice....
Kas
Zrozumiałem, że "tak wszytko działa" to działa. tongue.gif
Naprawdę nia mam pomysłu, porównaj z manualem i gotowymi skryptami.
polibode
AHA OK


mi oczywiscie działa, ale bez tej funkcji imagettftext, ok no nic trudno sad.gif

prośba o pomoc dalej....exclamation.gif!!!!
kosheen2k
KAPA! Mam ten sam problem! To wszystko przez bibliotekę GD! ;/ Masz zainstalowaną bibliotekę gd dla apache2 ale nie gd2 ;/ próbowałem wszystkiego, starałem się zainstalować to dziadostwo i nic. ;/

A najgorsze jest to ze mam dystrybucję Trustix ;/ żadnego Debiana lub Suse ;/

Pomocy! Niech ktoś powie jak to zainstalować?

Pozdrawiam

// Edit: kurcze stary post trochę, ale może ktoś ma rozwiązanie na ten problem ?
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.