blog中的代码加亮

yesky,blogjava的编辑器提供插入代码的功能,可以把插入的代码根据语法格式化并加亮,其实他们后台使用的都是Actipro公司的codehighlighter控件实现的(http://www.actiprosoftware.com/Products/DotNet/CodeHighlighter/PasteCode.aspx),这个控件是免费的,下载的控件里提供了例子和帮助,所以编辑器里增加这个功能很简单。既然没有提供,我们只能自己想办法了。可以直接使用上面网址提供的演示功能,把我们的代码拷贝拷进文本框,然后点击“Syntax  Hightlight”,就会给出格式化后的html代码,我们把html代码前后加上<PRE style="BORDER-RIGHT: #c0c0c0 1px solid; BORDER-TOP: #c0c0c0 1px solid; BORDER-LEFT: #c0c0c0 1px solid; BORDER-BOTTOM: #c0c0c0 1px solid; FONT-FAMILY: Courier New, monospace; BACKGROUND-COLOR: #fffef8">和</pre>,然后拷贝到和讯的编辑器(html编辑状态),就可以了。试了一下,编辑器好像不支持换行,可以到http://www.zeali.net/codeHighlighter.php处理一下,加上换行符就可以了,其实这个代码着色器也是连接到actipro公司的网址上处理的,只不过后面又增加了一个处理换行的功能,也很方便:)

给个例子:

 
 
1 public class MyResourceHog : IDisposable
2 {
3   // 已经被处理过的标记
4   private bool _alreadyDisposed = false ;
5   // 终结器。调用虚拟的Dispose方法
6   ~ MyResourceHog()
7  {
8   Dispose( false );
9  }
10
11   // IDisposable的实现
12   // 调用虚拟的Dispose方法。禁止Finalization(终结操作)
13   public void Dispose()
14  {
15   Dispose( true );
16   GC.SuppressFinalize( true );
17  }
18
19   // 虚拟的Dispose方法
20   protected virtual void Dispose( bool isDisposing )
21  {
22    // 不要多次处理
23    if ( _alreadyDisposed )
24     return ;
25    if ( isDisposing )
26   {
27     // TODO: 此处释放受控资源
28   }
29    // TODO: 此处释放非受控资源。设置被处理过标记
30   _alreadyDisposed = true ;
31  }
32 }
33
34

 

codehilighter不支持c和c++,可以用c#来代替。另外还找到一个处理c和c++代码的程序-cstyle(code style)http://www.freewebs.com/littlebob/cstyle.htm,实现的功能如下:

    c_html 将C/C++语言源代码转化成HTML格式的WEB页面 DEV-C++风格
    c_ubb 将C/C++语言源代码转化成UBB码 DEV-C++风格
    vc_html 将C/C++语言源代码转化成HTML格式的WEB页面 VC风格
    vc_ubb 将C/C++语言源代码转化成UBB码 VC风格
    html_html 将html中的html标签变成可视的标签

这个程序也是免费的:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值