tecgraf.javautils.gui.print
Class DefaultPrintableReport

java.lang.Object
  extended by tecgraf.javautils.gui.print.DefaultPrintableReport
All Implemented Interfaces:
Pageable, Printable, PrintableReport

public class DefaultPrintableReport
extends Object
implements PrintableReport

Implementação padrão do relatório a ser impresso.

See Also:
DefaultPrintableReportSample

Field Summary
protected  PrintableReportItem footer
          Texto que deve ser impresso em todas as páginas do relatório no inferior
protected  PrintableReportItem header
          Texto que deve ser impresso em todas as páginas do relatório no topo
protected  List<PrintableReportItem> printables
          Lista dos item a serem impressos no relatório sequencialmente
 
Fields inherited from interface java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
 
Fields inherited from interface java.awt.print.Pageable
UNKNOWN_NUMBER_OF_PAGES
 
Constructor Summary
DefaultPrintableReport(List<PrintableReportItem> printables)
          Construtor.
 
Method Summary
protected  boolean adjustPrintable(PageFormat format, float printableHeight, boolean adjustY)
          Ajusta o formato do página, reduzindo a altura do item impresso.
 int getCurrentPage()
          Obtém a página corrente do relatório, para que possa ser utilizada como indicação da página impressa.
 int getNumberOfPages()
          
 PageFormat getPageFormat(int pageIndex)
          
 Printable getPrintable(int pageIndex)
          
 void initPrinting(PrintConfiguration configuration)
          Prepara a impressão com determinada configuração de impressão.
 int print(Graphics graphics, PageFormat pageFormat, int pageIndex)
          
protected  void printFooter(Graphics2D g2, PageFormat format, int pageIndex, boolean print)
          Imprime o footer da página.
 void setFooter(PrintableReportItem footer)
          Indica o texto que deve ser impresso em todas as páginas do relatório, na parte inferior da página.
 void setHeader(PrintableReportItem header)
          Indica o texto que deve ser impresso em todas as páginas do relatório, no topo da página.
 void setHorizontalMargin(double horizontalMargin)
          Indica a margem horizontal do papel.
 void setOrientation(int orientation)
          Indica a orientação da página.
 void setPrintables(List<PrintableReportItem> printables)
          Indica a lista dos item a serem impressos no relatório sequencialmente.
 void setVerticalMargin(double verticalMargin)
          Indica a margem vertical do papel.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

header

protected PrintableReportItem header
Texto que deve ser impresso em todas as páginas do relatório no topo


printables

protected List<PrintableReportItem> printables
Lista dos item a serem impressos no relatório sequencialmente


footer

protected PrintableReportItem footer
Texto que deve ser impresso em todas as páginas do relatório no inferior

Constructor Detail

DefaultPrintableReport

public DefaultPrintableReport(List<PrintableReportItem> printables)
Construtor.

Parameters:
printables - itens a serem impressos.
Method Detail

setHorizontalMargin

public void setHorizontalMargin(double horizontalMargin)
Indica a margem horizontal do papel. A margem horizontal independe da orientação da página.

Specified by:
setHorizontalMargin in interface PrintableReport
Parameters:
horizontalMargin - a margem horizontal.

setVerticalMargin

public void setVerticalMargin(double verticalMargin)
Indica a margem vertical do papel. A margem vertical independe da orientação da página.

Specified by:
setVerticalMargin in interface PrintableReport
Parameters:
verticalMargin - a margem vertical do papel.

setOrientation

public void setOrientation(int orientation)
Indica a orientação da página.

Specified by:
setOrientation in interface PrintableReport
Parameters:
orientation - a orientação da página.
See Also:
PageFormat

setHeader

public void setHeader(PrintableReportItem header)
Indica o texto que deve ser impresso em todas as páginas do relatório, no topo da página.

Specified by:
setHeader in interface PrintableReport
Parameters:
header - texto a ser impresso em todas as páginas do relatório, no topo da página.

setPrintables

public void setPrintables(List<PrintableReportItem> printables)
Indica a lista dos item a serem impressos no relatório sequencialmente.

Specified by:
setPrintables in interface PrintableReport
Parameters:
printables - lista dos item a serem impressos no relatório.

setFooter

public void setFooter(PrintableReportItem footer)
Indica o texto que deve ser impresso em todas as páginas do relatório, na parte inferior da página.

Specified by:
setFooter in interface PrintableReport
Parameters:
footer - texto a ser impresso em todas as páginas do relatório, na parte inferior da página.

getCurrentPage

public int getCurrentPage()
Obtém a página corrente do relatório, para que possa ser utilizada como indicação da página impressa.

Specified by:
getCurrentPage in interface PrintableReport
Returns:
página corrente do relatório.

print

public int print(Graphics graphics,
                 PageFormat pageFormat,
                 int pageIndex)
          throws PrinterException

Specified by:
print in interface Printable
Throws:
PrinterException

printFooter

protected void printFooter(Graphics2D g2,
                           PageFormat format,
                           int pageIndex,
                           boolean print)
Imprime o footer da página.

Parameters:
g2 - contexto gráfico.
format - formato da página.
pageIndex - índice da página.
print - indica se o footer deve ser impresso (true) ou se o mesmo somente terá sua impressão simulada (false).

adjustPrintable

protected boolean adjustPrintable(PageFormat format,
                                  float printableHeight,
                                  boolean adjustY)
Ajusta o formato do página, reduzindo a altura do item impresso. O papel sempre é visto na vertical, independente do formato da página.

Parameters:
format - formato do papel a ser ajustado.
printableHeight - altura do item impresso.
adjustY - indica se deve ajustar a coordenada vertical.
Returns:
verdadeiro se a página continua válida.

getNumberOfPages

public int getNumberOfPages()

Specified by:
getNumberOfPages in interface Pageable

getPageFormat

public PageFormat getPageFormat(int pageIndex)
                         throws IndexOutOfBoundsException

Specified by:
getPageFormat in interface Pageable
Throws:
IndexOutOfBoundsException

getPrintable

public Printable getPrintable(int pageIndex)
                       throws IndexOutOfBoundsException

Specified by:
getPrintable in interface Pageable
Throws:
IndexOutOfBoundsException

initPrinting

public void initPrinting(PrintConfiguration configuration)
Prepara a impressão com determinada configuração de impressão.

Specified by:
initPrinting in interface PrintableReport
Parameters:
configuration - configuração de impressão.


Copyright © 2014 Tecgraf/PUC-Rio. All rights reserved.