原創(chuàng)|其它|編輯:郝浩|2012-07-05 21:47:27.000|閱讀 916 次
概述:上一篇文章我們主要介紹TeeChart Pro .Net 的3D圖表顯示模式,本文主要介紹如何打印Teechart圖表。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
上一篇文章我們主要介紹TeeChart Pro .Net 的3D圖表顯示模式,本文主要介紹如何打印Teechart圖表。
TeeChart Pro提供了標(biāo)準(zhǔn)打印方法,使其按原本的樣式打印Onscreen圖表。
簡(jiǎn)單打印指令
運(yùn)用Print方法打印圖表。這個(gè)方法可以像屏幕上顯示的一樣將圖表打印出來(lái):
[C#]
tChart1.Printer.Print();
[VB.Net]
TChart1.Printer.Print()
打印方向
在默認(rèn)時(shí)即使沒(méi)有定義Print方法,您也可以通過(guò)設(shè)定布爾型的 landscape參數(shù)來(lái)實(shí)現(xiàn)橫向與縱向打印。在打印完成后,Orientation的默認(rèn)值將會(huì)再一次生效。Orientation默認(rèn)值可通過(guò)設(shè)定Landscape屬性(設(shè)為true為橫向,false為縱向)來(lái)進(jìn)行修改:
[C#]
tChart1.Printer.Landscape = true;
tChart1.Printer.Print();
[VB.Net]
TChart1.Printer.Landscape = True
TChart1.Printer.Print()
打印預(yù)覽
PrintPreview窗口將會(huì)顯示圖表打印出來(lái)的樣式。您可以在Print Preview窗口中修改打印參數(shù)。調(diào)用PrintPreview的方法如下所示:
[C#]
tChart1.Printer.Preview();
[VB.Net]
TChart1.Printer.Preview()
黑白打印
在使用黑白打印機(jī)進(jìn)行打印時(shí),您應(yīng)注意將圖表的顏色轉(zhuǎn)換為黑白色調(diào)可易于識(shí)別。為了方便,您可以在圖表Series上添加格式刷以便在打印時(shí)更易于區(qū)分Series。
您也可以通過(guò)設(shè)定Grayscale屬性將黑白報(bào)表打印為彩色報(bào)表。
[C#]
tChart1.Printer.Grayscale = true;
tChart1.Printer.Print(true);
[VB.Net]
TChart1.Printer.Grayscale = True
TChart1.Printer.Print(True)
打印多頁(yè)報(bào)表
使用BeginPrint() 和EndPrint()將報(bào)表傳送到打印機(jī)可避免溢出。BeginPrint()和EndPrint()是用來(lái)開(kāi)始和結(jié)束打印機(jī)的工作。多張圖表可以在同一頁(yè)/打印任務(wù)中完成,同時(shí)還包括用戶(hù)自定義的輸入。
Example (Prints 2 Charts to a page):
[C#]
private void button1_Click(object sender, System.EventArgs e) {
tChart1.Printer.BeginPrint();
tChart1.Printer.Print(tChart2.Chart,new Rectangle(100,10,300,200));
tChart1.Printer.Print(new Rectangle(100,300,300,200));
tChart1.Printer.EndPrint();
}
[VB.Net]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TChart1.Printer.BeginPrint()
TChart1.Printer.Print(TChart2.Chart, New Rectangle(100, 10, 300, 200))
TChart1.Printer.Print(New Rectangle(100, 300, 300, 200))
TChart1.Printer.EndPrint()
End Sub
在同一頁(yè)上進(jìn)行多張圖表的打印預(yù)覽
現(xiàn)在越來(lái)越多的圖表都支持打印預(yù)覽功能??梢酝ㄟ^(guò)設(shè)定Print方法的Rectangle來(lái)控制圖表的位置。
例如 (打印預(yù)覽兩張圖表):
[C#]
private void button1_Click(object sender, System.EventArgs e) {
tChart1.Printer.BeginPrint();
tChart1.Printer.Print(tChart2.Chart,new Rectangle(100,10,300,200));
tChart1.Printer.Print(new Rectangle(100,300,300,200));
tChart1.Printer.Preview();
}
[VB.Net]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TChart1.Printer.BeginPrint()
TChart1.Printer.Print(TChart2.Chart, New Rectangle(100, 10, 300, 200))
TChart1.Printer.Print(New Rectangle(100, 300, 300, 200))
TChart1.Printer.Preview()
End Sub
圖表打印與其他打印混合輸出
使用ChartPrint()事件可將TeeChart打印與非圖表打印混合輸出
以下的示例獲取了TeeChart Headers的文本,并在同一頁(yè)中用兩個(gè)TChart對(duì)象來(lái)進(jìn)行打印:
[C#]
private void button1_Click(object sender, System.EventArgs e) {
tChart1.Printer.BeginPrint();
tChart1.Printer.Print(tChart2.Chart,new Rectangle(100,10,300,200));
tChart1.Printer.Print(new Rectangle(100,300,300,200));
tChart1.Printer.EndPrint();
}
private void tChart1_ChartPrint(object sender, System.Drawing.Printing.PrintPageEventArgs e) {
e.Graphics.DrawString("Chart: "+((Steema.TeeChart.ChartPrintJob)sender).Chart.Header.Text,
this.Font,new SolidBrush(Color.Black),100,((Steema.TeeChart.ChartPrintJob)sender).ChartRect.Bottom+10);
}
[VB.Net]
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
TChart1.Printer.BeginPrint()
TChart1.Printer.Print(TChart2.Chart, New Rectangle(100, 10, 300, 200))
TChart1.Printer.Print(New Rectangle(100, 300, 300, 200))
TChart1.Printer.EndPrint()
End Sub
Private Sub TChart1_ChartPrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles TChart1.ChartPrint
e.Graphics.DrawString("Chart: " & (CType(sender, Steema.TeeChart.ChartPrintJob)).Chart.Header.Text, _
Me.Font, New SolidBrush(Color.Black), 100, (CType(sender, Steema.TeeChart.ChartPrintJob)).ChartRect.Bottom + 10)
End Sub
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)