T&R splet blog o spletnih storitvah. Razgaljamo tehnologijo!

reference spletnih strani
17th May

PHP – dinamično generiranje tekst slike – font image generator

Moja naloga je bila, da kreiram ali poiščem skripto, ki glede na podan tekst generira sliko z izbrano pisavo saj naročnik želi točno določeno pisavo, ki ni standardna. Torej princip delovanja je, da preko URL-ja pokličemo PHP skripto s parametri kot so tekst, velikost pisave, ozadje slike, barva pisave, izbrana pisava in po možnosti še padding.

Samo pisanje bi vzelo preveč časa, sploh glede na podani rok do katerega je treba spletno stran končati, zato sem se odločil malce poiskati na internetnu za podobno zadevo. Med vsemi kandidati se mi je zdel skupek skript imenovam PHPFontImageGenerator2 še najboljša izbira med vsemi:

Podpira vse osnovne parametre kot so velikost pisave, barva črk, ozadje, celotna velikost objekta oz. slike ter veliko število dodatnih parametrov preko Javascript exec. Več o tem lahko preberete na njihovi strani z dokumentacijo.

Zadeva sicer potrebuje nekaj poprakov za odstranitev E_NOTICE ter E_STRICT napak (pri meni tudi E_WARNING zaradi napačne poti do font-ov), vendar mi sama koda ni delala težav (koda je dokaj pregledna) zato sem hitro popravil zgoraj omenjene težave. Bom kasneje objavil moje popravke, če bo kdo rabil.

Sama uporaba je zelo preprosta, naprimer:

HTML:
  1. <img src="file.drawtext2.php?text='Testiram'&size=16&color=0xFFFFFF&font=Nas_font.otf" alt="testna slika" />

Če pa želiko dostopati do skripte preko drugega URL-ja potem pa uporabimo require_once na tisti skripti, ki jo pokličemo preko URL-ja:

PHP:
  1. require_once('file.drawtext2.php');

Delodajalec: Pangaea.si

Edino kar pogrešam je CSS letter-spacing. Če kdo pozna boljšo skripto naj prosim pove. Hvala.

Deli s skupnostjo:

  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks

Podobni članki:

  1. Dinamično kreiranje / Upravljanje slik
  2. Najboljša pisava za razvijalce – font – typography
  3. Magento: Kako zaščiti fotografije oz slike izdelkov
  4. Rezanje teksta po koncu besede – php funkcija – substr – cut text – UTF-8
  5. Wordpress 3 – kako dodati Lytebox oz animiran ogled slike
  6. PHP – Virtualne pod-domene – virtual subdomains
  7. Zagon skripte direktno preko PHP-ja – ukazne vrstice
  8. Pretvorba PHP MySQL aplikacije v PHP MS SQL aplikacijo (apache, php, mdb2, mysql => iis, php, mdb2, mssql)
  9. PHP – izdelava galerije – preprosta skripta za prikazovanje slik
  10. Kako ohraniti pregledno strukturo CSS dokumenta

8x komentirano na “PHP – dinamično generiranje tekst slike – font image generator”

  1. smottt je napisal:

    Zgoraj popravi "latter-spacing" v "letter spacing". Vem, motijo me detajli :)

  2. Roky je napisal:

    Pravilno, da poročate, je zaželjeno, ampak kle se ne strinjam čist, ker letter-spacing je CSS atribut in sem ga zato hotel enako napisat kot ga zapišem v CSS.

  3. smottt je napisal:

    Ne zastopim te ravno.

    http://www.w3schools.com/css/pr_text_letter-spacing.asp

    Atribut je letter-spacing, sem šel pogledat da ne bom brezveze napisal. Očitno pa nekaj ne razumem v tvojem odgovoru, zato če bi lahko bolj obrazložil.. :P

  4. Roky je napisal:

    Se oproščam, sem mislil da te moti - vmes med besedama, ampak sem videl potem da sem a namesto e napisal. Hvala, sem popravil.

  5. Carli je napisal:

    Kaj ni lažje naložit font in iz image stringom zapisat tekst na neko sliko, po moje vse skupaj iz get spremenljivkami ne bi vzelo več kot 10 vrstic. :D

  6. Roky je napisal:

    Sam mi rabimo več kot to funkcionalnost, naprimer align teksta, potem podporo new line itd, itd, zato sem iskal že narejeno skripto.

  7. Carli je napisal:

    Kaj pa hitrost, če ste že testirali kaj ?

    Ker očitno to kar dinamično vlečete in ni nekega cache efekta.

  8. Roky je napisal:

    To pa nismo testiral, ker ne bo ne kako veliko prometa, sicer se pa lahko cache tudi enostavne implementira ...

Dodaj komentar