Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Obrazek z tekstu
Forum PHP.pl > Forum > PHP
lukasamd
Witam,
widziałem na pewnej stronie dosyć ciekawy element - obrazki tworzone pod tytuły artykułów pobierane z bazy danych.

Po prostu zamiast tekstu, na stronie był wyświetlany obrazek-napis z tytułem w odpowiedniej czcionce wygenerowany przez dodatkowy plik.

Jak zrobić coś takiego?
delfinium
Poczytaj o imagefttext" title="Zobacz w manualu PHP" target="_manual, to pozwoli Ci stworzyć obrazek z napisem używając dowolnej czcionki TTF ale nie wiem jak GD zachowuje się z kodowaniem znaków, osobiście używam do tego celu funkcji z ImageMagic, bo daje możliwości przeźroczystego tła, cieniowania i takie tam.

Ogólna zasada jest prosta. Zamiast tekstu umieszczasz <img src="" /> i w adresie umieszczasz link do skryptu generującego obrazek + odpowiednie parametry jak tekst, czcionka, kolor itp. Powiedzmy, że adres będzie taki: <img src="grafika.php?text=Napis&size=10" />

Najprostsza implementacja skryptu zamieniającego tekst na grafikę:

  1. <?php
  2. $size    = isset( $_GET['size'] ) ? (int)$_GET['size']&nbsp: 10;
  3. $tetx    = isset( $_GET['text'] ) ? (int)$_GET['text']&nbsp: 'Brak napisu';
  4. $image = imagecreatetruecolor(300, 100);
  5. $red    = imagecolorallocate($image, 0xFF, 0x00, 0x00);
  6. $black = imagecolorallocate($image, 0x00, 0x00, 0x00);
  7.  
  8. imagefilledrectangle($image, 0, 0, 299, 99, $red);
  9. $font_file = './arial.ttf';
  10. imagefttext($image, $size, 0, 105, 55, $black, $font_file, $text);
  11. header('Content-Typ: image/png');
  12. imagepng($image);
  13. imagedestroy($image);
  14. ?>
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.