TeeChart可以保存多钟格式的图片,bmp、jpeg、pdf、gif等,对于这些功能的定义在CExport类中声明。我们打开CExport类,看看它的成员函数有那些:
~~~
void CopyToClipboardBitmap();
void CopyToClipboardMetafile(BOOL Enhanced);
void SaveToBitmapFile(LPCTSTR FileName);
void SaveToFile(LPCTSTR FileName);
void SaveToJPEGFile(LPCTSTR FileName, BOOL Gray, long Performance, long Quality, long Width, long Height);
void SaveToMetafile(LPCTSTR FileName);
void SaveToMetafileEnh(LPCTSTR FileName);
void ShowExport();
CString SaveChartDialog();
void ConvertTeeFileToText(LPCTSTR InputFile, LPCTSTR OutputFile);
VARIANT Stream(long StreamType);
CJPEGExport GetAsJPEG();
CPNGExport GetAsPNG();
CGIFExport GetAsGIF();
CBMPExport GetAsBMP();
CPCXExport GetAsPCX();
CMetafileExport GetAsMetafile();
CNativeExport GetAsNative();
CXMLExport GetAsXML();
CXLSExport GetAsXLS();
CHTMLExport GetAsHTML();
CTextExport GetAsText();
void EmailFile(LPCTSTR FileName, LPCTSTR Subject);
CPDFExport GetAsPDF();
CEPSExport GetAsEPS();
CSVGExport GetAsSVG();
CString GetLabelHeader();
void SetLabelHeader(LPCTSTR lpszNewValue);
CXAMLExport GetAsXAML();
void SaveToXMLFile(LPCTSTR FileName, BOOL IncludeData, BOOL XMLHeader);
VARIANT SaveToXMLStream(BOOL IncludeData, BOOL XMLHeader);
~~~
很显然,若想保存bmp格式的图片,需要用SaveToBitmapFile函数,其参数就是图片的绝对路径。而SaveToJPEGFile函数是用来保存jpeg图片的,它有五个参数,FileName是文件存储的路径,Gray表示是否保存为黑白图像,Performance表示JPEG是生成质量优先还是速度优先,Quality是从0到100的整数,100表示生成的图片质量最好,Width和Height表示图片的像素,-1表示以TeeChart的宽和高。
下面是代码示例,生成bmp和jpeg格式的图片:
~~~
m_TeeChart.GetExport().SaveToBitmapFile("C:\\1.bmp");
m_TeeChart.GetExport().SaveToJPEGFile("C:\\4.jpeg", 0, 0, 100, -1,-1 ); //Gray为0表示生成彩色图片
~~~
那么gif、png等其他格式的图片如何保存呢?这就需要用到GetAsGIF、GetAsPNG这些类了:
~~~
m_TeeChart.GetExport().GetAsGIF().SaveToFile("C:\\1.gif"); //保存为GIF格式
m_TeeChart.GetExport().GetAsBMP().SaveToFile("C:\\1.bmp"); //保存为BMP格式
m_TeeChart.GetExport().GetAsJPEG().SaveToFile("C:\\1.jpeg"); //保存为jpeg格式
m_TeeChart/GetExport().GetAsPDF().SaveToFile("C:\\1.pdf"); //保存为pdf格式
~~~