[PHP/GD] imagettftext leverd leeg plaatje op

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik probeer met de volgende code een string met een TTF font te printen in een PNG:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?php
  header("Content-type: image/png");
 
  $im = imagecreate(200,30);
  $color= imagecolorallocate($im, 0,255,255);
  
  imagettftext($im, 20, 0, 10, 20, $color, realpath
("/usr/share/fonts/msfonts/main/verdana.ttf"), "Test");
 
  imagepng($im);
  imagedestroy($im);
?>


Dit wil echter niet lukken, na een vrij lange periode (enkele sec.) krijg ik alleen een egaal magenta plaatje terug. Het path klopt, maar er gebeurd hetzelfde met een incorrect path. Freetype2 is meegecompiled in PHP, dus dat is het ook niet (denk ik).

Kent iemand dit probleem of heeft een oplossing?
Ben nu al enkele uren bezig, GOT en Google al afgezocht, maar kan niets vinden
Ik heb echt het gevoel dat ik een hele domme fout bega, maar kom er gewoon niet uit :)

[ Voor 4% gewijzigd door Verwijderd op 24-08-2003 23:31 . Reden: / toegevoegd aan usr ]


Acties:
  • 0 Henk 'm!

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09 14:42
Lalala het is /usr want nu zoekt hij naar de map usr in de map waarin je je PHP-script execute :P

[ Voor 61% gewijzigd door supakeen op 24-08-2003 23:30 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
foutje in post zie ik :)
code staat het wel goed

jammer genoeg is dat het dus niet

