<= Previous | Next => | Table of Contents DataVision User's Manual

10 Layout Engines

DataVision uses layout engines to generate different output formats. A layout engine is responsible for creating output when a report runs. That output may be a file, a window on a screen, or an interpretive dance (not yet implemented).

10.1 Available Layout Engines

DocBook This engine produces a DocBook document with a .sgml file name extension.

HTML The HTML layout engine produces an HTML file. It contains a single table that displays the report data.

Java Swing This layout engine does not produce a file. Rather, it displays the results of the report in a GUI window. This is the layout engine used when you select Run Report... from the Report menu.

LaTeX This layout engine produces a .tex file containing LaTeX2e commands. These commands can be further processed to create a .dvi file containing device independent display commands. Many different programs are available to display this file, print it, or turn this file into PDF, HTML, text, PostScript, and more.

The only paper sizes supported by the LaTeX layout engine are those supported by LaTeX2e: A4, A5, B5, US Letter, US Legal, and Executive. Any other paper selection in DataVision will use the default LaTeX paper size, which is US Letter.

Excel Generates a Microsoft Excel file. Uses the Jakarta POI library (so subject to its abilities and limitations).

PDF This one generates a PDF file with a .pdf file name extension. It uses Bruno Lowagie's iText Java library.

The only fonts supported by the PDF layout engine are the 14 Type 1 "base" fonts:

The Java font family name is used to pick the PDF font. The family can be the font name ("Helvetica", "Arial") or a logical name ("sansserif", "serif", "monospace"). "Helvetica" or "sansserif" map to Helvetica, "Courier" or "monspace" map to Courier, "Symbol" and "ZapfDingbats" map to themselves, and everything else (including "serif", for example) maps to Times.

Tab- and comma-delimited Generates either tab- or comma-delimited ASCII data files. Comma-delimited file names usually use end with .csv; tab-delimited files often end with .txt or .tab.

XML The XML layout engine produces---surprise---XML. Aside from being buzzword of the month, XML is a useful text-based data format.

10.2 Supported Features

This tables shows which layout engines support which features. "Y" = yes, "N" = no, "P" = partial support, "T" = text only (for example, an image's URL instead of the image itself).

Name Images Borders Lines Formatting Color Alpha (Transparency)
Char Sep
(tab, comma)
N N N N N N
DocBook N N N P N N
HTML Y P N Y Y N
LaTeX N Y Y Y N N
PDF Y Y Y P Y N
Swing Y Y N Y Y Y
XML T N N N N N
Excel ? ? ? ? ? ?

10.3 Creating a New Layout Engine

UTSL (Use The Source, Luke). The best documentation for creating a layout engine is the Java API documentation for the LayoutEngine class and the source code for the other layout engines.


<= Previous | Next => | Table of Contents Valid XHTML 1.0! Valid CSS! DataVision User's Manual