PHPTutorial9

From Steema Software Reference Wiki
Revision as of 12:01, 29 April 2016 by Clive (Talk | contribs) (Importing Tep format files)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Tchart php.png

Contents page
Previous | Next


Tutorial 9 - Exporting and Importing Charts

Exporting Charts

Available Export formats

All formats may be copied to either a file or Clipboard or to a Stream.
 

Image formats

JPEG: JPEGFormat Class
GIF: GIFFormat Class 
PNG: PNGFormat Class 
WBMP: WBMPFormat Class 

Data formats

Text: TextFormat Class 
XML: XMLFormat Class 
HTML: HTMLFormat Class
Excel: ExcelFormat Class

Other formats

Ten format is a flexible format that stores Chart property information and, optionally, Chart data. Files are small (data dependent) and ideal for network use to update live client based Charts.

TEP (TeeChart): TemplateExport Classs

Other formats
Tee format is a flexible format that stores Chart property information and, optionally, Chart data. Files are small (data dependent) and ideal for network use to update live client based Charts.


TEP (TeeChart)

SaveChartToFile


Example export

Exporting to a file is reasonable straightforward, in most cases you just need to define the destination filename.

Example

  With SaveDialog1 do
  if Execute then Chart1.SaveToBitmapFile(SaveDialog1.FileName);

JPEG

JPEG file export has additional parameters for speed and quality. See the JPEG demo included in the Examples folder.

Example

  $tmpResult = fc.showSaveDialog(JpegExportDemo.this);
 if (tmpResult == JFileChooser.APPROVE_OPTION) {
 File file = fc.getSelectedFile();
 String tmpName = file.getAbsolutePath();
 if (!ExportUtils.isExtension(file, ExportUtils.JPG)) {
 tmpName = ExportUtils.replaceExtension(file, ExportUtils.JPG);
 }  
myChart.getExport().getImage().getJPEG().save(tmpName);
 } 

Performance, jpegBestQuality, and the Compression Quality percentage (high value less compression), will make the file larger and thus slower to transmit across a network - quality is better though! You will need to decide on the best balance to suit your application.

GIF

TeeChart provides the means to create GIF Chart images but you should check your licensing position with Unisys for use of GIF LZW encoded images. The alternative RLE encoding is not subject to Unisys licenses.

Example by code

 int tmpResult = fc.showSaveDialog(GifExportDemo.this);
 if (tmpResult == JFileChooser.APPROVE_OPTION) {
 File file = fc.getSelectedFile();
 String tmpName = file.getAbsolutePath();
 if (!ExportUtils.isExtension(file, ExportUtils.GIF)) {
 tmpName = ExportUtils.replaceExtension(file, ExportUtils.GIF);
 }
 myChart.getExport().getImage().getGIF().save(tmpName);
 } 

PNG

The PNG format retains many of the advantages of the GIF format but also provides capabilities beyond those of GIF. PNG improves on GIF in its ability to progressively display an image; that is, to display better and better approximations of the image as it arrives over a network connection.

Example

 int tmpResult = fc.showSaveDialog(PngExportDemo.this);
 if (tmpResult == JFileChooser.APPROVE_OPTION) {
 File file = fc.getSelectedFile();
 String tmpName = file.getAbsolutePath();
 if (!ExportUtils.isExtension(file, ExportUtils.PNG)) {
 tmpName = ExportUtils.replaceExtension(file, ExportUtils.PNG);
 }
 myChart.getExport().getImage().getPNG().save(tmpName);
 } 


Exporting data

The following examples export the data from a Chart Series in Text or XML format. They may be created and associated with a Chart Series from which they can export data as either File, Stream or to the Clipboard.

Text files

Example

 try {
 $myChart->getExport()->getData()->getText()->save($tmpName);
 }

XML files

Example

 try {
 $myChart->getExport()->getTemplate()->toXML($tmpName);
 $showSavedFile(tmpName);
 }

TeeChart's 'Tee' template and data export/import format

Tep files

Tee files are TeeChart's own template format for saving Charts and their data and have the .tej extension in Java IDE's. Modified Chart properties are saved with the template and reproduced when the template is imported to a new Chart. 

Advantages:

Tep files are very small in size, in most cases that offers an advantage over pure graphics formats (Quicker).

The destination Chart for the template is 'live', it can be zoomed and scrolled and have its properties modified.

Data may optionally be included with the tee template according to your preference.

Example

 try {
  $tChart1->getExport()->getTemplate()->toFile("/temp/chart1.tep"); 
  } catch (IOException ex1) {
  ex1.printStackTrace();
  }

Import

Importing XML from a URL.

Example which shows how to export and load from/to xml :

//Save to xml; 

 try {
 $myChart->getExport()->getTemplate()->toXML($tmpName);
 showSavedFile($tmpName);
 } catch (FileNotFoundException $e) {
 System.out.println(e);
 }
//Load from xml:

 try { 
 $myChart->setChart($myChart->getImport()->getTemplate()->fromXML($tmpName));
 $myChart->repaint();
 }
 catch (FileNotFoundException $e) {
 System.out.println(e);
 }

Importing Tep format files

Import a saved Tep file from a local file source or http data source.

Example Imports

Example

  import from file 
 $tChart1->getImport()->getTemplate()->fromFile("myFile.tep");  
or
XML..
$tChart1->getImport()->getTemplate()->fromXML("myFile.xml");  
or
Stream..
try { //( 1) Save the template into a Stream... ByteArrayOutputStream m = new ByteArrayOutputStream(); $myChart->getExport()->getTemplate()->toStream($m); //( 2) Load the template into other Chart... $copyChart->setChart($copyChart->getImport()->getTemplate()->fromStream( new ByteArrayInputStream(m.toByteArray()) )); //( 3) repaint the Chart $copyChart->repaint(); } catch (IOException $ex) { System.out.println(ex); } catch (ClassNotFoundException $ex) { System.out.println(ex); }



PREVIOUS

NEXT


© 1998-2019 Steema Software SL. All rights reserved.