spanVerticalField.setText( String.valueOf( simplePageDefinition.getPageCountVertical() ) ); final PageFormat pageFormat = simplePageDefinition.getPageFormat(); copyPageFormatToFields( pageFormat ); } else if ( original != null ) {
private static void writePageDefinition( final XmlWriter writer, final PageDefinition definition ) throws BundleWriterException, IOException { if ( writer == null ) { throw new NullPointerException(); } if ( definition == null ) { throw new NullPointerException(); } if ( definition instanceof SimplePageDefinition ) { final SimplePageDefinition sdef = (SimplePageDefinition) definition; final int pageCountHorizontal = sdef.getPageCountHorizontal(); final int pageCountVertical = sdef.getPageCountVertical(); final PageFormat pageFormat = sdef.getPageFormat(); final AttributeList attr = new AttributeList(); attr.setAttribute( BundleNamespaces.STYLE, "horizontal-span", String.valueOf( pageCountHorizontal ) ); attr.setAttribute( BundleNamespaces.STYLE, "vertical-span", String.valueOf( pageCountVertical ) ); buildPageFormatProperties( pageFormat, attr ); writer.writeTag( BundleNamespaces.STYLE, "page-definition", attr, XmlWriterSupport.CLOSE ); } else if ( definition instanceof CustomPageDefinition ) { throw new BundleWriterException( "Cannot handle 'CustomPageDefinition' objects." ); } else { throw new BundleWriterException( "Cannot handle generic page-definition objects." ); } }
private void writePageDefinition() throws IOException { final XmlWriter xmlWriter = getXmlWriter(); final PageDefinition pageDefinition = getReport().getPageDefinition(); if ( pageDefinition instanceof SimplePageDefinition ) { final SimplePageDefinition spdef = (SimplePageDefinition) pageDefinition; final AttributeList attr = new AttributeList(); attr.setAttribute( ExtParserModule.NAMESPACE, "width", String.valueOf( spdef.getPageCountHorizontal() ) ); attr.setAttribute( ExtParserModule.NAMESPACE, "height", String.valueOf( spdef.getPageCountVertical() ) ); xmlWriter.writeTag( ExtParserModule.NAMESPACE, ReportConfigWriter.SIMPLE_PAGE_DEFINITION_TAG, attr, XmlWriterSupport.OPEN ); final AttributeList attributes = buildPageFormatProperties( spdef.getPageFormat( 0 ) ); xmlWriter.writeTag( ExtParserModule.NAMESPACE, ReportConfigWriter.PAGE_TAG, attributes, XmlWriterSupport.CLOSE ); xmlWriter.writeCloseTag(); } else { xmlWriter.writeTag( ExtParserModule.NAMESPACE, ReportConfigWriter.PAGE_DEFINITION_TAG, XmlWriterSupport.OPEN ); final int max = pageDefinition.getPageCount(); for ( int i = 0; i < max; i++ ) { final PageFormat fmt = pageDefinition.getPageFormat( i ); final AttributeList attributes = buildPageFormatProperties( fmt ); xmlWriter.writeTag( ExtParserModule.NAMESPACE, ReportConfigWriter.PAGE_TAG, attributes, XmlWriterSupport.CLOSE ); } xmlWriter.writeCloseTag(); } }
/** * Describes the physical output characteristics like page size, margins, and imaginable area. * * @return */ public PageFormat getPageFormat() { if ( pageDefinition == null ) { return new PageFormat(); } final PageFormat pageFormat = pageDefinition.getPageFormat(); final Paper orgPaper = pageFormat.getPaper(); final PageFormatFactory pff = PageFormatFactory.getInstance(); final double virtualPaperWidth = orgPaper.getImageableWidth() + pff.getLeftBorder( orgPaper ) + pff.getRightBorder( orgPaper ); final double virtualPaperHeight = orgPaper.getImageableHeight() + pff.getTopBorder( orgPaper ) + pff.getBottomBorder( orgPaper ); final Paper p = pff.createPaper( virtualPaperWidth, virtualPaperHeight ); pff.setBorders( p, pff.getTopBorder( orgPaper ), pff.getLeftBorder( orgPaper ), pff.getBottomBorder( orgPaper ), pff.getRightBorder( orgPaper ) ); return pff.createPageFormat( p, pageFormat.getOrientation() ); }