易截截图软件、单文件、免安装、纯绿色、仅160KB

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


相关文档:

最近自己在写javascript/html/css的树控件

    完成以下部分:
    1. 树可以接受singleXml格式和json以及jsonarray格式的数据;
    2. 复选框勾选和折叠子节点的逻辑用div嵌套来实现,效率更高;并提供了快速画树的方法;(存在bug:快速画树效率并不高,div嵌套有问题);
    3.增加树的深度 this.depth ......

HTML 标签

定义和用法
<area> 标签定义图像映射中的区域(注:图像映射指得是带有可点击区域的图像)。
area 元素总是嵌套在 <map> 标签中。
注释:<img> 标签中的 usemap 属性与 map 元素 name 属性相关联,创建图像与映射之间的联系。
实例
带有可点击区域的图像映射:
<img src="planets.jpg" border=" ......

html 表格特殊标题 (legend)

<html>
<head>
<mce:style type="text/css"><!--
td
{
width:50;
height:50;
text-align:center;
vertical-align: center;
}
table
{
vertical-align: bottom;
}
legend
{
text-align:center;
}
fieldset
{
width:300; ......

html 滚动条

<html>
<head>
<mce:style type = "text/css"><!--
div
{
overflow-y:scroll;
height:200;
overflow-x:scroll;
width:200;
}

--></mce:style><style type = "text/css" mce_bogus="1"> div
{
ove ......

C#中实现WebBrowser控件的HTML源代码读写

趁周末想折腾一下嵌入ASP.NET的WinForm程序
需要用到WebBrowser控件的HTML源码读写
就把以前的一些代码片断移值到C#下
顺便发个帖子备忘,呵呵
  
思路其实很简单,直接通过document.documentElement.outerHTML
或者使用IPersistStreamInit接口直接对流进行处理
前者我就不废话了,后者实现方法如下
&nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号