pageFormat.setPaper( a4Paper ); SimplePageDefinition pageDefinition = new SimplePageDefinition( pageFormat ); report.setPageDefinition( pageDefinition );
/** * Returns the physical page format for the given position. * * @param pos * the position in the page grid. * @return a clone of the pageformat at the specified positon. */ public PageFormat getPageFormat( final int pos ) { if ( pos < 0 || pos > getPageCount() ) { throw new IndexOutOfBoundsException( "Index is invalid" ); } return (PageFormat) format.clone(); }
public PageDefinition performSetup( final PageDefinition original ) { if ( original instanceof SimplePageDefinition ) { final SimplePageDefinition simplePageDefinition = (SimplePageDefinition) original; spanHorizontalField.setText( String.valueOf( simplePageDefinition.getPageCountHorizontal() ) ); spanVerticalField.setText( String.valueOf( simplePageDefinition.getPageCountVertical() ) ); final PageFormat pageFormat = simplePageDefinition.getPageFormat(); copyPageFormatToFields( pageFormat ); } else if ( original != null ) {
if ( pageDefinition instanceof SimplePageDefinition ) { final SimplePageDefinition spd = (SimplePageDefinition) pageDefinition; report.setPageDefinition( new SimplePageDefinition( pf, spd.getPageCountHorizontal(), spd .getPageCountVertical() ) ); } else { report.setPageDefinition( new SimplePageDefinition( pf ) );
public void draw( final Graphics2D graphics, final Rectangle2D bounds ) { final PageFormat gpf = getPageFormat(); final Rectangle2D.Double imageableArea = new Rectangle2D.Double( gpf.getImageableX(), gpf.getImageableY(), gpf.getImageableWidth(), gpf .getImageableHeight() ); graphics.setPaint( new Color( 225, 225, 225 ) ); graphics.fill( imageableArea ); graphics.setPaint( Color.gray ); graphics.draw( imageableArea ); final int pcH = pageDefinition.getPageCountHorizontal(); final int pcW = pageDefinition.getPageCountVertical(); final Line2D line = new Line2D.Double(); for ( int splitH = 1; splitH < pcH; splitH += 1 ) { final double xPos = gpf.getImageableX() + ( splitH * gpf.getImageableWidth() ); line.setLine( xPos, gpf.getImageableY(), xPos, gpf.getImageableY() + gpf.getImageableHeight() ); graphics.draw( line ); } for ( int splitW = 1; splitW < pcW; splitW += 1 ) { final double yPos = gpf.getImageableY() + ( splitW * gpf.getImageableHeight() ); line.setLine( gpf.getImageableX(), yPos, gpf.getImageableX() + gpf.getImageableWidth(), yPos ); graphics.draw( line ); } }
/** * 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() ); }
private PageDefinition createDefaultPageDefinition() { final PageDefinition format; final ExtendedConfiguration config = ClassicEngineBoot.getInstance().getExtendedConfig(); if ( config.getBoolProperty( ClassicEngineCoreModule.NO_PRINTER_AVAILABLE_KEY ) ) { format = new SimplePageDefinition( new PageFormat() ); } else { format = new SimplePageDefinition( PrinterJob.getPrinterJob().defaultPage() ); } return format; }
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." ); } }
/** * Returns the printable area within the logical page area covered by the physical page at the given position. * * @param index * the positon. * @return the printable area for the page. */ public Rectangle2D getPagePosition( final int index ) { if ( index < 0 || index > getPageCount() ) { throw new IndexOutOfBoundsException( "Index is invalid" ); } return pagePositions[index].getBounds2D(); }
/** * Done parsing. * * @throws org.xml.sax.SAXException * if there is a parsing error. */ protected void doneParsing() throws SAXException { if ( pageReadHandler == null ) { throw new SAXException( "simple-page-definition element needs one page definition." ); } final SimplePageDefinition pageDefinition = new SimplePageDefinition( pageReadHandler.getPageFormat(), width, height ); final MasterReport report = (MasterReport) getRootHandler().getHelperObject( ReportParserUtil.HELPER_OBJ_REPORT_NAME ); report.setPageDefinition( pageDefinition ); }
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(); } }
private SimplePageDefinition createPageDefinition() { final float pageWidth = ParserUtil.parseFloat( pageWidthField.getText(), 0 ); final float pageHeight = ParserUtil.parseFloat( pageHeightField.getText(), 0 ); final int spanHorizontal = ParserUtil.parseInt( spanHorizontalField.getText(), 0 ); final int spanVertical = ParserUtil.parseInt( spanVerticalField.getText(), 0 ); final float marginTop = ParserUtil.parseFloat( marginTopField.getText(), 0 ); final float marginLeft = ParserUtil.parseFloat( marginLeftField.getText(), 0 ); final float marginBottom = ParserUtil.parseFloat( marginBottomField.getText(), 0 ); final float marginRight = ParserUtil.parseFloat( marginRightField.getText(), 0 ); final Paper p = PageFormatFactory.getInstance().createPaper( pageWidth, pageHeight ); final PageFormat pf; if ( portraitModeBox.isSelected() ) { PageFormatFactory.getInstance().setBorders( p, marginTop, marginLeft, marginBottom, marginRight ); pf = PageFormatFactory.getInstance().createPageFormat( p, PageFormat.PORTRAIT ); } else { // noinspection SuspiciousNameCombination PageFormatFactory.getInstance().setBorders( p, marginRight, marginTop, marginLeft, marginBottom ); pf = PageFormatFactory.getInstance().createPageFormat( p, PageFormat.LANDSCAPE ); } return new SimplePageDefinition( pf, spanHorizontal, spanVertical ); } }
/** * Returns the page definition assigned to the report definition. The page definition defines the report area and how * the report is subdivided by the child pages. * * @return null, as subreports have no page-definition at all. */ public PageDefinition getPageDefinition() { ReportElement parent = getParentSection(); while ( parent != null ) { if ( parent instanceof MasterReport ) { final MasterReport masterReport = (MasterReport) parent; return masterReport.getPageDefinition(); } parent = parent.getParentSection(); } return new SimplePageDefinition( new PageFormat() ); }
/** * Starts parsing. * * @param attrs * the attributes. * @throws org.xml.sax.SAXException * if there is a parsing error. */ protected void startParsing( final Attributes attrs ) throws SAXException { final Object o = getRootHandler().getHelperObject( ReportParserUtil.HELPER_OBJ_REPORT_NAME ); if ( o instanceof MasterReport == false ) { return; } final MasterReport report = (MasterReport) o; // grab the default page definition ... final PageFormat format = report.getPageDefinition().getPageFormat( 0 ); final PageFormat definedFormat = configurePageSizeAndMargins( attrs, format ); final int horizontalSpan = ParserUtil.parseInt( attrs.getValue( getUri(), "horizontal-span" ), 1 ); final int verticalSpan = ParserUtil.parseInt( attrs.getValue( getUri(), "vertical-span" ), 1 ); pageDefinition = new SimplePageDefinition( definedFormat, horizontalSpan, verticalSpan ); report.setPageDefinition( pageDefinition ); }
protected void setUp() throws Exception { ClassicEngineBoot.getInstance().start(); outputProcessorMetaData = new DebugOutputProcessorMetaData(); pageGrid = new DefaultPageGrid( new SimplePageDefinition( new PageFormat() ) ); }
protected void setUp() throws Exception { ClassicEngineBoot.getInstance().start(); outputProcessorMetaData = new DebugOutputProcessorMetaData(); pageGrid = new DefaultPageGrid( new SimplePageDefinition( new PageFormat() ) ); }
protected void setUp() throws Exception { ClassicEngineBoot.getInstance().start(); outputProcessorMetaData = new DebugOutputProcessorMetaData(); pageGrid = new DefaultPageGrid( new SimplePageDefinition( new PageFormat() ) ); }
protected void setUp() throws Exception { ClassicEngineBoot.getInstance().start(); outputProcessorMetaData = new DebugOutputProcessorMetaData(); pageGrid = new DefaultPageGrid( new SimplePageDefinition( new PageFormat() ) ); }
protected MasterReport createCrosstabReport( final TableModel tableModel ) { Expression dummy = create( "dummy", null, null ); if ( dummy instanceof AggregationFunction == false ) { return null; } AggregationFunction function = (AggregationFunction) dummy; final MasterReport report = new MasterReport(); report.setPageDefinition( new SimplePageDefinition( PageSize.A3, PageFormat.LANDSCAPE, new Insets( 0, 0, 0, 0 ) ) ); report.setDataFactory( new TableDataFactory( "query", tableModel ) ); report.setQuery( "query" ); final ContextAwareDataSchemaModel dataSchemaModel = new DesignTimeDataSchemaModel( report ); final CrosstabBuilder builder = new CrosstabBuilder( dataSchemaModel ); builder.addRowDimension( ROW_DIMENSION_A ); builder.addRowDimension( ROW_DIMENSION_B ); builder.addColumnDimension( COLUMN_DIMENSION_A ); builder.addColumnDimension( COLUMN_DIMENSION_B ); builder.addDetails( VALUE, function.getClass() ); report.setRootGroup( builder.create() ); return report; }
protected MasterReport createRelationalReport( final TableModel tableModel, final String... additionalFields ) { final MasterReport report = new MasterReport(); report.setPageDefinition( new SimplePageDefinition( PageSize.A3, PageFormat.LANDSCAPE, new Insets( 0, 0, 0, 0 ) ) ); report.setDataFactory( new TableDataFactory( "query", tableModel ) ); report.setQuery( "query" ); final DesignTimeDataSchemaModel dataSchemaModel = new DesignTimeDataSchemaModel( report ); final RelationalReportBuilder builder = new RelationalReportBuilder( dataSchemaModel ); builder.addGroup( ROW_DIMENSION_A ); builder.addGroup( ROW_DIMENSION_B ); builder.addGroup( COLUMN_DIMENSION_A ); builder.addGroup( COLUMN_DIMENSION_B ); builder.addDetails( VALUE, null, Color.lightGray ); builder.addDetails( "relational", null, Color.yellow ); for ( int i = 0; i < additionalFields.length; i++ ) { String additionalField = additionalFields[i]; builder.addDetails( additionalField, null, null ); } report.setRootGroup( builder.create() ); return report; }