ďťż

[PHP] Czcionki

       

Podstrony


telcocafe

Potrzebuje zrobić na stronie text z nietypową czcionką która nie znajduję się standartowo w katalogu windows/fonts

Czy istnieje jakiś skrypt który najpierw sprawdzi a później zainstaluje potrzebną czcionkę ? Ale zależałoby mi na tym aby działo się to automatycznie.

A może jest inna możliwość ?

Dzięki z góry za pomoc



Zacznijmy od tego, ze nie kazdy ma windowsa a co dopiero czcionke w windows/fonts :)
Najlepiej jak juz Ci mocno zależy zró” obrazek z napisu gif, dwukolorowy (co by mniej ważył).

Właśnie sposób z obrazkiem nie jest dobry ponieważ tekst będzie dosyć często zmieniany i takie tworzenie obrazków jest troche uciążliwe.


Właśnie sposób z obrazkiem nie jest dobry ponieważ tekst będzie dosyć często zmieniany i takie tworzenie obrazków jest troche uciążliwe.



Oto skrypt:
<? error_reporting(E_ALL); if (isset($_GET['tekst'])) $tekst=$_GET['tekst']; else $tekst=""; $przycisk=imagecreatefrompng("tlo.png"); $x = ImageSX($przycisk); $y = ImageSY($przycisk); $ramka = 5; $rozmiar_czcionki = 20; $czcionka = 'arial.ttf'; do { $rozmiar_czcionki--; $rozmiar = imagettfbbox ($rozmiar_czcionki, 0 , $czcionka, $tekst); $wys_txt = $rozmiar[7] - $rozmiar[1]; $szer_txt = $rozmiar[2] - $rozmiar[0]; } while ($rozmiar_czcionki>8 && ($wys_txt>($y-2*$ramka) || $szer_txt>($x-2*$ramka))); $srodek_x = ($x-$szer_txt) / 2; $srodek_y = ($y-$wys_txt) / 2; $kolor = Imagecolorallocate($przycisk, 255,255,255); ImageTTFText ($przycisk, $rozmiar_czcionki, 0, $srodek_x, $srodek_y, $kolor, $czcionka, $tekst); Header("Content_type: image/png"); ImagePNG($przycisk); ImageDestroy($przycisk); ?>
Można też tak:
<? if (isset($_GET['tekst'])) $tekst=$_GET['tekst']; else $tekst=""; $przycisk=imagecreatefrompng("tlo.png"); $x=ImageSX($przycisk); $y=ImageSY($przycisk); $ramka=5; $rodzaj_czcionki=5;     // od 1 (czcionka najmniejsza) do 5 (czcionka największa) $srodek_x = ($x - strlen($tekst) * Imagefontwidth($rodzaj_czcionki)) / 2; $srodek_y = $y / 2 - imagefontheight($rodzaj_czcionki) * 0.7; $kolor=ImageColorAllocate($przycisk, 255,255,255); ImageString ($przycisk, $rodzaj_czcionki, $srodek_x, $srodek_y, $tekst, $kolor);     //generacja przycisku Header("Content_type: image/png"); ImagePNG($przycisk); ImageDestroy($ob); ?>

PS. Jednak do prawidłowego działania tego skryptu potrzeba bobliotek GD (tutaj). Najpierw sprawdź czy są na serwerze (zapewne są), a jak nie ma to skontaktuj się z administratorem (jeśli masz taką możliwość) i poproś go, o ich doinstalowanie ;) .


Zacznijmy od tego, ze nie kazdy ma windowsa a co dopiero czcionke w windows/fonts :)
Najlepiej jak juz Ci mocno zależy zró” obrazek z napisu gif, dwukolorowy (co by mniej ważył).

Można w CSS zaimportować czcionkę. To chyba było tak:
@font-face {  src: url(czcionka.eot) }

Aj :) . Zapomniałem, że moja metoda potrzebje dodania <img src="przycisk.php?tekst=Galeria">.
Pozdrawiam :) !
Użytkownik rys.marcin edytował ten post 03 czerwiec 2006, 19:14
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.