今天在Jesse Liberty的博客看到关于Silverlight and SVG的讨论,比较有趣,简单的译了一下。
在过去的两个星期里,我多达三次收到了下面这个问题(在不同的论坛),所以我要借这个机会在这里张贴一下,并阐述我的观点。
问题:…我得知微软已经支持SVG,这意味着将不再需要silverlight,难道silverlight只是为保护IE而对SVG进行的升级?
我不知道如何开始回答这样的问题。如果Silverlight和SVG是同等意义上的技术, 这可能会产生一个争论并且因此受益,但是我相信他们真的完全不同,应用于不同的目的。Silverlight是一个表现层技术,利用.NET工具开发应用程序。我想你会发现Silverlight的吸引力,实际上它很强大,几个星期后,当我们发布Silverlight2.0,它将变得更为强大。
我的意思不是回避你的问题,然而它恰恰不是我所做的。我致力于帮助他人学习和使用Silverlight,不是在被认为必须二选一的技术中为它辩护。
主题跟贴
#1
仅仅是他拿SVG与Silverlight对比就可以看出,他完全不知Silverlight到底是什么。
这也带给我一个问题,难道他明白SVG是什么嘛?
如果我们把它降到Xaml的层面也许不错,那我们讨论,但是把象SVG一样简单的技术与silverlight比较,嘘嘘。
#2
一个好友在私人信件里谈到了几点,总结如下
*SVG是可放缩的矢量图形。它是构建图形的语言,然而Silverlight是关于创建应用程序的。
*Silverlight是WPF的子集,这就是为什么它使用XAML.而开发两者不是为了取代SVG的。
名词解释
SVG
SVG(Scalable Vector Graphics)是W3C(World Wide Web ConSor—tium国际互联网标准组织)在2000年8月制定的一种新的二维矢量图形格式,也是规范中的网络矢量图形标准。由于W3C联盟关于SVG的开发工作组的成员都是一些知名厂商, 如Adobe、苹果、Aut0De sk、Bit Fla sh、Corel、惠普、IBM、ILOG、INSO、Macromedia、微软、Netscape、OASIS、Open Text、Quark、RAL(C C LRC)、S un、V i S i 0、施乐等,所以SVG不是一个私有格式,而是一个开放的标准。也就是说,它并不属于任何个体的专利,而是一个通过协作、共同开发的工业标准。
XAML
XAML是eXtensible Application Markup Language的英文缩写,它是微软公司为构建应用程序WPF/Silverlight用户界面而创建的一种新的描述性语言。
etc. 使用Expression Design可以将SVG转换为XAML。XAML不同于SVG,按照W3C的定义,SVG是“二维图形平台,包括两部分:基于XML的文件格式和为图形编程提供支持的可编程API”。然而XAML是基于XML的文件格式,不是API。XAML也支持譬如3D和控件,SVG却不支持这些。