Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Generowanie obrazka
Forum PHP.pl > Forum > Przedszkole
djgarsi
Witam.
Mam pewien kod, który powinien generować mi grafikę, coś a'la demotywator. Niestety, błędów nie pokazuje a tylko Obrazek „http://localhost/new/index.php” nie może zostać wyświetlony, ponieważ zawiera błędy.

Oto mój kod:

  1. ini_set( 'display_errors', 'On' );
  2. error_reporting( E_ALL );
  3.  
  4. header("Content-type: image/png");
  5.  
  6. $tytul = "tytuł";
  7. $opis = "Jakiś dłuuuuugi opis";
  8.  
  9. $caly_obraz = imagecreatetruecolor(750, 600);
  10. $grafika = imagecreatefromjpeg('sunset.jpg');
  11.  
  12. $czarny = imagecolorallocate($caly_obraz, 0, 0, 0);
  13. $bialy = imagecolorallocate($caly_obraz, 255, 255, 255);
  14. $stopka[0] = imagecolorallocate($caly_obraz, 128, 128, 128);
  15. $stopka[1] = imageloadfont('arial.gdf');
  16. $czcionka = 'arial.ttf';
  17.  
  18. imagefill($caly_obraz, 0, 0, $czarne_tlo);
  19. imagefilledrectangle($caly_obraz, 70, 45, 680, 455, $bialy);
  20. imagefilledrectangle($caly_obraz, 72, 47, 678, 453, $czarny);
  21.  
  22. imagestring($caly_obraz, $stopka[1], 660, 585, 'strona.pl', $stopka[0]);
  23. imagestring($caly_obraz, $stopka[1], 10, 585, 'Garsi', $stopka[0]);
  24. imagettftext($caly_obraz, 46, 0, 200, 510, $bialy, $czcionka, $tytul);
  25. imagettftext($caly_obraz, 16, 0, 100, 555, $bialy, $czcionka, $opis);
  26.  
  27. imagecopy($caly_obraz, $grafika, 72, 47, 0, 0, 606, 406);
  28.  
  29. imagepng($caly_obraz);
  30. imagedestroy($caly_obraz);
  31. imagedestroy($grafika);


Co jest w nim nie tak?
YourFrog
Najczęściej zdarza się tak ponieważ do przeglądarki zostały przesłane dane przed przesłaniem obrazka. Po ludzku gdzieś masz w kodzie jakieś "echo" / Kod wyrzuca warning'a.
djgarsi
No właśnie póki co, nie mam nic więcej prócz tego kodu.
Kshyhoo
  1. $stopka[1] = imageloadfont('arial.gdf');

Masz taką czcionkę?
djgarsi
Cytat(Kshyhoo @ 10.01.2014, 11:46:07 ) *
  1. $stopka[1] = imageloadfont('arial.gdf');

Masz taką czcionkę?


Oczywiście. To chyba logiczne smile.gif
vermis
Wytnij:
  1. header("Content-type: image/png");


to błąd się pokaże.
Kshyhoo
Takie coś już Ci zadziała:
  1. /*
  2. ini_set( 'display_errors', 'On' );
  3. error_reporting( E_ALL );
  4.  */
  5. header("Content-type: image/png");
  6.  
  7. $tytul = "tytuł";
  8. $opis = "Jakiś dłuuuuugi opis";
  9.  
  10. $caly_obraz = imagecreatetruecolor(750, 600);
  11. $grafika = imagecreatefromjpeg('sunset.jpg');
  12.  
  13. $czarny = imagecolorallocate($caly_obraz, 0, 0, 0);
  14. $bialy = imagecolorallocate($caly_obraz, 255, 255, 255);
  15. $stopka[0] = imagecolorallocate($caly_obraz, 128, 128, 128);
  16. //$stopka[1] = imageloadfont('arial.gdf');
  17. $czcionka = 'arial.ttf';
  18.  
  19. imagefill($caly_obraz, 0, 0, $czarne_tlo);
  20. imagefilledrectangle($caly_obraz, 70, 45, 680, 455, $bialy);
  21. imagefilledrectangle($caly_obraz, 72, 47, 678, 453, $czarny);
  22.  
  23. imagestring($caly_obraz, $stopka[1], 660, 585, 'strona.pl', $stopka[0]);
  24. imagestring($caly_obraz, $stopka[1], 10, 585, 'Garsi', $stopka[0]);
  25. imagettftext($caly_obraz, 46, 0, 200, 510, $bialy, $czcionka, $tytul);
  26. imagettftext($caly_obraz, 16, 0, 100, 555, $bialy, $czcionka, $opis);
  27.  
  28. imagecopy($caly_obraz, $grafika, 72, 47, 0, 0, 606, 406);
  29.  
  30. imagepng($caly_obraz);
  31. imagedestroy($caly_obraz);
  32. imagedestroy($grafika);

Czyli błąd tkwi w $stopka[1] = imageloadfont('arial.gdf');
djgarsi
Super, jeszcze zmienne troche sie pomieszały ale działa wink.gif
php__amator
Owszem działa ale nie pokazuje tytułu i opisu smile.gif
Chyba że to tylko u mnie nie pokazuje smile.gif
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.