A
agaric
Unregistered / Unconfirmed
GUEST, unregistred user!
本人最近在做的项目中需要用到xsl转换xml成html显示在webbrowser控件中,在试用过程中遇到了几个问题。1、我用的是webbrowser.document.write(htmlstr)的方法写入html字符串,但这种方法只能写入一次,再写就写不进去了。我只能删掉webbrowser控件再创建一次。但这个办法有点歪,不知道问题出在哪里。每次写之前,我都用XmlBrowser.Navigate ("about:blank"); 初始化了的 。2、还有一种方法是load一个流,但这个办法会出现中文显示乱码的问题,应该是html编码的问题。但我对html本身并不熟悉,不知道如何解决。3、xml的转换我用的是xml.transfromnode(xsldoc)这种办法。转换的过程不知道能不能设置一些参数如html编码,如果能设置我估计就能解决问题2。4、转换后的html包含些img,img的src指向的是exe目录下的一些图片。我记得最开始我可以只写个相对路径,html显示的时候会自动解释成“file:///c:/xxx/xxx.jpg”这样的路径,显示就会对了。但后来不不知道怎么回事webbrowser控件无法解释这些路径了,在控件内查看图片的属性显示为“about:blankxxx/xxx.jpg”。而这个时候html的源文件内路径又是对的“xxx/xxx.jpg”,把这个源文件拷贝出来放在合适的位置,又能显示图片了。图片的属性又是“file:///c:/xxx/xx.jpg”,不知道为什么。5、接上一个问题,如果我直接写一个绝对地址到html里面,如“<i m g src="c:/xxx/xxx.jpg">”,英文没问题,中文地址的话就会显示成乱码(src="c:/%232%23d$235d%2356%23345%"这种)。这样的话,图片又无法显示了。说到底,也就两个问题:一是write的时候为什么我只能写入一次,二是中文的问题。请各位赐教。我现在在家,没delphi和代码,内容都是随记性写的,可能有写得不对的地方,周一如果有必要我会写更详细点的。