1、申 请 I D:夜月人成双
2、个人邮箱:wugong_noone@outlook.com
asp.net中rtf转换html源码。
之前要做这个东西时,在网上找了半天,没找到好用的。然后自己想办法做了一个,中间的转换用了第三方的一个dll,想了解内容的可以使用反编译(推荐【ILSpy】)去翻译的看
不知道算不算精华帖。一直关注吾爱,希望可以申请成功。下面是
[C#] 纯文本查看 复制代码 /// <summary>
/// 数据显示
/// </summary>
public void show()
{
//获取数据库中存放的rtf数据
rtf_Bl bl = new rtf_Bl();
DataTable dt = bl.showrtf_dt();
//转换成Byte
Byte[] rtfbyte = (Byte[])dt.Rows[0]["apprequirement"];
//获取rtf字符串
string rtfstring = Encoding.ASCII.GetString(rtfbyte);
//rft转换html方法
string html = gethtml(rtfstring);
//因为生成的是html,但是我们在页面中不需要显示不需要的东西
string begin = "<body>";
string end = "<div align=\"center\">";
int beginIndex = html.IndexOf(begin) + begin.Length;
int endIndex = html.IndexOf(end);
//此处就获得数据就可以使用了
string resultstr = html.Substring(beginIndex, endIndex - beginIndex);
}
/// <summary>
/// rtf数据转换html方法
/// </summary>
/// <param name="rtfstr">rtf字符串</param>
/// <returns></returns>
public string gethtml(string rtfstr)
{
//引用的类库中的class
SautinSoft.RtfToHtml r = new SautinSoft.RtfToHtml();
r.OutputFormat = SautinSoft.eOutputFormat.HTML_401;
//指定这个属性“true”,图片流保存为HTML内部图片
r.ImageStyle.IncludeImageInHtml = false;
r.ImageStyle.ImageFolder = Server.MapPath("");
r.ImageStyle.ImageSubFolder = "images";
r.ImageStyle.ImageFileName = "picture";
string html = "";
string rtf = rtfstr;
html = r.ConvertString(rtf);
return html;
}
一下需要注意的地方我会用图片来描述:
file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\727266860\QQ\WinTemp\RichOle\MHW`JG4Q)J1G028}P_52G92.png
SautinSoft.RtfToHtml.rar
(103.76 KB, 下载次数: 23)
|