HTMLתPDF£¨C# itextsharp£©
Ò»¡¢ ÐèÇ󣺽«HTMLתPDF´òÓ¡¡£WebÏîÄ¿ÖÐ×ÜÊÇÓÐÕâÑùµÄÐèÇ󣬺ÜÊÇÈÃÈË¿àÄÕ¡£
¶þ¡¢ ·ÖÎö£ºÈçºÎÍê³ÉÕâ¸ö¹¤×÷£¿
1¡¢ ÐèÒª½âÎöHTML£¬È»ºóÀûÓÃitextsharp»æÖÆpdfÎĵµ¡£½âÎöHTMLÊÇÒ»¸öºÜÄÑÍê³ÉµÄÈÎÎñ£¬¸÷¸öä¯ÀÀÆ÷¶ÔHTMLµÄ½âÎöÎ廨°ËÞÍÖªµÀÕâ²»ºÃ½â¾ö¡£ÕâÌõ·²»ºÃ×ߣ¬µ«Ò²ÊÇ¿ÉÒÔÍê³ÉµÄ£¬Í¨¹ýwebbrowserÀà¿ÉÒÔ½âÎöHTML»ñÈ¡¸÷¶ÔÏóµÄλÖã¬È»ºó»æÖƵ½pdfÖС£·½·¨ÊÇ¿ÉÐУ¬ÆäÖеĸ´ÔӶȲ»Ð¡¡£
2¡¢ ½«HTML±£´æÎªÍ¼Æ¬£¬È»ºó²åÈëµ½pdfÎĵµÖУ¬ÕâÀォ½éÉÜÕâÖÖ·½·¨¡£ËæÖ®¶øÀ´µÄÎÊÌ⣺ÈçºÎ½«HTML±£´æÎªÍ¼Æ¬ÄØ£¿
Èý¡¢ ½â¾ö°ì·¨£º
1¡¢ ½«HTML±£´æÎªÍ¼Æ¬£ºÐèÒªÓõ½webbrowerÀ࣬½«Ö¸¶¨µÄHTMLÔØÈëwebbrower£¬È»ºóµ÷ÓÃÆäDrawToBitmap·½·¨»ñȡͼƬ¡£´úÂëÈçÏ£º
private System.Drawing.Bitmap bitmap;
private string url;
private int w = 760, h = 900;//A4Ö½ÕŶÔÓ¦µÄ·Ö±æÂÊ´ó¸Å¾ÍÊÇ760*900
public void setBitmap()
{
using (WebBrowser wb = new WebBrowser())
{
wb.Width = w;
wb.Height = h;
wb.ScrollBarsEnabled = false;
wb.Navigate(url);
//È·±£Ò³Ãæ±»½âÎöÍêÈ«
while (wb.ReadyState != WebBrowserReadyState.Complete)
{
System.Windows.Forms.Application.DoEvents();
}
bitmap = new System.Drawing.Bitmap(w, h);
wb.DrawToBitmap(bitmap, new
Ïà¹ØÎĵµ£º
×ªÔØ×Ô£ºhttp://virgos.javaeye.com/blog/611146
Ò»£®Ç°ÑÔ£º
XMLÊÇ΢Èí.NetÕ½ÂÔµÄÒ»¸öÖØÒª×é³É²¿·Ö£¬¶øÇÒËü¿ÉνÊÇXML Web·þÎñµÄ»ùʯ£¬ËùÒÔÕÆÎÕ.Net¿ò¼ÜϵÄXML¼¼Êõ×ÔÈ»ÏԵ÷dz£ÖØÒªÁË¡£±¾ÎĽ«Ö¸µ¼´ó¼ÒÈçºÎÔËÓÃC#ÓïÑÔÍê³É.Net¿ò¼ÜϵÄXMLÎĵµµÄ¶Áд²Ù×÷¡£Ê×ÏÈ£¬ÎÒ»áÏò´ó¼Ò½éÉÜ.Net¿ò¼ÜÖÐÓëXMLÏà¹ØµÄÃüÃû¿Õ¼äºÍÆäÖеÄÖØÒªÀ ......
1¡¢DateTime Êý×ÖÐÍ
System.DateTime currentTime=new System.DateTime();
1.1 È¡µ±Ç°ÄêÔÂÈÕʱ·ÖÃë
currentTime=System.DateTime.Now;
1.2 È¡µ±Ç°Äê
&nb ......
protected void Page_Load(object sender, EventArgs e)
{
try
{
&nbs ......
<html>
<head>
<mce:style type = "text/css"><!--
table
{
border-collapse:collapse;
}
td
{
border:solid 1px black;
}
--></mce:style><style type = "text/css" mce_bogus="1">table
{
border-collapse:collapse;
}
td
......
³ÃÖÜÄ©ÏëÕÛÌÚÒ»ÏÂǶÈëASP.NETµÄWinForm³ÌÐò
ÐèÒªÓõ½WebBrowser¿Ø¼þµÄHTMLÔ´Âë¶Áд
¾Í°ÑÒÔǰµÄһЩ´úÂëÆ¬¶ÏÒÆÖµµ½C#ÏÂ
˳±ã·¢¸öÌû×Ó±¸Íü£¬ºÇºÇ
˼·ÆäʵºÜ¼òµ¥£¬Ö±½Óͨ¹ýdocument.documentElement.outerHTML
»òÕßʹÓÃIPersistStreamInit½Ó¿ÚÖ±½Ó¶ÔÁ÷½øÐд¦Àí
ǰÕßÎҾͲ»·Ï»°ÁË£¬ºóÕßʵÏÖ·½·¨ÈçÏÂ
&nbs ......