• <menu id="w2i4a"></menu>
  • logo Teechart應用技術詳解——快速圖表制作工具

    文檔首頁>>Teechart應用技術詳解——快速圖表制作工具>>Teechart圖表應用技術詳解—第六章之以圖表形式導出

    Teechart圖表應用技術詳解—第六章之以圖表形式導出


        Steema公司和慧都科技針對中國市場聯(lián)合推出中文版TeeChart for .NET圖表控件,一共漢化2000個詞條(17000個單詞),漢化文檔35000個單詞,包括控件設計時與運行時的界面漢化以及控件使用向導文檔的漢化,總漢化90%以上!

        TeeChart for .NET中文版讓您在使用和學習上沒有任何語言障礙,至少可以節(jié)省30%的開發(fā)時間。TeeChart for .NET中文版具有易上手,使用方便,穩(wěn)定性好,性價比高,價格優(yōu)惠等優(yōu)勢,并且針對Web應用提供無限制服務器分發(fā)授權方式,非常有利于產(chǎn)品集成。

    點擊下載TeeChart for .NET最新試用版


        圖表導出是指將圖表組件產(chǎn)生的圖形轉換為某種格式或以文件形式保存或復制到剪貼板上。Tee Chart Pro v7提供了豐富的轉換格式,圖形可導出的格式有: Native tee、PNG、GIF、BMP、WMF、EMF、JPEG、PCX、PDF、EPS、VML、SVG、GDI+等,數(shù)據(jù)導出的格式有:Native(二進制或文本)tee、文本(CSV)、XML、Excel、HTML表等。

    通過調用圖表組件的方法導出

        Tee Chart Pro v7為導出圖表提供了多種方法。在程序運行過程中,可以通過調用圖表組件有關復制與保存位圖文件的方法實現(xiàn)圖表導出。組件中的方法可分為兩組,一組是保存為Bitmap格式的位圖文件和元文件( Metafile。)格式,如

    • Chart1.SaveToBitmapFile( Const FileName:string);

    • Chart1.Save ToBitmapFile( Const FileName:string: Const R:TRect);

    • Chart1.Save ToMetafile( Const FileName:string);

    • Chart1.Save ToMetafileEnh( Const FileName: string);

    • Chart1.Save ToMetafileRect(Enhances:Boolean, Const FileName: string; Const R:TRect );

        另一組方法是將圖表以位圖或元文件格式復制到剪貼板上,如:

    • Chart1.Copy ToClipboardBitmap;

    • Chart1.Copy ToClipboardBitmap( Const R:TRect);

    • Chart1.Copy ToClipboardMetafile( Enhanced: Boolean);

    • Chart1.Copy ToClipboardMetafile(Enhanced: Boolean; Const R:TRect );

    通過調用非可視組件的方法導出

        在 TeeChart Pro v7的源程序中,包含類似TeeJPEG.pas、TeePNG.pas、TeeSVGCanvas.pas等一些*pas文件,通過仔細分析發(fā)現(xiàn),這些文件的作用就是將圖表組件顯示的圖表導出為指定的格式。為將圖形轉換為指定格式,需將對應文件在用戶程序的uses段進行引用,也就是說在源程序的uses段加入相應的源文件例如,需要轉換為JPEG格式,則在ues段加入TeeJPEG。即uses TeeJPEG

        然后,在導出的代碼段中采用下列格式調用:

    procedure TeeSaveToJPEG( APanel:TCustomTeePanel;//圖表組件的Panel
    Const FileName:WideString;//需要保存的文件名
    AWidth, AHeight: Integer);// Panel的寬、高

        其中APanel就是圖表組件的Panel, FileName是需要導出的文件名, AWidth、 AHeight分別為Panel的寬和高。下面的代碼將圖表導出為BB.PG文件:

    TeeSaveToJPEG (Chart1,'BB.JPG', 289, 229);

        為了便于讀者程序設計時使用,下表中列出圖表組件未提供的格式導出所使用的源程序與調用格式。

    導出格式列表

    格式調用格式源代碼
    JPEG

    procedure TeeSaveToJPEG( Apanel:TcustomTeePanel;

    const FileName: WideString;

    Awidth, Aheight: Integer);

    TeeJPEG
    PDF

    procedure TeeSaveToPDFFile( Apanel:TcustomTeePanel;

    const FileName: WideString;

    Awidth:Integer=0;

    Aheight:Integer=0);

    TeePDFCanvas
    PNG

    procedure TeeSaveToPNG( Apanel:TcustomTeePanel;

    const AfileName:WideString;

    Awidth:Integer=0;

    Aheight:Integer=0);

    TeePNG
    PS

    procedure TeeSaveToPSFile( Apanel:TcustomTeePanel;

    const FileName:WideString;

    Awidth:Integer=0;

    Aheight:Integer=0);

    TeePSCanvas
    SVG

    procedure TeeSaveToSVGFile( Apanel:TcustomTeePanel;

    const FileName:WideString;

    Awidth:Integer=0;

    Aheight:Integer=0);

    TeeSVGCanvas
    VML

    procedure TeeSaveToVMLFile( Apanel:TcustomTeePanel;

    const FileName:WideString;

    Awidth:Integer=0;

    Aheight:Integer=0);

    TeeVMLCanvas

    注意:在導出上標中的任一格式時,必須在uses段引用指定格式的源代碼。

    導出對話框( Export Dialog)的調用

        在Tee Chart Pro v7的源代碼中,可以找到導出對話框( Export Dialog)窗口及對應代碼,由于該對話框與多個窗體有關,用戶很難在短時內(nèi)將其關系搞清楚,直接調用這個對話框出現(xiàn)的一些錯誤也不知如何處理,這里采用在圖表編輯器的基礎上實現(xiàn)調用導出對話框的功能,導出對話框設計階段的界面如下圖所示。

    導出對話框設計階段界面

        為了能夠實現(xiàn)導出對話框的功能,這里提供一個最為簡便且與直接調用效果完全相同的方法。在Delphi7的TeeChart組件板上提供了圖表編輯器對話框 TChartEditor,程序設計時可將該組件拖入窗體,然后在調用導出對話框Button2的OnClick事件中加入下列代碼:

    begin
    ChartEditor1.HideTabs:=
    [cetMain, cetGeneral, cetAxis, cetTitles, cetLegend,
    cetPanel, cetPaging, cetWalls, cet 3D, cetSeriesGeneral,
    cetSeriesMarks, cetAllSeries, cetSeriesData, cetExport,
    cetTools, cetPrintPreview];
    ChartEditor1.Title:='圖表導出( Export)';
    ChartEditor1.HighLightTabs:=true;//高亮
    ChartEditor1.DefaultTab:=cetExport;//頁面名稱,導出頁面
    ChartEditor1.Execute;
    End;

        該代碼中的ChartEditor1.HideTabs的作用是將TChartEditor組件中的頁面全部隱藏,然后,以高亮的形式顯示導出頁面( Export)。下圖有單擊調用導出對話框后顯示的導出頁面,與直接調用導出對話框的效果一致。下圖所示的對話框Picture選項卡的Format列表框中顯示的內(nèi)容中只有三種導出類型,出現(xiàn)這種現(xiàn)象的原因是導出的每種格式都是需要源代碼支持的,因此,在用戶程序的uses段需加入下列引用:

    TeePDFCanvas,
    TeeSVGCanvas,
    TeeVMLCanvas
    TeePSCanvas,
    TeePCX,
    TeeGIF,
    TeePNG
    TeeJPEG

        上述引用加入后,需要重新啟動計算機,然后再運行該程序,這時導出對話框的Picture選項卡的Format列表框顯示的內(nèi)容就發(fā)生變化——增加了新的格式,如下面右圖所示:

    調用導出對話框運行效果  新的導出窗口外觀

    導出對話框調用演示實例

        導出對話框調用演示的設計階段界面如下圖所示。窗體上部是圖表組件Chart1,下部的

    Panel1上放置導出對話框和退出兩個按鈕Button2和Button1,以及圖表編輯器組件ChartEditor1和定時器Timer1。

    實例設計階段界面

        圖表編輯器ChartEditor1是在Button2的OnClick事件中調用的,代碼如導出對話框( Export Dialog)的調用中所示。定時器組件是考慮到Series1:TGaugeSeries是一個儀表組件,在任一時刻都只有一個值,所以在Timer1的OnTimer事件中用隨機函數(shù)發(fā)生器產(chǎn)生0~100的一個整數(shù),使得該組件在程序運行期間一直處于動態(tài)變化之中。下面是演示程序的源代碼:

    unit Unit1;
    interface
    uses
    Windows, Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,Series,TeEngine,TeeGauges,ExtCtrls,TeeProcs,Chart,TeePDFCanvas,TeeSVGCanvas, TeeVMLCanvas,TeePSCanvas,TeeGIF,TeePNG,TeeJPEG,TeeEdit,
    Buttons,StdCtrls,JPEG,TeeExport,TeeBmpOptions,TeeEmfOptions,TeeEdiTCha,Menus;
    type
    TForm1=class(TForm)
    Chart:TChart;
    Timer1:TTimer;
    Series1:TGaugeSeries;
    Panel1:TPanel;
    Button1:TButton;
    Button2:TButton;
    ChartEditor1:TChartEditor;
    procedure Timer1Timer(Sender:TObject);
    procedure Button1Click(Sender:TObject);
    procedure Button2Click(Sender:Tobject);
    Private 
    {Private declarations}
    public
    {Public declarations}
    end;
    var
    Form1:TForm1;
    implementation
    {$R * .dfm}
    procedure TForm1.Timer1Timer(Sender:Tobject);
    begin//定時器事件中產(chǎn)生隨機數(shù)驅動儀表盤
    Series1.Value:=Random(100);
    end;
    procedure TForm1.Button1Click(Sender: TObject):
    begin// Button1為退出按鈕
    Close;
    end;
    procedure TForm1.Button2Click(Sender:TObject);
    begin//調用圖表編輯器的導出對話框( Export Dialog)
    ChartEditor1.HideTabs:=//隱藏所有頁面
    [cetMain, cetGeneral, cetAxis, cetTitles,cetLegend, cetPanel, cetPaging, cetWalls,cet3D, cetSeriesGeneral,cetSeriesMarks,cetAllSeries,cetSeriesData,cetExport, cetTools, cetPrintPreview];
    ChartEditor1.Title:=·圖表導出( Export)';
    ChartEditor1.HighLightTabs:=true;//高亮
    ChartEditor1.De faultTab:=cetExport;/頁面名稱:導出
    ChartEditor1.Execute;//執(zhí)行組件
    end;
    end.

    注意:圖表編輯器的Chart屬性一定要設定為圖表組件名,否則將調用失敗。下圖是導出的JPG、EPS、PCX和PDF格式效果示意圖。

    導出的四種格式顯示效果

    相關資料推薦:

    上一章:單圖表和多圖表的預覽和打印

    下一章:以圖表形式導出

    Teechart 2019資源合集

    =====================================

        現(xiàn)TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現(xiàn)在搶購可立享優(yōu)惠!

        關注慧聚IT微信公眾號???,了解產(chǎn)品的最新動態(tài)及最新資訊。

    慧聚IT

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();