原創|其它|編輯:郝浩|2012-07-09 01:19:00.000|閱讀 1239 次
概述:本教程概述了導出不同格式的圖表以及導入TeeChart中文版自帶的 .ten 格式的圖表模板。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
本教程概述了導出不同格式的圖表以及導入TeeChart中文版自帶的 .ten 格式的圖表模板。
支持的格式
TeeChart所支持的導出格式。所有格式都可復制到任何一個文件夾、剪貼板或數據流中。
圖片格式
數據格式
其他格式
Ten格式是一種靈活的格式,它可以存儲圖表屬性信息和圖表數據。這種格式的文件不僅小(依數據而定),而且是使用網絡來實時更新圖表客戶端的理想選擇。
TEN (TeeChart): TemplateExport 類
導出實例
導出一個文件的功能是非常簡單實用的。在大多數情況下,你只需要定義一個目標文件名。
[C#]
private void button1_Click(object sender, System.EventArgs e)
saveFileDialog1.Filter = "Images (*.bmp)|*.bmp|Images(*.jpg)|*.jpg|Images(*.wmf)|*.wmf|Images(*.emf)|*.emf|Images (*.gif)|*.gif|Images (*.png)|*.png|Images (*.tiff)|*.tiff";
saveFileDialog1.ShowDialog();
if(saveFileDialog1.FileName != "")
switch(saveFileDialog1.FilterIndex)
case 1:
tChart1.Export.Image.Bitmap.Save(saveFileDialog1.FileName);
break;
case 2:
tChart1.Export.Image.JPEG.Save(saveFileDialog1.FileName);
break;
case 3:
tChart1.Export.Image.Metafile.Enhanced = false;
tChart1.Export.Image.Metafile.Save(saveFileDialog1.FileName);
break;
case 4:
tChart1.Export.Image.Metafile.Enhanced = true;
tChart1.Export.Image.Metafile.Save(saveFileDialog1.FileName);
break;
case 5:
tChart1.Export.Image.GIF.Save(saveFileDialog1.FileName);
break;
case 6:
tChart1.Export.Image.PNG.Save(saveFileDialog1.FileName);
break;
case 7:
tChart1.Export.Image.TIFF.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
SaveFileDialog1.Filter = "Images (*.bmp)|*.bmp|Images(*.jpg)|*.jpg|Images(*.wmf)|*.wmf|Images(*.emf)|*.emf|Images (*.gif)|*.gif|Images (*.png)|*.png|Images (*.tiff)|*.tiff"
SaveFileDialog1.ShowDialog()
If SaveFileDialog1.FileName <> "" Then
Select Case SaveFileDialog1.FilterIndex
Case 1
TChart1.Export.Image.Bitmap.Save(SaveFileDialog1.FileName)
Case 2
TChart1.Export.Image.JPEG.Save(SaveFileDialog1.FileName)
Case 3
TChart1.Export.Image.Metafile.Enhanced = False
TChart1.Export.Image.Metafile.Save(SaveFileDialog1.FileName)
Case 4
TChart1.Export.Image.Metafile.Enhanced = True
TChart1.Export.Image.Metafile.Save(SaveFileDialog1.FileName)
Case 5
TChart1.Export.Image.GIF.Save(SaveFileDialog1.FileName)
Case 6
TChart1.Export.Image.PNG.Save(SaveFileDialog1.FileName)
Case 7
TChart1.Export.Image.TIFF.Save(SaveFileDialog1.FileName)
End Select
End If
End Sub
BMP
導出BMP文件并添加colours 和 size兩個參數
例如
[C#]
case 1:
Steema.TeeChart.Export.BitmapFormat bitMap = tChart1.Export.Image.Bitmap;
bitMap.Height = 500;
bitMap.Width = 700;
bitMap.Monochrome = true;
bitMap.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 1
Dim BitMap As Steema.TeeChart.Export.BitmapFormat = TChart1.Export.Image.Bitmap
BitMap.Height = 500
BitMap.Width = 700
BitMap.Monochrome = True
BitMap.Save(SaveFileDialog1.FileName)
JPEG
現在導出JPEG文件,所有的SaveToFile和SaveToStream都有speed和quality兩個參數。
例如
[C#]
case 2:
Steema.TeeChart.Export.JPEGFormat jPEG = tChart1.Export.Image.JPEG;
jPEG.GrayScale = true;
jPEG.Height = 500;
jPEG.Width = 700;
jPEG.Quality = 100;
jPEG.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 2
Dim JPEGf As Steema.TeeChart.Export.JPEGFormat = TChart1.Export.Image.JPEG
JPEGf.Height = 500
JPEGf.Width = 700
JPEGf.GrayScale = True
JPEGf.Quality = 100
JPEGf.Save(SaveFileDialog1.FileName)
Quality的值(1-100)會使文件變大,從而導致網絡傳輸速度變慢?雖然圖片質量會更好!所以您需要找到一個適合應用程序的最佳平衡點。
WMF & EMF
將“Enhanced”設為Ture就可輕松地創建增強型元文件。
例如
[C#]
case 3:
Steema.TeeChart.Export.MetafileFormat metaFile = tChart1.Export.Image.Metafile;
metaFile.Height = 500;
metaFile.Width = 700;
metaFile.Enhanced = false;
metaFile.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 3
Dim MetaFile As Steema.TeeChart.Export.MetafileFormat = TChart1.Export.Image.Metafile
MetaFile.Height = 500
MetaFile.Width = 700
MetaFile.Enhanced = False
MetaFile.Save(SaveFileDialog1.FileName)
GIF
由于Micosoft 的.Net Framework 類庫的運用,TeeChart .Net可以支持導出GIF格式的位圖,特別System.Drawing.Imaging Namespace中的那些類。 時至今日對于開發者來說,他們依然不清楚在應用程序中使用這些類,是否需要從Unisys獲得GIF專利的授權許可。如果還有其他疑問,我們建議您訪問 Unisys Website.
例如
[C#]
case 5:
Steema.TeeChart.Export.GIFFormat gIF = tChart1.Export.Image.GIF;
gIF.Height = 500;
gIF.Width = 700;
gIF.ColorReduction = Steema.TeeChart.Export.GIFFormat.GIFColorReduction.GrayScale;
gIF.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 5
Dim GIF As Steema.TeeChart.Export.GIFFormat = TChart1.Export.Image.GIF
GIF.Height = 500
GIF.Width = 700
GIF.ColorReduction = Steema.TeeChart.Export.GIFFormat.GIFColorReduction.GrayScale
GIF.Save(SaveFileDialog1.FileName)
PNG
PNG格式延續了GIF格式的很多優點,但是也提供了一些GIF所沒有的功能。PNG在GIF的基礎上改進了它的性能,使它能夠更好的顯示圖像;它就像從通過網絡傳輸的圖片一樣,顯示得越來越好。
例如
[C#]
case 6:
Steema.TeeChart.Export.PNGFormat pNG = tChart1.Export.Image.PNG;
pNG.Compression = 100;
pNG.GrayScale = true;
pNG.Height = 500;
pNG.Width = 700;
pNG.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 6
Dim PNGf As Steema.TeeChart.Export.PNGFormat = TChart1.Export.Image.PNG
PNGf.Compression = 100
PNGf.GrayScale = True
PNGf.Height = 500
PNGf.Width = 700
PNGf.Save(SaveFileDialog1.FileName)
TIFF
TIFF是一種靈活并可進行擴展的格式,它支持多種平臺和圖像處理程序。
例如
[C#]
case 7:
Steema.TeeChart.Export.TIFFFormat tIFF = tChart1.Export.Image.TIFF;
tIFF.Compression = Steema.TeeChart.Export.TIFFFormat.TIFFCompression.LZW;
tIFF.Height = 500;
tIFF.Width = 700;
tIFF.Save(saveFileDialog1.FileName);
break;
[VB.Net]
Case 7
Dim TIFF As Steema.TeeChart.Export.TIFFFormat = TChart1.Export.Image.TIFF
TIFF.Compression = Steema.TeeChart.Export.TIFFFormat.TIFFCompression.LZW
TIFF.Height = 500
TIFF.Width = 700
TIFF.Save(SaveFileDialog1.FileName)
Adobe Flex/Flash/SWF
現在TeeChart還可以導出Adobe Flex腳本文件(*.mxml),然后可以通過Flex免費編譯器(mxmlc.exe) 進行編譯后創建一個*swf(Flash)文件。關于如何在運行時實現上述功能,以及如何添加動畫到已導出圖表的綜合實例,可以在'Welcome !\New in Canvas\Flash "CompactCharts"'下的功能演示中找到。
四種數據導出格式:
以上的控件與圖表Series有關系,他們可以導出數據到任何文件,數據流或是剪貼板。下面的實例是從圖表Series中將數據導出到HTML表格中:
[C#]
private void Form1_Load(object sender, System.EventArgs e)
Random rnd = new Random();
char c = new char();
for(int i = 0; i < 10; ++i)
c = Convert.ToChar(65 + i);
bar1.Add(Convert.ToDouble(i),rnd.Next(100),c.ToString(),Color.Red);
Steema.TeeChart.Export.DataExport dataExport = new Steema.TeeChart.Export.DataExport(tChart1.Chart);
dataExport.HTML.IncludeHeader = true;
dataExport.HTML.IncludeIndex = true;
dataExport.HTML.IncludeLabels = true;
dataExport.HTML.Series = bar1;
dataExport.HTML.Save(@"C:.htm");
[VB.Net]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim C As New Char()
Dim i As New Integer()
For i = 0 To 10
C = Convert.ToChar(65 + i)
Bar1.Add(Convert.ToDouble(i), Rnd() * 100, C.ToString(), Color.Red)
Next
Dim DataExport As New Steema.TeeChart.Export.DataExport(TChart1.Chart)
DataExport.HTML.IncludeHeader = True
DataExport.HTML.IncludeIndex = True
DataExport.HTML.IncludeLabels = True
DataExport.HTML.Series = Bar1
DataExport.HTML.Save("C:.htm")
End Sub
以上輸出的隨機數據集如下所示:
<table border="1">
<tr><td>Index</td><td>Text</td><td>bar1</td></tr>
<tr><td>0</td><td>A</td><td>69</td></tr>
<tr><td>1</td><td>B</td><td>93</td></tr>
<tr><td>2</td><td>C</td><td>18</td></tr>
<tr><td>3</td><td>D</td><td>88</td></tr>
<tr><td>4</td><td>E</td><td>42</td></tr>
<tr><td>5</td><td>F</td><td>33</td></tr>
<tr><td>6</td><td>G</td><td>58</td></tr>
<tr><td>7</td><td>H</td><td>43</td></tr>
<tr><td>8</td><td>I</td><td>63</td></tr>
<tr><td>9</td><td>J</td><td>49</td></tr>
</table>
Ten 文件
Ten文件是TeeChart自帶的用來保存圖表和數據的模板格式。
修改的圖表屬性將保存在模板中,當將模板導入到一個新的圖表時它們就會重現。
優點:
例如
[C#]
private void button1_Click(object sender, System.EventArgs e)
saveFileDialog1.Filter = "TenFile (.ten)|*.ten";
saveFileDialog1.ShowDialog();
if(saveFileDialog1.FileName != "")
tChart1.Export.Template.IncludeData = true;
tChart1.Export.Template.Save(saveFileDialog1.FileName);
[VB.Net]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
SaveFileDialog1.Filter = "TenFile (.ten)|*.ten"
SaveFileDialog1.ShowDialog()
If SaveFileDialog1.FileName <> "" Then
TChart1.Export.Template.IncludeData = True
TChart1.Export.Template.Save(SaveFileDialog1.FileName)
End If
End Sub
將XML導入到TeeChart
從TextBox導入XML.
例如
[C#]
protected override void button1_Click(object sender, System.EventArgs e)
tChart1.Series.RemoveAllSeries();
Steema.TeeChart.Styles.Points points1 = new Stee ma.TeeChart.Styles.Points(tChart1.Chart);
points1.Title = "Points Series";
xmlSource1.Series = points1;
xmlSource1.SeriesNode = "Points Series";
xmlSource1.Load(textBox2.Text);
tChart1.Refresh();
從URL導入XML .
例如
[C#]
protected override void button2_Click(object sender, System.EventArgs e)
tChart1.Series.RemoveAllSeries();
xmlSource1.Chart = tChart1.Chart;
xmlSource1.Load("//www.steema.com/SampleNETData.xml");
tChart1.Refresh();
導入Ten 格式文件
從本地文件源或http數據源中導入一個已保存的Tee文件
導入實例
例如
從文件中導入
[C#]
tChart1.Import.Template.LoadFileDialog();
[VB.Net]
TChart1.Import.Template.LoadFileDialog()
URL..
[C#]
tChart1.Import.Template.FromURL("//www.berneda.com/demo.ten");
[VB.Net]
TChart1.Import.Template.FromURL("//www.berneda.com/demo.ten")
Stream..
[C#]
System.IO.MemoryStream tenStream = new System.IO.MemoryStream();
tChart1.Export.Template.Save(tenStream);
tChart2.Import.Template.Load(tenStream);
[VB.Net]
Dim TenStream As New System.IO.MemoryStream()
TChart1.Export.Template.Save(TenStream)
TChart2.Import.Template.Load(TenStream)
導入圖表會引起效果的改變
由于.ten文件只保存標準圖表定義的改變,所以目標圖表的屬性變化與被導入的圖表無關,而是由原始圖表來執行。這是一個圖表頁腳的實例。如果.ten文件沒有設定頁腳和目標圖表,那么頁腳將會在圖表導入后才顯示。這將是一個理想的結果。如果您期望在導入圖表時引起變化,它能在圖表導出后逆向影響所期望的結果,那么您就能創建一個新圖表例子,如下所示:
[C#]
private void Form1_Load(object sender, System.EventArgs e)
Bar bar1 = new Bar(tChart1.Chart);
bar1.FillSampleValues(20);
private void button1_Click(object sender, System.EventArgs e)
saveFileDialog1.Filter = "TenFile (.ten)|*.ten";
saveFileDialog1.ShowDialog();
if(saveFileDialog1.FileName != "")
tChart1.Export.Template.IncludeData = true;
tChart1.Export.Template.Save(saveFileDialog1.FileName);
private void button2_Click(object sender, System.EventArgs e)
tChart1.Dispose();
tChart1 = new Steema.TeeChart.TChart();
ini_Chart();
private void ini_Chart()
this.tChart1.Header.Lines = new string[] "TeeChart";
this.tChart1.Location = new System.Drawing.Point(24, 24);
this.tChart1.Name = "tChart1";
this.tChart1.Size = new System.Drawing.Size(400, 240);
this.tChart1.TabIndex = 5;
this.Controls.AddRange(new System.Windows.Forms.Control[] this.tChart1);
private void button3_Click(object sender, System.EventArgs e)
tChart1.Import.Template.LoadFileDialog();
[VB.Net]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Bar1 As New Steema.TeeChart.Styles.Bar(TChart1.Chart)
Bar1.FillSampleValues(20)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
SaveFileDialog1.Filter = "TenFile (.ten)|*.ten"
SaveFileDialog1.ShowDialog()
If Not SaveFileDialog1.FileName = "" Then
TChart1.Export.Template.IncludeData = True
TChart1.Export.Template.Save(SaveFileDialog1.FileName)
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TChart1.Dispose()
TChart1 = New Steema.TeeChart.TChart()
Ini_Chart()
End Sub
Private Sub Ini_Chart()
Me.TChart1.Header.Lines = New String() "TeeChart"
Me.TChart1.Location = New System.Drawing.Point(16, 16)
Me.TChart1.Name = "TChart1"
Me.TChart1.Size = New System.Drawing.Size(400, 296)
Me.TChart1.TabIndex = 3
Me.Controls.AddRange(New System.Windows.Forms.Control() Me.TChart1)
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
TChart1.Import.Template.LoadFileDialog()
End Sub
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網