Accueil > Forum > > > > Librairire GD
Librairire GD
jeudi 18 mai 2006 à 10:48:46 |
Librairire GD

boulika
|
Bonjour, Je viens de faire un code qui scan en local toutes les polices et qui fait un apercu des polices sous forme d'une image générée . Mais mon code à des erreures mais je ne vois pas ou . Donc si quelqu'un peut m'aider . Merci <?php if ($handle = opendir('C:\WINDOWS\Fonts')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { header("Content-type: image/jpeg"); // Create the image $im = imagecreatetruecolor(400, 30); // Create some colors $white = imagecolorallocate($im, 255, 255, 255); $grey = imagecolorallocate($im, 128, 128, 128); $black = imagecolorallocate($im, 0, 0, 0); imagefilledrectangle($im, 0, 0, 399, 29, $white); // The text to draw $text = 'Mon texte'; // Replace path by your own font path $font = "C:\WINDOWS\Fonts\"".$file.""; // Add some shadow to the text imagettftext($im, 20, 0, 11, 21, $grey, $font, $text); // Add the text imagettftext($im, 20, 0, 10, 20, $black, $font, $text); // Using imagepng() results in clearer text compared with imagejpeg() imagepng($im); //imagedestroy($im); } } closedir($handle); } ?>
|
|
jeudi 18 mai 2006 à 11:04:11 |
Re : Librairire GD

sidf
|
salut dejà if ($handle == opendir('C:\WINDOWS\Fonts'))
et peut etre $font = "C:\WINDOWS\Fonts\".$file;
|
|
jeudi 18 mai 2006 à 11:07:01 |
Re : Librairire GD
|
jeudi 18 mai 2006 à 11:09:32 |
Re : Librairire GD

sidf
|
ah mais ça ç'est pourtant incorrect if ($handle = opendir('C:\WINDOWS\Fonts')) non ?
|
|
jeudi 18 mai 2006 à 11:12:25 |
Re : Librairire GD

boulika
|
non car je défini ma variable $handle je ne la teste pas
|
|
jeudi 18 mai 2006 à 11:14:27 |
Re : Librairire GD

sidf
|
ah ok
il ne te reste plus qu'à faire des echo un peu partout pour voir le contenu de tes variables je ne vois pas...
|
|
jeudi 18 mai 2006 à 11:16:54 |
Re : Librairire GD

boulika
|
ca fait quelques heures que je me prend la tete dessus. je connais pas bien la librairire GD
|
|
jeudi 18 mai 2006 à 12:43:12 |
Re : Librairire GD

