字符集问题
不知是XSL规则限制,还是XslCompiledTransform支持不好,HTML部分加上下面这段就直接在Load时抛异常
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
后来发现,不加也会自动生成,但字符集是utf-8,就算在xml里设成unicode也没用
想用gb2312的话可以参考这里:http://topic.csdn.net/t/20061023/15/5102574.html
另一个问题是拼音,从词霸里拷出来,在EditPlus下存成ANSI是没问题的,但XslCompiledTransform转换的时候就挂了,后来改存utf-8或者unicode就可以了。
XSL问题
页面元素数是定的情况下,没有必要用xsl:for-each,后来发现原来xsl:template match里就是定义这个的
具体语法参见:http://www.xslt.org.cn/html/grammars/20070804/xsl_template_he_xsl_apply_templates_43.html
IMG问题
没尾巴的IMG好恶心,XSLT两种写属性的办法都不能直接用,尤其是AVT{}的方法,居然还要加个/,ft
具体方法在这里:http://topic.csdn.net/t/20020919/16/1037393.html
浏览器问题
感觉转换好的HTML没必要写成临时文件,但写到Stream里又无法直接放到浏览器里,后来找到了用字符串的方法:
http://dotnet.aspx.cc/article/651cb7ee-2a14-4473-58e4-4a38e4cf6d4b/read.aspx
但直接写浏览器的DocumentText的话,IMG的src路径就不对了,结果貌似是只能写临时文件了。
C#取路径的方法在这里:http://hi.baidu.com/crp8/blog/item/cf09361faa8ca0cba78669f5.html