使用CopySourceAsHtml+CSS, 打造Dflying Chen博客上的源代码样式

本文介绍了一款VS2005插件CopySourceAsHtml的优化过程,解决了其在中文版VS2005上存在的问题,并新增了相邻行背景色设置等功能。
一款很有趣的开源VS2005插件:CopySourceAsHtml 看到 CopySourceAsHtml , 安装发现中文的VS2005会出现问题, 还有, 它是开源的, 在 修正 CopySourceAsHTML 插件无法用于中文 VS2005 的Bug 中可以找的解决方法,.
我自己也修改了一些, 加上了相邻行背景色可设置,
并做一些自己觉得需要的修改, 我修改后的DLL可在此下载: CopySourceAsHtml.dll .


添加样式表:  其中.cf的样式来自 Dflying Chen 老大的博客.

样式示例:
/*  CopySourceAsHtml Style  */
.cf 
{  
    font-family
:  consolas, "Courier New", courier, monospace ;
    font-size
:  1.2em ;
    color
:  black ;
    background-color
:  #fff ;
    line-height
:  1em ;
    
/* white-space: pre; */
 
}
.cf p.cl 
{  margin :  0 ;  padding :  0 ;   }   /* 普通行 */
.cf p.cl_alt 
{  margin :  0 ;  padding :  0 ;  background-color :  #f4f4f4 ; }   /* 相邻行 */
.cln 
{  color :  #2b91af ;   }   /* 行号 */
.cb_green 
{  color :  green ;   }   /* 按颜色分 */
.cb_blue 
{  color :  blue ;   }
.cb_2b91af 
{  color :  #2b91af ;   }
.cb_a31515 
{  color :  #a31515 ;   }
.cb_red 
{  color :  red ;   }


示例:
不带行号:

        public static void SetHtml(string html)

        {

 

            DataObject data;

 

            data = new DataObject();

            data.SetData(DataFormats.Text, true, html);

            //data.SetData(DataFormats.UnicodeText, true, html);

            data.SetData(DataFormats.Html, true, EncodeHtml(html));

            //MessageBox.Show(data.GetText(TextDataFormat.Html));

            System.Windows.Forms.Clipboard.SetDataObject(data, true);

 

        }



带行号:

   34         public static void SetHtml(string html)

   35         {

   36 

   37             DataObject data;

   38 

   39             data = new DataObject();

   40             data.SetData(DataFormats.Text, true, html);

   41             //data.SetData(DataFormats.UnicodeText, true, html);

   42             data.SetData(DataFormats.Html, true, EncodeHtml(html));

   43             //MessageBox.Show(data.GetText(TextDataFormat.Html));

   44             System.Windows.Forms.Clipboard.SetDataObject(data, true);

   45 

   46         }



希望Dflying Chen能让我抄袭一下他的样式.
:)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值