Class AbstractSpreadSheetPdfProclet
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.flow.transformer.pdfproclet.AbstractPdfProclet
-
- adams.flow.transformer.pdfproclet.AbstractPdfProcletWithFilenameOutput
-
- adams.flow.transformer.pdfproclet.AbstractPdfProcletWithPageBreaks
-
- adams.flow.transformer.pdfproclet.AbstractSpreadSheetPdfProclet
-
- All Implemented Interfaces:
Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,SizeOfHandler
,PdfProclet
,PdfProcletWithAbsolutePosition
,PdfProcletWithFilenameOutput
,PdfProcletWithOptionalAbsolutePosition
,PdfProcletWithPageBreaks
,PdfProcletWithVariableFileExtension
,Serializable
- Direct Known Subclasses:
ConfusionMatrix
,SpreadSheet
public abstract class AbstractSpreadSheetPdfProclet extends AbstractPdfProcletWithPageBreaks implements PdfProcletWithVariableFileExtension, PdfProcletWithOptionalAbsolutePosition
Ancestor for proclets that use spreadsheets.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AbstractSpreadSheetPdfProclet.HorizontalAlignment
The horizontal alignment for the table.
-
Field Summary
Fields Modifier and Type Field Description protected Color
m_BackgroundTableHeader
the background color for the table header.protected Color
m_ColorGeneralContent
the color for general content.protected Color
m_ColorNumericContent
the color for the numeric content.protected Color
m_ColorTableHeader
the color for the table header.protected BaseString[]
m_Extensions
the file extensions.protected PdfFont
m_FontGeneralContent
the font for general content.protected PdfFont
m_FontNumericContent
the font for numeric content.protected PdfFont
m_FontTableHeader
the font for the table header.protected AbstractSpreadSheetPdfProclet.HorizontalAlignment
m_HorizontalAlignment
the horizontal alignment (if not 100% wide).protected int
m_NumDecimals
the number of decimals for numbers in tables.protected SpreadSheetReader
m_Reader
the reader to use for loading the csv files.protected BaseFloat[]
m_RelativeColumnWidths
the relative column widths (ignored if not provided).protected boolean
m_UseAbsolutePosition
whether to use absolute position.protected float
m_WidthPercentage
the percentage of the page width to occupy.protected float
m_X
the absolute X position.protected float
m_Y
the absolute Y position.-
Fields inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProcletWithPageBreaks
m_NumFilesPerPage, m_PageBreakAfter, m_PageBreakBefore
-
Fields inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProcletWithFilenameOutput
m_AddFilename, m_ColorFilename, m_FontFilename
-
Fields inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProclet
m_RegExpFilename, MATCH_ALL_EXTENSION
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description AbstractSpreadSheetPdfProclet()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description String
backgroundTableHeaderTipText()
Returns the tip text for this property.boolean
canProcess(PDFGenerator generator, Object obj)
Whether the processor can handle this particular object.String
colorGeneralContentTipText()
Returns the tip text for this property.String
colorNumericContentTipText()
Returns the tip text for this property.String
colorTableHeaderTipText()
Returns the tip text for this property.void
defineOptions()
Adds options to the internal list of options.protected abstract boolean
doProcess(PDFGenerator generator, SpreadSheet sheet)
The actual processing of the document.protected boolean
doProcess(PDFGenerator generator, File file)
The actual processing of the document.protected boolean
doProcess(PDFGenerator generator, Object obj)
The actual processing of the document.String
extensionsTipText()
Returns the tip text for this property.String
fontGeneralContentTipText()
Returns the tip text for this property.String
fontNumericContentTipText()
Returns the tip text for this property.String
fontTableHeaderTipText()
Returns the tip text for this property.Color
getBackgroundTableHeader()
Returns the background color to use for the table header.Color
getColorGeneralContent()
Returns the color to use for general content.Color
getColorNumericContent()
Returns the color to use for numeric content.Color
getColorTableHeader()
Returns the color to use for the table header.BaseString[]
getExtensions()
Returns the extensions that the processor can process.PdfFont
getFontGeneralContent()
Returns the font to use for adding the content.PdfFont
getFontNumericContent()
Returns the font to use for adding the content.PdfFont
getFontTableHeader()
Returns the font to use for the table header.AbstractSpreadSheetPdfProclet.HorizontalAlignment
getHorizontalAlignment()
Returns how to align the table on the page when not 100% wide.int
getNumDecimals()
Returns the number of decimals for numbers in tables.SpreadSheetReader
getReader()
Returns the reader for the spreadsheets.BaseFloat[]
getRelativeColumnWidths()
Returns the relative column widths (0-1), ignored if not provided, uses 1 by default.boolean
getUseAbsolutePosition()
Returns whether absolute positioning is used (from bottom-left corner).float
getWidthPercentage()
Returns the percentage of the page with to occupy.float
getX()
Returns the absolute X position.float
getY()
Returns the absolute Y position.String
horizontalAlignmentTipText()
Returns the tip text for this property.String
numDecimalsTipText()
Returns the tip text for this property.String
readerTipText()
Returns the tip text for this property.protected float[]
relativeColumnsWidths(SpreadSheet sheet)
Computes the relative column widths.String
relativeColumnWidthsTipText()
Returns the tip text for this property.void
setBackgroundTableHeader(Color value)
Sets the background color to use for the table header.void
setColorGeneralContent(Color value)
Sets the color to use for general content.void
setColorNumericContent(Color value)
Sets the color to use for numeric content.void
setColorTableHeader(Color value)
Sets the color to use for the table header.void
setExtensions(BaseString[] value)
Sets the extensions that the processor can process.void
setFontGeneralContent(PdfFont value)
Sets the font to use for adding general content.void
setFontNumericContent(PdfFont value)
Sets the font to use for adding general content.void
setFontTableHeader(PdfFont value)
Sets the font to use for the table header.void
setHorizontalAlignment(AbstractSpreadSheetPdfProclet.HorizontalAlignment value)
Sets how to align the table on the page when not 100% wide.void
setNumDecimals(int value)
Sets the number of decimals for numbers in tables.void
setReader(SpreadSheetReader value)
Sets the reader for the spreadsheets.void
setRelativeColumnWidths(BaseFloat[] value)
Sets the relative column widths (0-1), ignored if not provided, uses 1 by default.void
setUseAbsolutePosition(boolean value)
Sets whether to use absolute positioning (from bottom-left corner).void
setWidthPercentage(float value)
Sets the percentage of the page width to occupy.void
setX(float value)
Sets the absolute X position.void
setY(float value)
Sets the absolute Y position.protected com.itextpdf.text.BaseColor
toBaseColor(Color color)
Converts the color into itextpdf color.String
useAbsolutePositionTipText()
Returns the tip text for this property.String
widthPercentageTipText()
Returns the tip text for this property.String
XTipText()
Returns the tip text for this property.String
YTipText()
Returns the tip text for this property.-
Methods inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProcletWithPageBreaks
getNumFilesPerPage, getPageBreakAfter, getPageBreakBefore, numFilesPerPageTipText, pageBreakAfterTipText, pageBreakBeforeTipText, postProcess, postProcess, preProcess, preProcess, setNumFilesPerPage, setPageBreakAfter, setPageBreakBefore
-
Methods inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProcletWithFilenameOutput
addFilename, addFilenameTipText, colorFilenameTipText, fontFilenameTipText, getAddFilename, getColorFilename, getFontFilename, setAddFilename, setColorFilename, setFontFilename
-
Methods inherited from class adams.flow.transformer.pdfproclet.AbstractPdfProclet
addColumnTextAt, addElement, canProcess, getRegExpFilename, process, process, regExpFilenameTipText, setRegExpFilename
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, globalInfo, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.Destroyable
destroy
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager, toCommandLine
-
Methods inherited from interface adams.flow.transformer.pdfproclet.PdfProclet
canProcess, getRegExpFilename, process, process, regExpFilenameTipText, setRegExpFilename
-
-
-
-
Field Detail
-
m_FontTableHeader
protected PdfFont m_FontTableHeader
the font for the table header.
-
m_ColorTableHeader
protected Color m_ColorTableHeader
the color for the table header.
-
m_BackgroundTableHeader
protected Color m_BackgroundTableHeader
the background color for the table header.
-
m_FontGeneralContent
protected PdfFont m_FontGeneralContent
the font for general content.
-
m_ColorGeneralContent
protected Color m_ColorGeneralContent
the color for general content.
-
m_FontNumericContent
protected PdfFont m_FontNumericContent
the font for numeric content.
-
m_ColorNumericContent
protected Color m_ColorNumericContent
the color for the numeric content.
-
m_Extensions
protected BaseString[] m_Extensions
the file extensions.
-
m_NumDecimals
protected int m_NumDecimals
the number of decimals for numbers in tables.
-
m_Reader
protected SpreadSheetReader m_Reader
the reader to use for loading the csv files.
-
m_WidthPercentage
protected float m_WidthPercentage
the percentage of the page width to occupy.
-
m_HorizontalAlignment
protected AbstractSpreadSheetPdfProclet.HorizontalAlignment m_HorizontalAlignment
the horizontal alignment (if not 100% wide).
-
m_UseAbsolutePosition
protected boolean m_UseAbsolutePosition
whether to use absolute position.
-
m_X
protected float m_X
the absolute X position.
-
m_Y
protected float m_Y
the absolute Y position.
-
m_RelativeColumnWidths
protected BaseFloat[] m_RelativeColumnWidths
the relative column widths (ignored if not provided).
-
-
Method Detail
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractPdfProcletWithPageBreaks
-
setFontTableHeader
public void setFontTableHeader(PdfFont value)
Sets the font to use for the table header.- Parameters:
value
- the font
-
getFontTableHeader
public PdfFont getFontTableHeader()
Returns the font to use for the table header.- Returns:
- the font
-
fontTableHeaderTipText
public String fontTableHeaderTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setColorTableHeader
public void setColorTableHeader(Color value)
Sets the color to use for the table header.- Parameters:
value
- the color
-
getColorTableHeader
public Color getColorTableHeader()
Returns the color to use for the table header.- Returns:
- the color
-
colorTableHeaderTipText
public String colorTableHeaderTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setBackgroundTableHeader
public void setBackgroundTableHeader(Color value)
Sets the background color to use for the table header.- Parameters:
value
- the color
-
getBackgroundTableHeader
public Color getBackgroundTableHeader()
Returns the background color to use for the table header.- Returns:
- the color
-
backgroundTableHeaderTipText
public String backgroundTableHeaderTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setFontGeneralContent
public void setFontGeneralContent(PdfFont value)
Sets the font to use for adding general content.- Parameters:
value
- the font
-
getFontGeneralContent
public PdfFont getFontGeneralContent()
Returns the font to use for adding the content.- Returns:
- the font
-
fontGeneralContentTipText
public String fontGeneralContentTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setColorGeneralContent
public void setColorGeneralContent(Color value)
Sets the color to use for general content.- Parameters:
value
- the color
-
getColorGeneralContent
public Color getColorGeneralContent()
Returns the color to use for general content.- Returns:
- the color
-
colorGeneralContentTipText
public String colorGeneralContentTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setFontNumericContent
public void setFontNumericContent(PdfFont value)
Sets the font to use for adding general content.- Parameters:
value
- the font
-
getFontNumericContent
public PdfFont getFontNumericContent()
Returns the font to use for adding the content.- Returns:
- the font
-
fontNumericContentTipText
public String fontNumericContentTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setColorNumericContent
public void setColorNumericContent(Color value)
Sets the color to use for numeric content.- Parameters:
value
- the color
-
getColorNumericContent
public Color getColorNumericContent()
Returns the color to use for numeric content.- Returns:
- the color
-
colorNumericContentTipText
public String colorNumericContentTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getExtensions
public BaseString[] getExtensions()
Returns the extensions that the processor can process.- Specified by:
getExtensions
in interfacePdfProclet
- Specified by:
getExtensions
in interfacePdfProcletWithVariableFileExtension
- Specified by:
getExtensions
in classAbstractPdfProclet
- Returns:
- the extensions (no dot)
-
setExtensions
public void setExtensions(BaseString[] value)
Sets the extensions that the processor can process.- Specified by:
setExtensions
in interfacePdfProcletWithVariableFileExtension
- Parameters:
value
- the extensions (no dot)
-
extensionsTipText
public String extensionsTipText()
Returns the tip text for this property.- Specified by:
extensionsTipText
in interfacePdfProcletWithVariableFileExtension
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setNumDecimals
public void setNumDecimals(int value)
Sets the number of decimals for numbers in tables.- Parameters:
value
- the number of decimals
-
getNumDecimals
public int getNumDecimals()
Returns the number of decimals for numbers in tables.- Returns:
- the number of decimals
-
numDecimalsTipText
public String numDecimalsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setReader
public void setReader(SpreadSheetReader value)
Sets the reader for the spreadsheets.- Parameters:
value
- the reader
-
getReader
public SpreadSheetReader getReader()
Returns the reader for the spreadsheets.- Returns:
- the reader
-
readerTipText
public String readerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setWidthPercentage
public void setWidthPercentage(float value)
Sets the percentage of the page width to occupy.- Parameters:
value
- the percentage
-
getWidthPercentage
public float getWidthPercentage()
Returns the percentage of the page with to occupy.- Returns:
- the percentage
-
widthPercentageTipText
public String widthPercentageTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setHorizontalAlignment
public void setHorizontalAlignment(AbstractSpreadSheetPdfProclet.HorizontalAlignment value)
Sets how to align the table on the page when not 100% wide.- Parameters:
value
- the alignment
-
getHorizontalAlignment
public AbstractSpreadSheetPdfProclet.HorizontalAlignment getHorizontalAlignment()
Returns how to align the table on the page when not 100% wide.- Returns:
- the alignment
-
horizontalAlignmentTipText
public String horizontalAlignmentTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setUseAbsolutePosition
public void setUseAbsolutePosition(boolean value)
Sets whether to use absolute positioning (from bottom-left corner).- Specified by:
setUseAbsolutePosition
in interfacePdfProcletWithOptionalAbsolutePosition
- Parameters:
value
- true if absolute
-
getUseAbsolutePosition
public boolean getUseAbsolutePosition()
Returns whether absolute positioning is used (from bottom-left corner).- Specified by:
getUseAbsolutePosition
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- true if absolute
-
useAbsolutePositionTipText
public String useAbsolutePositionTipText()
Returns the tip text for this property.- Specified by:
useAbsolutePositionTipText
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setX
public void setX(float value)
Sets the absolute X position.- Specified by:
setX
in interfacePdfProcletWithAbsolutePosition
- Specified by:
setX
in interfacePdfProcletWithOptionalAbsolutePosition
- Parameters:
value
- the X position
-
getX
public float getX()
Returns the absolute X position.- Specified by:
getX
in interfacePdfProcletWithAbsolutePosition
- Specified by:
getX
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- the X position
-
XTipText
public String XTipText()
Returns the tip text for this property.- Specified by:
XTipText
in interfacePdfProcletWithAbsolutePosition
- Specified by:
XTipText
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setY
public void setY(float value)
Sets the absolute Y position.- Specified by:
setY
in interfacePdfProcletWithAbsolutePosition
- Specified by:
setY
in interfacePdfProcletWithOptionalAbsolutePosition
- Parameters:
value
- the Y position
-
getY
public float getY()
Returns the absolute Y position.- Specified by:
getY
in interfacePdfProcletWithAbsolutePosition
- Specified by:
getY
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- the Y position
-
YTipText
public String YTipText()
Returns the tip text for this property.- Specified by:
YTipText
in interfacePdfProcletWithAbsolutePosition
- Specified by:
YTipText
in interfacePdfProcletWithOptionalAbsolutePosition
- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setRelativeColumnWidths
public void setRelativeColumnWidths(BaseFloat[] value)
Sets the relative column widths (0-1), ignored if not provided, uses 1 by default.- Parameters:
value
- the widths
-
getRelativeColumnWidths
public BaseFloat[] getRelativeColumnWidths()
Returns the relative column widths (0-1), ignored if not provided, uses 1 by default.- Returns:
- the widths
-
relativeColumnWidthsTipText
public String relativeColumnWidthsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
toBaseColor
protected com.itextpdf.text.BaseColor toBaseColor(Color color)
Converts the color into itextpdf color.- Parameters:
color
- the color to convert- Returns:
- the converted color
-
relativeColumnsWidths
protected float[] relativeColumnsWidths(SpreadSheet sheet)
Computes the relative column widths.- Parameters:
sheet
- the sheet to determine the number of columns from- Returns:
- the widths
-
doProcess
protected boolean doProcess(PDFGenerator generator, File file) throws Exception
The actual processing of the document.- Specified by:
doProcess
in classAbstractPdfProclet
- Parameters:
generator
- the contextfile
- the file to add- Returns:
- true if successfully added
- Throws:
Exception
- if something goes wrong
-
canProcess
public boolean canProcess(PDFGenerator generator, Object obj)
Whether the processor can handle this particular object.- Specified by:
canProcess
in interfacePdfProclet
- Specified by:
canProcess
in classAbstractPdfProclet
- Parameters:
generator
- the contextobj
- the object to check- Returns:
- true if the object can be handled
-
doProcess
protected abstract boolean doProcess(PDFGenerator generator, SpreadSheet sheet) throws Exception
The actual processing of the document.- Parameters:
generator
- the contextsheet
- the spreadsheet to add- Returns:
- true if successfully added
- Throws:
Exception
- if something goes wrong
-
doProcess
protected boolean doProcess(PDFGenerator generator, Object obj) throws Exception
The actual processing of the document.- Specified by:
doProcess
in classAbstractPdfProclet
- Parameters:
generator
- the contextobj
- the object to add- Returns:
- true if successfully added
- Throws:
Exception
- if something goes wrong
-
-