juki_webmaster
|
Salut,
Code corriger:
<?php function valid_ext($file) { $ext = strtolower(strrev(strstr($file,'.'))); if ($ext == 'ftt.') return true; else return false; }
if ($handle = opendir('C:\\WINDOWS\\Fonts')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != ".." && valid_ext($file)) { // header("Content-type: image/jpeg"); // Pour du PNG, il faut: image/png
$im = imagecreatetruecolor(400, 30);
$white = imagecolorallocate($im, 255, 255, 255); $grey = imagecolorallocate($im, 128, 128, 128); $black = imagecolorallocate($im, 0, 0, 0); imagefilledrectangle($im, 0, 0, 399, 29, $white);
$text = 'Mon texte';
$font = 'C:\\WINDOWS\\Fonts\\'.$file;
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);
imagepng($im,'exemple_'.str_replace('.','_',$file).'.png'); // ont enrengistrer au format PNG
imagedestroy($im); // ont alloue de la memoire (free)
} } closedir($handle); } ?>
Parcontre, si tu souhaite tout afficher sur une image, Alors: - header('Content-type: image/png'); est à mettre TOUT au debut du script - imagecreatetruecolor() doit venir APRES header('..'); - Augmenter la taille de l'image principal pour qu'elle puissent contenir toutes les polices. - imagepng() imagedestroy() est à mettre TOUT à la fin du script Pour cela tu auras besoin de faire quelques calculs: - la taille du font, et à chaque boucle tu doit incrementer la hauteur du font avec un espace pour les aligners verticalement.
En claire, c'est plus simple de tout decouper en fichiers contenant chacune une police.
Note, $white = imagecolorallocate($im, 255, 255, 255); et imagefilledrectangle($im, 0, 0, 399, 29, $white); ne servent pas à grande chose: une image GD est par defaut: blanche (#FFFFFF).
Bon courage.
|
|
jeudi 18 mai 2006 à 13:59:36 |
Re : Librairire GD

boulika
|
Ecoutes ben que te dires que 1000 mercis a toi ca marche tres bien tout ca . Par contre comment faire pour ne pas créer une image en dur et la laisser virtuelle ?
Encore merci
|
|
jeudi 18 mai 2006 à 14:13:31 |
Re : Librairire GD

juki_webmaster
|
Là c'est en boucle, tu peux ne poura pas avoir 10 images d'affiler en boucle qui s'affiche (c'est pour sa que je te les ait enrengistrer), tu poura qu'avoir une seul image par fichier (ton navigateur ce dira que ceci est une image, et UNE SEUL):
(en schema:)
header('Content-type: image/png'); imagecreatetruecolor() // calculer la nouvelle HAUTEUR d'elle pour contenir touts les fonts $grey = imagecolorallocate($im, 128, 128, 128); $black = imagecolorallocate($im, 0, 0, 0); $text = 'Mon texte'; $y = 25; // hauteur, disont que la hauteur d'une police est 20 (+5 pour espacer) [BOUCLE] ..
imagettftext($im, 20, 0, 11, $y+1, $grey, $font, $text);
imagettftext($im, 20, 0, 10, $y, $black, $font, $text);
.. $y+=25; // incrementation [BOUCLE]
imagepng() imagedestroy()
Je n'ait pas du tout tester, mais voila à qoui ressemblerais ton code.
|
|
Cette discussion est classée dans : text, font, file, image, im
Répondre à ce message
Sujets en rapport avec ce message
génération d'image [ par noyoug ]
NoyougCe script me génère des hiéroglyphes à la place de mon image.Qqun a-t-il une explication ?La fonction header me génère aussi un warning.header (
Impossible de créer une image [ par nougitch ]
Bonjour,Je suis sous EasyPhp v.1.8 et impossible de générer la moindre image avec ce code de test :$im = @ ImageCreate ( 150, 100) or die ( "Cannot cr
Upload image [ par DonDiego32 ]
Salut! J'ai un soucis avec un formulaire d'upload d'image. Je débute, et j'ai donc repris des tutoriaux pour débutants...mais là je coince! J'ai un c
affichage d'une image [ par refkaben ]
Bonjour,Je developpe un site ou les utilisateurs ont un formulaire, dans lequel il va donner le chemin d'une image, cette image sera upploadée, puis a
Pb avec un chatbox [ par newbieflag ]
Voici le chatbox que j'ai emprunté sur une source...seul problème les messages s'effacent au bout de quelques heures...comment empêcher ça??? voici le
affichage de vignettes [ par bidoubidou ]
Bonjour a tous, je suis nouveau dans le coin, et dans la programmation tout court, je souhaite générer un affaichage de vignettes à la volée pour un s
taille de font en fonction de la hauteur de l image... [ par Teclis01 ]
Bonsoir,J'ai quelques soucis pour creer une taille de police en fonction de la hauteur de l image...je m'explique:quand j ai 6 ligne a ecrire sur une
Move_uploaded_file probleme avec le nom du fichier uploader [ par needle ]
Salut à tous,j'avais fait un page d'upload de photos qui marchait nickel et j'avais pris la précaution de n'autoriser, pour le nouveau nom de la photo
Couper Image a l'aide SVP [ par christ_sand ]
Voila je voudrai couper le bandeau de mon image pour la metttre dans la galerie photo mais le prob c que je coupe le Bas et pas le hau je vous remerci
image de font de texte [ par ybouane ]
salut j'ai un gros problème je recherche une fonction ou un code ou on peut mettre un texte avec une image a la place d'une couleurs comme celle ci:
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|