Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Instalacja GD2, Problem bo zainstalowalem
frasek
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Jestem z tego tematu zielony, a i z php jakis rewelacyjny nie jestem. Ale postanowilem zainstalowac sobie GD2. W tej chwili pracuje na krasnalu, i w phpinfo() teoretycznie jak patrze na GD2 to wszystko powinno dzialac, ale mimo wszystko rysunek ktory chce narysowac nie dziala pojawia sie blad
"Obrazek ... nie może zostać wyświetlony ponieważ zawiera błędy"
Dodam tylko ze w kodzie powinno byc wszystko oki bo skopiowalem go z dokumentacji:
  1. <?php
  2.  
  3. // Zaczynamy od nagłówka wskazującego typ zawartości, który
  4. // będziemy prezentowali przeglądarce
  5.  
  6. header("Content-type: image/png");
  7.  
  8. // Tworzymy nowy obrazek
  9.  
  10. $obraz = ImageCreate(300, 50);
  11.  
  12. // WeĽmiemy 3 kolory: biały, czarny i czerwony
  13.  
  14. $kolor['1'] = ImageColorAllocate($obraz, 255, 255, 255);
  15. $kolor['2'] = ImageColorAllocate($obraz, 0, 0, 0);
  16. $kolor['3'] = ImageColorAllocate($obraz, 255, 0, 0);
  17.  
  18. // Jako tło narysujemy na całej wielkości obrazka wypełniony
  19. // prostokąt o białym tle, podane współrzędne to lewy górny i
  20. // prawy dolny róg
  21.  
  22. ImageFilledRectangle($obraz, 0, 0, 300, 50, $kolor['1']);
  23.  
  24. // Teraz czerwone półkole dla dekoracji
  25. // Pierwsze dwa parametry to współrzędne środka, dwa kolejne to
  26. // szerokość i wysokość, kolejne dwa to początek i koniec półkola
  27. // w stopniach, póĽniej kolor a na końcu styl, w tym przypadku
  28. // standardowy, wypełniony wycinek
  29.  
  30. ImageFilledArc($obraz, 25, 25, 40, 40, 180, 360, $kolor['3'], 1);
  31.  
  32. // Teraz trochę tekstu, przyjmujemy że jest on podany w zmiennej
  33. // $tekst. Pierwszy parametr określa wielkość w pikselach, drugi
  34. // kąt tekstu (0 to normalny, poziomy tekst), dwa kolejne to
  35. // współrzędne lewego, dolnego rogu pierwszego znaku, potem
  36. // skierowanie do pliku z czcionką i na koniec tekst do
  37. // wyświetlenia
  38.  
  39. ImageTTFText($obraz, 40, 0, 30, 5, $kolor['2'], "../times.ttf",
  40. $tekst);
  41.  
  42. // Zbieramy wszystko razem
  43.  
  44. ImagePNG($obraz);
  45.  
  46. // Zwalniamy zajętą pamięć
  47.  
  48. ImageDestroy($obraz);
  49.  
  50. ?>


Jesli macie jakis pomysl albo cos zrobilem niepoprawnie to piszcie.

----
Proszę używać znaczników php - tiraeth
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
piotrd
post
Post #2





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 16.05.2006
Skąd: Łódź

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


a czy ścieżka do "../times.ttf" jest prawidłowa?
Go to the top of the page
+Quote Post
tiraeth
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

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


Edit: Forum ustawia backslash dla cudzysłowia więc nie brać tego pod uwagę....

Zamień cudzysłów na pojedyńczy:
  1. <?php
  2. // ciach...
  3. header('Content-type: image/png');
  4. // ciach...
  5. ?>
Go to the top of the page
+Quote Post
frasek
post
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Oki dzieki jak tylko pojawie sie w domu to wszystko sprawdze. I sie odezwe.

1. Z tym times.ttf jest pewien problem, takiej sciezki w php.ini nie ma wcale a pliku na dysku tez nie ma spradzalem

2. Z cudzyslowami tez nie pomoglo (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

Ten post edytował frasek 7.07.2006, 18:33:49
Go to the top of the page
+Quote Post
slash12345
post
Post #5





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 21.04.2006

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


Po pierwsze: nie używaj kodu, którego działania nie znasz... W tym przypadku skopiuj sobie TIMES.TTF z C:\WINDOWS\Fonts jako times.ttf do katalogu nadrzędnego dla skryptu (../times.ttf). Czyli uzyskasz plik z czcionką Times w lokacji ../times.ttf

Po drugie: sprawdź źródło generowanego obrazka tak samo, jak sprawdzasz źródło dokumentu HTML. php nie rozdziela strumieni STDOUT i STDERR jak Perl, więc wszyskie komunikaty o błędach będą lądować w obrazku i mieszać jego bity (tak jak komunikat o brakującym pliku ../times.ttf). Sałatka obrazkowo-błędowa raz. Przyczyną może być też limit pamięci w php.ini

Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
frasek
post
Post #6





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Sorki za ten kwas z times.ttf ale po prostu chcialem najpierw sprawdzic czy ta biblioteka dziala i wkleilem kod z jakiegos tutoriala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Pozniej mialem sie zajac jego analiza. Ale oki sprobuje zrobic tak jak powiedziales zobaczymy czy sobie poradze
Go to the top of the page
+Quote Post
zur887
post
Post #7





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 19.04.2006

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


  1. <?php
  2. $tekst = ' jest super';
  3. ImageTTFText($obraz, 40, 0, 30, 5, $kolor['2'], "./times.ttf",
  4. $tekst);
  5. ?>


tekst pojawia się na samej górze obrazka, widać tylko zarys liter, koła woguule niewidać, trzeba je przesunąć.
Go to the top of the page
+Quote Post
frasek
post
Post #8





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.07.2006

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


Dzieks wszysto dziala tak jak trzeba (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Dzieki.
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: 23.08.2025 - 16:21