html en jpg avec c#
J'ai fait quelques recherches pour tenter et de générer les fichiers jpg à partir d'une page html et trouvé une solution, appelée IECapt ou quelque chose de semblable qui nécessite IE sur le serveur de travail...pas ce que je veux.
Voici ce que je cherche à faire: Générer une image jpg à partir d'une page html (la page html sera juste le texte) et ensuite placer un filigrane sur la jpg.
Essentiellement, je suis de la création d'un "échantillon" que mes utilisateurs puissent voir ce qui sera juste une image créée à partir de l'html (encore une fois juste à droite du texte). L'échantillon doit avoir un filigrane sur elle comme mentionné ci-dessus. Existe-il des bibliothèques disponibles pour ce faire avec le c#? Ce que j'aimerais c'est de passer dans l'url de ma page que je veux converti à une méthode et peut-être le chemin de sauvegarde de l'jpg, puis de le faire travailler sa magie, et de les convertir url d'une image jpg, jetez un filigrane sur elle, puis dire hourra!
Edit 1
en ajoutant du code de la réponse ci-dessous..ne peux pas obtenir ma tête autour de cela:
InitialContainer c = new InitialContainer("<html><body><div align=\"center\">This is my html, does it work here?</div></body></html>");
Bitmap m_Bitmap = new Bitmap(400, 700);
c.Paint(Graphics.FromImage(m_Bitmap));
m_Bitmap.Save(@"C:\test\Test.bmp");
Edit 2
cela fonctionne.
Bitmap m_Bitmap = new Bitmap(400, 600);
PointF point = new PointF(0,0);
HtmlRenderer.Render(Graphics.FromImage(m_Bitmap), "<html><body><div align=\"center\">This is my html, does it work here?</div></body></html>",point, 500);
m_Bitmap.Save(@"C:\test\Test.bmp");
OriginalL'auteur Christopher Johnson | 2011-09-11
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser ce
HtmlRenderer
de la classe.Je suis à la recherche de cette solution, mais je ne vois pas d'options pour enregistrer le rendu HTML comme une image. J'ai téléchargé l'échantillon exe et je suis à jouer avec elle maintenant, mais jusqu'à présent, je ne peux pas trouver quelque chose à propos de l'enregistrement le code html généré pour une image....les pointeurs?
Créer un
Bitmap
objet, puis utilisezHtmlRenderer
à rendre àGraphics.FromImage(...)
.ok j'ai mis à jour mon OP avec un peu de code que j'essaie de l'utiliser pour créer l'image (je peux vous soucier de convertir des fichiers jpg plus tard). Pour l'instant, c'est juste la création d'un fichier qui ressemble à une goutte de texte, tous empilés. Je suis désolé pour la newbishness, mais je n'ai jamais travaillé avec des graphiques avant... Ce que je fais de mal?
Ce lien est vieux, je le conseil à l'utilisation: HtmlRenderer sur CodePlex
OriginalL'auteur SLaks
Je n'ai pas essayé cela, mais vous pouvez essayer d'utiliser
Control.DrawToBitmap()
.Pour dessiner le filigrane vous pouvez aller comme ceci:
C'est peut-être possible de le faire avec WebKit ou Gecko.
comment est-ce que m'aider à convertir du html brut, à une image?
Vous pouvez utiliser GeckoFX pour charger le code html, puis
Control.DrawToBitmap()
de le dessiner.Pourquoi est-il une mauvaise pratique? Quelle autre option est-il? Juste dire que c'est une mauvaise pratique qui, sans motif légitime est une mauvaise pratique.
OriginalL'auteur Itamar Marom