Printing

    IJC primarily allows for dynamic data exploration via Form and Grid views, but it also supports printing this data. To manage printing, a user must be assigned the ROLE_EXPORT_DATA. Details on user roles can be found in the user roles are described here.

    Printing Grid View

    Printing the grid view generates an output that closely matches what is displayed on screen, incorporating all the columns from the grid view onto the printed page. To ensure a clear and readable printout, it may be necessary to reduce the number of columns in the grid view. Page breaks are added between rows so that the contents are printed on multiple sheets.

    Printing Form View

    The form view is printed to represent its on-screen appearance as closely as possible. When the form exceeds the size of the printable area, it is scaled to fit on the page. This may potentially cause readability issues if substantial scaling is required. It is advisable to create a specific form layout optimized for printing.

    Printing form elements that include scrollbars, such as tables, can be problematic. If a table in the form view contains many rows and utilizes a vertical scrollbar, the printout will only show a portion of these rows. In such instances, the table's title is updated to indicate that only a subset of records is included in the printout, with a notation like "[4 of 20]" to show that only four out of twenty rows are printed.

    Page Setup

    Page Setup accessible from the File menu allows to configure:

    • The page size, e.g. A4 or Letter

    • The page orientation (portrait or landscape)

    • Scalling

    {primary} If the default view size exceeds the page size defined in the 'Page Setup' menu, the view's output is adjusted to fit within this specified area, except for the header and footer, which are not scaled.

    Print Settings dialog

    IJC utilizes the PDF format for printing. It first creates a PDF document, which can then be printed on paper or saved as a PDF file.

    For a preview of the printout, select Print preview from either the File menu or the main toolbar. To print immediately, choose the Print option from the File menu or the main toolbar. To save directly as a PDF file, use Print to file from the File menu or save the document after previewing it through the print preview function.

    Each of these approaches will open the Print Settings dialog

    Print Settings dialog contains three tabs:

    Print Setup tab

    As can be seen in the picture below, there are two radio button selections in Print Setup tab.

    • Row Selection allows to choose what and how many rows are to be printed (All rows, currently selected rows, specific rows)

    • Header / Footer selection allows to choose what header/footer settings will be used.

      • Use admin settings option loads header/footer settings set by schema administrator. This option is useful if standardized page layout for every user is required. Schema administrators can access the admin header/footer settings via schema editor, as shown here. Disconnect/Connect procedure is required for the settings to be applied.

      • Use my settings option loads your own header/footer settings. Once set, it is stored in your userdir and will be sustained until you decide to change it.

      • Use default IJC settings option loads IJC header/footer default settings.

      Print Setup is preserved upon upgrading to newer version of IJC.

    images/download/attachments/1805275/print-setup.png

    Print configuration for schema admins is accessible in Schema editor, as can be seen in the picture below.

    Header / Footer tab

    This tab provides the functionality to customize the page's header and footer. Click to the desired location (right/center/left header or footer) and choose element from Insert dynamic field dropdown menu. Moreover, plain text and custom image is also supported. To insert custom image, click Select custom image button and choose the image. After that, choose location where the picture is to be added and select Custom picture from Insert dynamic field dropdown menu.

    To remove an element, click to its location and press delete key.

    images/download/attachments/1805275/header-footer.png

    N-Up Printing tab

    N-Up printing tab is only accessible when printing form views and supports printing of multiple records on a single page. In this tab, users can set the number of records per page by choosing the number of columns and rows. There's an option to specify an exact number of rows or use the 'As many as fit' choice, which lets IJC calculate the number automatically.

    images/download/attachments/1805275/n-up-printing.png

    Generating printout or preview

    Click the OK button to initiate printing. Selecting print preview generates a PDF document. Choosing direct print sends the document straight to the printer without generating pdf. For printouts arranged in multiple columns, users can select the print order: either vertical or horizontal.

    Printing Asian Languages into PDF

    Using default settings of Instant JChem it is not possible to print into pdf characters specific for Asian languages such as Japanese or Chinese. In 15.12.7.0 version of Instant JChem we have introduced a new print.properties configuration file which can be found in the .../instantjchem subdirectory of the installation. This file contains as default the following data.

    # Contains configuration parameters of IJC printing.
    # Complete reference: http://jasperreports.sourceforge.net/config.reference.html
    
    net.sf.jasperreports.awt.ignore.missing.font=true
    
    #net.sf.jasperreports.default.pdf.font.name=HeiseiKakuGo-W5
    #net.sf.jasperreports.default.pdf.encoding=UniJIS-UCS2-H

    By removing the # sings from the front of lines 7 and 8 the default font name and encoding is set to the one supporting Japanese characters. To be able to print characters from other languages, the print.properties file has to be changed to contain the font and encoding relevant to the language of choice.

    A simple overview of language and encoding suggestions is provided in the table below.

    Language Font name Encoding
    traditional chinese MSungStd-Light UniCNS-UCS2-H
    simplified chinese STSongStd-Light UniGB-UCS2-H
    korean HYSMyeongJoStd-Medium UniKS-UCS2-H
    japanese HeiseiKakuGo-W5 UniJIS-UCS2-H

    It is possible to use command line parameters --pdfFontName and --pdfEncoding that can override corresponding parameters from configuration file print.properties. These can be also utilized in the Java Web Start distribution, by adding the argument into the relevant part of the *.jnlp file as in the example below.

    <application-desc main-class="com.im.ijc.jnlpinstaller.Main">
     <argument>—pdfFontName=HeisekiKakuGo-W5</argument>
     <argument>—pdfEncoding=UniJIS-UCS2-H</argument>
    </application-desc>