[ Voor 63% gewijzigd door Verwijderd op 24-08-2003 23:32 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
mijn excuses voor het omhoogschoppen, maar na nogmaals ruim een uur eraan gewerkt te hebben is het resultaat nog steeds hetzelfde.
Misschien ligt het aan GD2? (eigen compile met GIF, niet de standaard van PHP)

Acties:
  • 0 Henk 'm!

  • pietje63
  • Registratie: Juli 2001
  • Laatst online: 16:22

pietje63

RTFM

Verwijderd schreef op 26 August 2003 @ 17:54:
Misschien ligt het aan GD2? (eigen compile met GIF, niet de standaard van PHP)
Kun je het dan misschien op een andere server proberen??

De grootste Nederlandstalige database met informatie over computers met zoekfunctie!!


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
onze andere webserver heeft precies (software) dezelfde configiguratie.
Zal het eens proberen.

Acties:
  • 0 Henk 'm!

  • Hmmbob
  • Registratie: September 2001
  • Laatst online: 12:25
dit werkt wel:
PHP:
1
2
3
4
5
6
7
8
9
10
  header("Content-type: image/png");
  $im = imagecreate(400,30);
  $white = imagecolorallocate($im, 255,255,255);
  $black = imagecolorallocate($im, 0,0,0);
  
  // Replace path by your own font path
  imagettftext($im, 20, 0, 10, 20, $black, "verdana.ttf",
  "blaater");
  imagepng($im);
  imagedestroy($im);

[ Voor 192% gewijzigd door Hmmbob op 26-08-2003 22:49 . Reden: oplossing ]

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dan is er dus echt wat verkeerd met mijn software, ik krijg met jouw code een compleet wit plaatje... (ook op andere server)
Misschien mis ik ergens compile opties. Ik ga verder zoeken....

Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 16-09 09:15

Janoz

Moderator Devschuur®

!litemod

Probeer je font bestand eens zonder realpath in te vullen?

Omdat je het pad in zijn geheel weet en het ook vast in het script staat zie ik in eerste instantie niet in waarom hiervoor realpath gebruikt zou moeten worden.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Theguide
  • Registratie: December 2000
  • Laatst online: 26-06 11:48
offtopic:
[PHP/GD] imagettftext leverd leeg plaatje op ?????
Leer eerst de Nederlandse taal voordat je met een programmeertaal begint?

Ik erger me trouwens toch al tijden geel en groen aan alle fouten die hier in de posts voorkomen... Maar in de topic titel al? D's en t's, dat is 6de klas lagere school werk |:(

edit:
Naar aanleiding van bericht van ivy, 2 posts hieronder:
Als je goed gekeken had, dan had je gezien dat het niet mijn vraagstelling was, maar een quote van de topic titel. Met die vraagtekens wilde ik slechts mijn verontwaardiging aangeven van de domme fout. Een regel verder staat WEL een vraag waarbij het vraagteken netjes op z'n plaats staat.
Dus.... een beetje jammer van je, maar die "afzeik vlieger" gaat niet op.

Ik wil trouwens ook niet direct mensen aanvallen of zo, maar ik zou zo graag zien dat er eens wat meer aandacht aan de taal wordt besteed. Het komt gewoon een stuk serieuzer over wanneer er geen domme spelfouten in de posts staan. Je ziet soms posts waarin de poster een ontzettend diepzinnig en schijnbaar goed doordacht pleidooi heeft neergezet, maar met ontzettend veel van dat soort beginners taalfouten. Persoonlijk schat ik die persoon dan gelijk in op een leeftijd ergens rond de 10 jaar en kan zo'n verhaal absoluut niet serieus nemen. Ik wil me absoluut niet profileren als een taal purist, want daar heb ik gewoonweg de taalkennis niet voor, maar d's en t's en zaken als "meer als" zijn toch echt basiskennis die iedere brugpieper als het ware al zou moeten beheersen!

[ Voor 66% gewijzigd door Theguide op 28-08-2003 13:09 ]

Fuck me if I'm wrong, but isn't your name Gretchen?


Acties:
  • 0 Henk 'm!

  • itsme
  • Registratie: Februari 2000
  • Niet online
Probeer t eerst een met een streepje tekenen, dus geen lettertype.
Als dat ook niet werkt weet je zeker dat er wat mis is, werkt dat wel dan moet je t pad naar t lettertype eens goed checken.

Nothing to see here


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Theguide schreef op 27 augustus 2003 @ 14:17:
offtopic:
[PHP/GD] imagettftext leverd leeg plaatje op ?????
Leer eerst de Nederlandse taal voordat je met een programmeertaal begint?

Ik erger me trouwens toch al tijden geel en groen aan alle fouten die hier in de posts voorkomen... Maar in de topic titel al? D's en t's, dat is 6de klas lagere school werk |:(
Ik zag het ook toen ik topic gepost had, maar lekker irrelevant om dat hier te melden, zeker als je verder totaal geen nuttige inbreng in dit topichebt
Janoz schreef op 27 August 2003 @ 11:30:
Probeer je font bestand eens zonder realpath in te vullen?

Omdat je het pad in zijn geheel weet en het ook vast in het script staat zie ik in eerste instantie niet in waarom hiervoor realpath gebruikt zou moeten worden.
Het was eerst geen absoluut pad en heb het in dit topic aangepast. Het staat dus in code zowel met als zonder.

Hij geeft geen errors als ik het path naar de font vernachel.
Maar hij klopt zeker weten:

code:
1
2
3
[root@mobillion7 root]# ls /usr/share/fonts/msfonts/main/verdana.ttf
152K -rw-r--r--    1 root     root         146K Mar 29  
2002 /usr/share/fonts/msfonts/main/verdana.ttf
its_me schreef op 27 August 2003 @ 14:24:
Probeer t eerst een met een streepje tekenen, dus geen lettertype.
Als dat ook niet werkt weet je zeker dat er wat mis is, werkt dat wel dan moet je t pad naar t lettertype eens goed checken.
Het commando ImageString geeft wel de gewenste output (maarja, PHP standard font)

[ Voor 56% gewijzigd door Verwijderd op 27-08-2003 16:17 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Theguide schreef op 27 augustus 2003 @ 14:17:
offtopic:
[PHP/GD] imagettftext leverd leeg plaatje op ?????
Leer eerst de Nederlandse taal voordat je met een programmeertaal begint?

Ik erger me trouwens toch al tijden geel en groen aan alle fouten die hier in de posts voorkomen... Maar in de topic titel al? D's en t's, dat is 6de klas lagere school werk |:(
offtopic:
Geheel offtopic:
Tssss, een spatie tussen een directe vraagstelling en een leesteken (het vraagteken).
Leer eerst de Nederlandse taal voordat je met blaten begint!
Ik erger me daar echt groen en geel aan...

[ Voor 6% gewijzigd door Verwijderd op 27-08-2003 18:51 . Reden: even de foutjes benadrukken hoor, dit kan echt niet. ]


Acties:
  • 0 Henk 'm!

  • js303
  • Registratie: April 2003
  • Laatst online: 01-06 10:17
een manier om gd errors te debuggen is het png of gif plaatje dat een rode x of leeg plaatje genereert te slepen naar je desktop en vervolgens met je tekst editor te openen. meestal staat er dan een foutmelding in je png. zo heb ik in het verleden vaak bugs kunnnen fixen..

en idd voor fonts met freetype kan je het beste ut volledige pad intiepelen.
heb je ook al een ander font (pak bijv. je arial uit je windows fonts dir) geprobeerd? sommige ttf's willen niet...

je zegt dat freetype 2 is mee gecompileerd... zie je dat ook staan als je phpinfo() aanroept??

[ Voor 40% gewijzigd door js303 op 27-08-2003 23:13 ]

Pagina: 1