JasperReports - Basic Introduction

JasperReports is an open source software which is widely used for creating PDFs. It is not limited to creating PDFs but one can also export any desirable formats such PNG, CSV, Excel, Word doc, and HTML etc. 

Its ability to position elements such text element, labels based on pixels is incredible and that makes JasperReports a unique tool to create PDFs. JasperSoft Community version can be downloaded from here.

Basically, JasperSoft is an eclipse based software to create PDFs and there is also JAVA library that can be integrated with Eclipse and methods can be invoked programmatically to create PDFs and any such formats. 

Before I go deep down the topic, let me give you an overview of what JasperSoft Studio looks like:


It has a project explorer where all Jasper template files (.JRXML) is generated which is shown in middle view/ Design View with different kinds of bands (Title, Page Header, Column Header etc. ). On the right-hand top corner under Palette, all input elements are available that can be dragged and dropped on the desired bands (it depends on how you want them to be displayed). 

In the bottom left corner under Outline, it shows the document structure which is a tree that can be expanded to see which band contains which elements. We shall explore the details of those bands in a separate blog. 

Basically, the template created by JasperStudio is an XML file, the content of which can be seen by clicking on Source tab at the bottom of the middle pane. See below -


It is advisable not to manipulate the source XML contents as it might corrupt the Jasper Design Template. 

To see how your layout would look as PDFs or any other format, click on Preview tab.


Jasper Studio has many advantages when it comes to displaying data such as inbuilt data readers e.g. XML, CSV, JSON, and database source providers which can be configured to read the data directly from the table. 

I shall explain how you can get your contents printed dynamically onto PDF in upcoming blogs. 

Stay tuned for more on my blog page.


Build smarter apps with Machine Learning, Bots, Cognitive Services - Start free.

Start Learning Now