这些天来研究XML的各类应用。前天花了近一天的时间来研究SVG图形文件格式。发现这个规范的确很好,如果研究好了,以后就应用在项目上,应该很酷的。
不过试验的时候,老是中文无法显示,搞得我灰头灰脸的。都怀疑我是不是弱智了。
按以前处理xml文件的经验,我先把语言编码加入SVG。呵呵,这里犯了一个错误,因此我的xmlWriter认为不是良好格式文档。原来是顺序声明错误啦。
<?xml version="1.0" standalone="no" encodeing="GB2312" ?>,能看出来哪儿错了吗,原来应当写成
<?xml version="1.0"
encodeing="GB2312" standalone="no" ?>,晕,没细看标准的代价,害得我在网上查来查去。
但是这样还是不能显示中文,再晕~~~~~~~~~~,再去网上查~~~~~~~~,哈哈,原来有人也遇到过这个问题哟,网上牛人蛮多呀,前辈哟,看看eureka的心得(
http://www.ee-studio.com/drupal/node/447/print):
好多SVG编辑器都有不能正常支持中文,后来自己手工创建SVG文件,却也不能在浏览器插件里正常显示。还以为是插件问题(如adobe svg viewer和corel svg viewer等),象我用inkscape,就能很好的处理中文,但却不能在浏览器里正常显示!不知为什么,还真以为插件问题。查看svg viewer的技术规范,都说是支持utf-8的,那是什么问题呢?难道是文字编码问题,后来几经测试,用各种编码及encoding头,还是不对劲。
后来我好不容易总算琢磨出问题所在,原来你必须给中文加上中文字体。看来adbobe svg viewer和corel svg viewer缺省都没有带支持某种中文字体的,不象inkscape,能正常显示中文。因此,在这种情况下,给中文加上某种字体的样式,就可以正常显示而不是一些框框了,包括从W3C来的一些SVG中文幻灯片,给它加上中文某中字体的样式才行!
不过我用的编辑器里,webdraw 和 xstudio还是不支持中文的!不能很好的处理,只有inkscape,能很好的支持中文。但它不带有原生的SVG代码编辑,其xml editor是对节点进行编辑的,不能对原文件进行编辑。呵呵,事物总是不断发展吧。
哈哈,这不正是我要的吗,试试去喽。感谢eureka!