2010-12-14 50 views
-1

Est-il possible d'imprimer une balise html div avec style sur l'image en PHP ?. sinon, alors quelle est la voie alternative?Imprimer un texte stylé sur l'image en php

+3

esprit à partager ce qui est sur votre esprit ** méga **? Ou même une URL pour illustrer votre sortie attendue? – ajreal

+0

mais j'ai besoin de produire comme image jpg. (désolé j'ai oublié de mentionner dans ma question) –

+0

Vous cherchez une fonction pour enregistrer le style HTML comme une image? Ce serait un défi pour un codeur avec du temps disponible. >> function html2png ($ html, $ css) 8 – Teson

Répondre

0

Vous pouvez définir l'image en tant que graphique d'arrière-plan de n'importe quelle div utilisant CSS. Ensuite, le texte dans cette div apparaîtra sur le dessus de l'image.

(CSS) 
.mydiv { 
    background:url(/path/to/image.gif); 
    width:100px; /* set to width of the image */ 
    height:100px; /* set to height of the image */ 
} 

(HTML) 
<div class='mydiv'>Some text here</div> 
+0

mais j'ai besoin de produire comme image jpg. (désolé j'ai oublié de mentionner dans ma question) –

+0

@Kumar V - vous pouvez utiliser n'importe quel type d'image (gif, png ou jpg) de cette façon. – Spudley

+0

pas comme ça. la sortie finale devrait être l'image. J'ai utilisé la fonction GD pour produire une image. mais cela ne me permet pas d'ajouter du style dans le texte. –

0

Il n'y a pas moyen facile d'imprimer du texte sur les images en utilisant html/css sur le côté serveur, car php ne peut pas analyser html, vous feriez mieux de trouver une autre solution comme php GD.

1

Certains hôtes ont ImageMagick pour PHP. Pour ajouter du texte à votre image, jetez un oeil à la syntaxe des commandes here. L'exemple donné sur cette page devrait aider certains - il est assez facile d'obtenir du texte sur une image. L'avantage d'utiliser ImageMagick sur une image fixe est que vous pouvez modifier le contenu du texte, ce que vous pouvez souhaiter (vous n'avez pas mentionné avoir besoin d'un texte statique, pour cela, j'utiliserais une image avec un fond transparent). Pour des commandes de polices plus complètes, jetez un oeil à here.

Pour mettre une image transparente au-dessus de votre image de base, jetez un oeil à this very nicely designed site.

Je vais aussi donner le code présenté sur ce site ici:

 
$photo = imagecreatefromjpeg("original.jpg"); 
$watermark = imagecreatefrompng("watermark.png"); 

// This is the key. Without ImageAlphaBlending on, the PNG won't render correctly. 
imagealphablending($photo, true); 

// Copy the watermark onto the master, $offset px from the bottom right corner. 
$offset = 10; 

imagecopy($photo, $watermark, imagesx($photo) - imagesx($watermark) - $offset, imagesy($photo) - imagesy($watermark) - $offset, 0, 0, imagesx($watermark), imagesy($watermark)); 

// Output to the browser 
header("Content-Type: image/jpeg"); 
imagejpeg($photo); 

Pour sortir l'image dans un fichier, s'il vous plaît Google qui et remplacer les deux dernières lignes de l'exemple donné ci-dessus.

Pour vos commandes ImageMagick, jetez un oeil here

J'espère que cette aide :-)

James