一個用來畫圖的組件(畫餅圖,橫條圖,各種形狀圖象的組件)

來源:互聯網
上載者:User
餅圖 為什麼說是個好東西了,大家看看下面的介紹就知道了
該組件有兩個版本,一個是註冊版本,一個是非註冊版本
非註冊版本功能:(雖然是非註冊的,但是可以一直使用下去的哦,這也是一個為

什麼我大力推薦的原因之一)
1。可產生JPEG格式的圖形檔案
2。可產生透明的GIF格式的圖形檔案
3。可產生交錯的GIF格式的圖形檔案
4。可以使用兩種方式儲存圖形檔案:一種是直接產生圖形檔案
  另外一種是儲存到數組中然後直接輸出到WWW頁面中
5。可以繪製文本圖形,並且支援安裝在你機器上的任何字型的文本
6。可以匯出和預覽由OLE服務程式產生的文檔,例如MS Word,Excel等等。 
7。可以使用位元影像方式自由的縮放,鏡像,旋轉和剪下圖形
8。可使用本地圖形緩衝
9。可以ZOOM圖片
10。可以擷取任何JPEG, GIF ,BMP格式檔案的詳細資料
11。可以進行Windows抓屏
12。可產生動態GIF
非註冊版本的限制如下:
1。只能夠最多使用8種顏色,不過我認為對大多數人來說根本不算什麼限制的,

呵呵
2。能夠產生的最大圖形尺寸為320x240
如果是註冊版本:
13。可線上修改現有的GIF, JPEG 和 BMP檔案
14。可自訂調色盤
15。可迴圈放映GIF動畫

例子程式:
VBScript的例子:

set obj=CreateObject("shotgraph.image")
size=201
obj.CreateImage size,size,4
obj.SetColor 0,255,255,255
obj.SetColor 1,0,0,0
obj.SetColor 2,255,108,0
obj.SetColor 3,0,0,204
obj.SetBgColor 0
obj.FillRect 0,0,size-1,size-1
obj.SetDrawColor 1
obj.Line size-1,0,0,size-1
obj.SetBgColor 2
obj.Ellipse 5,5,size-6,size-6
obj.SetBgColor 3
obj.Ellipse 5,(size-5)/4,size/2,(size-5)*3/4
obj.GifImage 0,1,"test.gif"
ASP的例子代碼:

Response.ContentType="image/gif"
set obj=Server.CreateObject("shotgraph.image")
size=201
obj.CreateImage size,size,4
obj.SetColor 0,255,255,255
obj.SetColor 1,0,0,0
obj.SetColor 2,255,108,0
obj.SetColor 3,0,0,204
obj.SetBgColor 0
obj.FillRect 0,0,size-1,size-1

obj.SetDrawColor 1
obj.Line size-1,0,0,size-1
obj.SetBgColor 2
obj.Ellipse 5,5,size-6,size-6
obj.SetBgColor 3
obj.Ellipse 5,(size-5)/4,size/2,(size-5)*3/4

img=obj.GifImage(0,1,"")
Response.BinaryWrite img 

那麼如何畫動畫呢,步驟如下:
1.Create一個"shotgraph.image"對象
2.隨便畫點東西把,就看你的創意了
3.調用TrackAdd函數
4.重複2,3步知道你想要的禎數
5.如果想要重複放動畫,調用TrackLoop方法,不過只有註冊版本有此功能
6.調用TrackPlay方法產生這個動化檔案
例子代碼如下:
set obj=CreateObject("shotgraph.image")
xsize=400
ysize=50

obj.CreateImage xsize,ysize,256
obj.InitClipboard xsize,ysize*2
obj.SelectClipboard True
obj.ReadImage "frame1.gif",pal1,0,0
obj.ReadImage "frame2.gif",pal2,0,ysize
obj.BuildPalette 0

obj.Copy 0,0,xsize,ysize,0,0,"SRCCOPY"
obj.TrackAdd -1,0,0,0,0,xsize,ysize,50
obj.Copy 0,0,xsize,ysize,0,ysize,"SRCCOPY"
obj.TrackAdd -1,0,0,0,0,xsize,ysize,50

obj.TrackLoop 0
obj.TrackPlay "frames12.gif"

怎麼畫文本文字呢,呵呵,過程如下:
使用時,請注意FontSmoothing這個屬性:
它是用來定義文字是否防鋸齒的。
0 - 使用系統預設設定
1 - 不防鋸齒
2 - 防鋸齒
代碼如下:

<%
Response.Contenttype="image/gif"
Set g=CreateObject("shotgraph.image")
g.CreateImage 320,200,16
g.SetColor 0,255,255,255
g.SetColor 1,0,0,0
g.SetBgColor 0
g.SetTextColor 1
g.FillRect 0,0,320,200
g.FontSmoothing=1
g.CreateFont "Arial",0,42,0,True,False,False,False
g.TextOut 0,30,"Non-Antialiased"
g.FontSmoothing=2
g.CreateFont "Arial",0,42,0,True,False,False,False
g.TextOut 0,120,"Antialiased"
g.BuildPalette 2
Response.BinaryWrite g.GifImage(-1,0,"")
%>

下載地址:
http://download.proxy.ru/mike/shotgraph/
http://www.geocities.com/SiliconValley/Foothills/9219/shotgraph/
--------------------------
以上摘自 www.Chinaasp.com

通過上面這篇文章,我們可以明白,關鍵是在輸出資料之前,需要顯輸出一個檔案類

型的定義.
這樣瀏覽器就知道你送過來的不是文本而是圖片,或其他的什麼,比如聲音,電影.


Response.Contenttype="image/gif" //輸出檔案類型

.....  //這裡就可以替換成 讀入硬碟圖片檔案位元據

Response.BinaryWrite g.GifImage(-1,0,"") //圖片資料 就可換成寫入你的二
進位資料

...


--------------------------
以上摘自 www.Chinaasp.com

通過上面這篇文章,我們可以明白,關鍵是在輸出資料之前,需要顯輸出一個檔案類
型的定義.
Response.Contenttype="image/gif" //檔案類型
.....
Response.BinaryWrite g.GifImage(-1,0,"") //圖片資料

這樣瀏覽器就知道你送過來的不是文本而是圖片,或其他的什麼,比如聲音,電影.。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。