是否有将文本直接转化成html的工具?(100分)

  • 主题发起人 主题发起人 PhoenixCry
  • 开始时间 开始时间
P

PhoenixCry

Unregistered / Unconfirmed
GUEST, unregistred user!
对于文本中的不同字符的不同字体要能生成相应的html语言!
 
好象有rtf2html 的工具吧,搜一下。
 
自己编一个嘛!
我正尝试用richedit做.
 
function rtf2sgml (text : string) : string;
{Funktion f?r att konvertera en RTF-rad till SGML-text.}
var
temptext : string;
start : integer;
begin
text := stringreplaceall (text,'&','##amp;');
text := stringreplaceall (text,'##amp','&amp');
text := stringreplaceall (text,'/'+chr(39)+'e5','å');
text := stringreplaceall (text,'/'+chr(39)+'c5','Å');
text := stringreplaceall (text,'/'+chr(39)+'e4','ä');
text := stringreplaceall (text,'/'+chr(39)+'c4','Ä');
text := stringreplaceall (text,'/'+chr(39)+'f6','ö');
text := stringreplaceall (text,'/'+chr(39)+'d6','Ö');
text := stringreplaceall (text,'/'+chr(39)+'e9','é');
text := stringreplaceall (text,'/'+chr(39)+'c9','É');
text := stringreplaceall (text,'/'+chr(39)+'e1','á');
text := stringreplaceall (text,'/'+chr(39)+'c1','Á');
text := stringreplaceall (text,'/'+chr(39)+'e0','à');
text := stringreplaceall (text,'/'+chr(39)+'c0','À');
text := stringreplaceall (text,'/'+chr(39)+'f2','ò');
text := stringreplaceall (text,'/'+chr(39)+'d2','Ò');
text := stringreplaceall (text,'/'+chr(39)+'fc','ü');
text := stringreplaceall (text,'/'+chr(39)+'dc','Ü');
text := stringreplaceall (text,'/'+chr(39)+'a3','£');
text := stringreplaceall (text,'/}','#]#');
text := stringreplaceall (text,'/{','#[#');
text := stringreplaceall (text,'{/rtf1/ansi/deff0/deftab720','');
{Skall alltid tas bort}
text := stringreplaceall (text,'{/fonttbl','');
{Skall alltid tas bort}
text := stringreplaceall (text,'
{/f0/fnil MS Sans Serif;}','');
{Skall alltid tas bort}
text := stringreplaceall (text,'{/f1/fnil/fcharset2 Symbol;}','');
{Skall alltid tas bort}
text := stringreplaceall (text,'{/f2/fswiss/fprq2 System;}}','');
{Skall alltid tas bort}
text := stringreplaceall(text,'{/colortbl/red0/green0/blue0;}','');
{Skall alltid tas bort}
{I version 2.01 av Delphi finns inte /cf0 med i RTF-rutan. Tog d?rf?r bortdet efter /fs16 och la ist?llet en egen tv?tt av /cf0.}
//temptext := hamtastreng (text,'{/rtf1','/deflang');
//text := stringreplace (text,temptext,'');
{H?mta och radera allt fr?n start till deflang}
text := stringreplaceall (text,'/cf0','');
temptext := hamtastreng (text,'/deflang','/pard');
{Plocka fr?n deflang till pard f?r att f? }
text := stringreplace (text,temptext,'');
{oavsett vilken lang det ?r. Norska o svenska ?r olika}
{H?r skall vi plocka bort fs och flera olika siffror beroende p? vilka alternativ vi godk?nner.}
//text := stringreplaceall (text,'/fs16','');{8 punkter}
//text := stringreplaceall (text,'/fs20','');{10 punkter}
{Nu st?dar vi ist?llet bort alla tv?siffriga fontsize.}
while pos ('/fs',text) >0 do
begin
application.processmessages;
start := pos ('/fs',text);
Delete(text,start,5);
end;
text := stringreplaceall (text,'/pard/plain/f0 ','<P>');
text := stringreplaceall (text,'/par /plain/f0/b/ul','</P><MELLIS>');
text := stringreplaceall (text,'/plain/f0/b/ul ','</P><MELLIS>');
text := stringreplaceall (text,'/plain/f0','</MELLIS>');
text := stringreplaceall (text,'/par }','</P>');
text := stringreplaceall (text,'/par ','</P><P>');
text := stringreplaceall (text,'#]#','}');
text := stringreplaceall (text,'#[#','{');
text := stringreplaceall (text,'//','/');
result := text;
end;

--------------------------------------------------------------------------------
 
那岂不是等于自己做一个HTML编辑器?
 
找个做网页的任何一款软件都能搞定。
 
最简单的方法是用OLE啦。WORD这个东西每个人都有吧?把文件调进来再SAVE AS就搞定了,非常简单好用。不仅是文本文件了,象EXCEL啊,图表啊,只要是WORD或者EXCEL可以读进去的,都能自动转换成网页。如果你装了OFFICE2000就更好了,它转换出来的网页还带ASP、图形,绝对跟OFFICE中的效果一模一样!
 
介绍一些源码和控件工具。
<a href="http://www.csdn.net/Delphi/Samples/htmlgrd.zip">之一</a>
<a href="http://www.csdn.net/Delphi/tools/other/hyperpas.zip">之二</a>
<a href="http://vcl.vclxx.com/DELPHI/D32FREE/RJHTMPAR.ZIP">之三</a>
 
工具不太清楚,不过可以用编程的方法实现之...
首先,将txt文件读入某个控件,比如richedit,
然后,用报表形式将其输出位html格式或htm

简单程序如下:
myquickrep.exportfilter:=tqrasciliexportfilter.create('c:/test.thm');
myquickrep.prepare;
myquickrep.exportfilter.free;
 
简单明了的办法:(一分钟搞定)

安装FrontPage98/2000,把你的文本文件用Ctrl+C拷到FrontPage中(Ctrl+V),
注意左下角是在普通的选项,然后你在按HTML选项卡就可转成HTML.

很好用,包括象〈、〉的一样转换,你实验一下就知道了!
 
靠,,直接另存MYWEB.HTM岂不更爽??
 
多人接受答案了。
 
后退
顶部