Asp.net生成工作流、审批流的解决方案(asp.net workflow svg)
公司的上一個(gè)項(xiàng)目需要自定義工作流和審批流,那就需要一個(gè)可視化的定義工作流和審批流的工具,找了很多都不太適合我們的項(xiàng)目,項(xiàng)目是用Asp.net開發(fā),需要在網(wǎng)頁里實(shí)現(xiàn)工作流的自定義,說白了就是寫一個(gè)程序,可以生成形如1-2-4-5或者小明-小花-小張等等這種字符串。后來偶然發(fā)現(xiàn)了SVG,覺得它可以勝任這種工作,就開始了SVG的研究。
? svg是一種矢量圖形格式,下面摘抄一段svg中國對(duì)它的介紹:
SVG是一種基于XML 的用來描述二維矢量圖形和矢量/點(diǎn)陣混合圖形的置標(biāo)語言,其全稱是可擴(kuò)展矢量圖形規(guī)范(Scalable Vector Graphics)。其中,"可擴(kuò)展"(scalable)在圖形圖像技術(shù)上指的是它不局限于一個(gè)固定的分辨率和大小,譬如可以在不同分辨率的屏幕上以相同的大小顯示,也可以在同一個(gè)網(wǎng)頁中以不同的大小或觀全局或觀細(xì)節(jié);而在網(wǎng)絡(luò)技術(shù)上指的是這一規(guī)范能夠與其它規(guī)范相融合,從而滿足更廣泛的用戶需求,適合于更廣泛的應(yīng)用方式。"矢量"(vector)是指規(guī)范中描述了直線、曲線、形狀等幾何圖形,而無須象PNG、JPEG等圖像格式那樣逐象素進(jìn)行描述,這使得集成了SVG的XML文檔更小,下載速度也大大提高。"圖形"(graphics)是指它提供了對(duì)矢量和矢量/柵格混合圖形的描述,填補(bǔ)了大多數(shù)基于XML的置標(biāo)語言規(guī)范對(duì)復(fù)雜圖形描述的空白。
SVG規(guī)范定義了SVG的特征、語法和顯示效果,包括模塊化的XML命名空間(namespace)和SVG文檔對(duì)象模型(DOM)。在以前的草案中,僅為SVG定義了一個(gè)DTD,這個(gè)DTD支持樣式單的引用。但這樣一來,SVG就不再是一個(gè)自定義的全包容的語言規(guī)范,而需要瀏覽工具額外具有對(duì)樣式單文件的處理能力。出于這種考慮,在新近出臺(tái)的SVG的第八個(gè)草案中,為SVG提供了兩種不同的形式,即樣式化SVG和交換型SVG,它們各自有不同的DTD及MIME類型。樣式化SVG允許對(duì)圖形對(duì)象進(jìn)行樣式添加,它可以通過引用外部樣式文件、在文件頭中預(yù)先進(jìn)行樣式聲明和通過屬性為元素定義樣式三種方式使用樣式單,是SVG用于網(wǎng)絡(luò)環(huán)境的推薦存儲(chǔ)格式。而交換型SVG取消了對(duì)樣式單的支持,完全使用元素屬性描述各個(gè)圖形對(duì)象的顯示效果。在未來的網(wǎng)絡(luò)傳輸中,交換型SVG將會(huì)充當(dāng)現(xiàn)在印刷業(yè)廣泛使用的圖形格式--EPS格式的網(wǎng)絡(luò)版。并且,由于所有顯示信息都封裝到XML的屬性中,交換型SVG還可以作為XSLT轉(zhuǎn)換后所得到的結(jié)果文件格式,廣泛應(yīng)用于XML文檔顯示效果的描述中。
SVG的繪圖可以通過動(dòng)態(tài)和交互式方式進(jìn)行,在實(shí)際操作中,則是以嵌入方式或腳本方式來實(shí)現(xiàn)的。SVG不僅使用Xlink和Xpointer來提供超鏈接功能,還定義了豐富的事件,這些事件可以應(yīng)用于所有的圖形對(duì)象。由于SVG支持腳本語言(script),高級(jí)網(wǎng)頁制作者僅須進(jìn)行簡單的Script編程,訪問SVG DOM的元素和屬性,即可響應(yīng)特定的事件,從而提高了SVG的動(dòng)態(tài)和交互性能。這使得SVG無論在顯示效果還是動(dòng)態(tài)交互上都不遜于當(dāng)前在互聯(lián)網(wǎng)上獨(dú)領(lǐng)風(fēng)騷的FLASH。而且,SVG除了單獨(dú)使用外,還可以在XML文件中作為命名空間引入,或者用作HTML文件中的特殊對(duì)象。同樣,SVG作為一種基于XML的語言規(guī)范,也具有XML的可擴(kuò)展性,可以在SVG文件中引入其它置標(biāo)語言的命名空間。這些特性使得SVG在互聯(lián)網(wǎng)上將暢通無阻,比起采用二進(jìn)制文件格式不能與其它網(wǎng)頁語言兼容的FLASH更勝一籌。
? 個(gè)人認(rèn)為最好的svg學(xué)習(xí)的地方是中國xml論壇:http://www.svg.net.cn
推薦其他幾個(gè)鏈接:
http://www.svg.net.cn
http://svglbc.datenverdrahten.de/?doc=drawshapes???SVG資料
http://www.gritechnologies.com/papers/gps_tracking_with_svg/index.html??動(dòng)態(tài)SVG
http://www.svgmaker.com/??SVG例子
http://www.w3schools.com/svg/svg_examples.asp
http://www.kevlindev.com/tutorials/basics/
http://www.kevlindev.com/tutorials/basics/filters/feColorMatrix/index.htm?
http://www.xml.com/pub/a/2004/04/07/svgtype.html
http://www.html.it/svg/
http://pilat.free.fr/english/index.htm
http://www.s-v-g.net/
http://www.svgelves.com/
http://a.1asphost.com/svggames/用SVG寫的游戲
http://learnsvg.com/
? 下面是我做的一個(gè)自定義審批流的svg程序,主要功能就是生成一個(gè)用戶流(比如用戶a-用戶b-用戶c),為后來的審批流程提供一個(gè)先后順序,界面如下:
asp.net實(shí)現(xiàn)的工作流、審批流源程序從這里下載。
IE瀏覽器需要安裝svgViewer才能瀏覽SVG(ms不厚道啊),Adobe svg瀏覽器從這里下載,或者搜索adobe svg viewer3.0。
轉(zhuǎn)載于:https://www.cnblogs.com/jazzka702/archive/2013/05/02/3054788.html
總結(jié)
以上是生活随笔為你收集整理的Asp.net生成工作流、审批流的解决方案(asp.net workflow svg)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VS 2010 使用项目 无法链接 D
- 下一篇: 项目中用到的设计模式(持续更新)