Package com.inductiveautomation.rm.shape
Class RMDocument
java.lang.Object
com.inductiveautomation.rm.base.RMListenerList
com.inductiveautomation.rm.base.RMObject
com.inductiveautomation.rm.shape.RMShape
com.inductiveautomation.rm.shape.RMParentShape
com.inductiveautomation.rm.shape.RMDocument
- All Implemented Interfaces:
Archivable
,DeepChangeListener
,RMPropertyChanger
,RMTypes
,PropertyChangeListener
,Cloneable
,EventListener
The RMDocument class represents a ReportMill document and is also an RMShape subclass, so it can be a real part of
the document/shape hierarchy. RMDocuments are also what ReportMill refers to as templates, and is commonly used like
this:
RMDocument template = new RMDocument(aSource); // Load from path String, File, byte array, etc. RMDocument report = template.generateReport(aDataset); // Any Java dataset: EJBs, custom classes, collctns, etc. report.writePDF("MyReport.pdf");
On rare occasions, you may also want to create a document dynamically. Here's an example:
RMDocument doc = new RMDocument(612, 792); // Standard US Letter size (8.5" x 11"), in points RMTable table = new RMTable(); // Create new table ... doc.getPage(0).addChild(table); // ... and add to first page table.setBounds(36, 36, 540, 680); // Position and size table table.getRow("Objects Details").getColumn(0).setText("Title: @getTitle@"); // Configure first text
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
static enum
static enum
Nested classes/interfaces inherited from interface com.inductiveautomation.rm.base.RMTypes
RMTypes.Align, RMTypes.AlignX, RMTypes.AlignY
-
Field Summary
FieldsFields inherited from class com.inductiveautomation.rm.shape.RMShape
BINDING_PROP_NAME, STROKE_BORDER, STROKE_DOUBLE, STROKE_HIDDEN, STROKE_SHAPE
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a plain empty document.RMDocument
(double aWidth, double aHeight) Creates a document with the given width and height (in printer points).RMDocument
(Object aSource) Creates a new document from the given source. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Editor method indicates that document accepts children (should probably be false).void
Override to make sure document has size.addPage()
Adds a new page to this document.void
Adds a given page to this document.void
Adds a given page to this document at the given index.void
addPages
(RMDocument aDoc) Add the pages in the given document to this document (at end) and clears the pages list in the given document.boolean
Editor method indicates that pages super select immediately.clone()
Copies basic document attributes (shallow copy only - no children or pages).protected double
computePrefHeight
(double aWidth) Override to return height * PageCount (plus spacing) for Continuous, height * PageCount/2 for ContinuousDouble, and height * 2 for Quadruple.protected double
computePrefWidth
(double aHeight) Override to return double page width for PageLayout.Double, Facing, & Quadruple.Creates a new page.protected void
fromXMLShape
(RXArchiver anArchiver, RXElement anElement) XML unarchival.Returns a generated report from this template evaluated against the given object.generateReport
(Object theObjects) Returns a generated report from this template evaluated against the given object.generateReport
(Object objects, boolean paginate) Returns a generated report from this template evaluated against the given object with an option to paginate.generateReport
(Object objects, Object userInfo) Returns a generated report from this template evaluated against the given object and userInfo.generateReport
(Object theObjects, Object theUserInfo, boolean aPaginateFlag) Returns generated report from this template evaluated against given object/userInfo (with option to paginate).byte[]
Returns a single jpeg that includes all pages and is (pageCount * pageHeight) tallbyte[]
Returns a single png that includes all pages and is (pageCount * pageHeight) tallgetAnimator
(int anIndex) Returns the animator for a specific page.Returns the animator for the last page.Returns the autosizing default.byte[]
getBytes()
Returns the document as an XML byte array.byte[]
Returns the document as a byte array of a CSV file.byte[]
getBytesDelimitedAscii
(String fieldDelimiter, String recordDelimiter, boolean quoteFields) Returns the document as a byte array of a delimited ASCII file (using given field, record separator strings).byte[]
Deprecated.byte[]
Returns the document as a byte array of an HTML file.byte[]
Returns the document as byte array of a JPEG file.byte[]
Returns the document as a byte array of a PDF file.byte[]
Returns the document as byte array of PNG file.byte[]
Returns the document as byte array of an Excel file.byte[]
Returns the document as byte array of an Excel XLSX file.boolean
Returns whether the document should compress images in generated file formats like PDF.Returns the entity this shape should show in keys browser.Returns the RMDataSource associated with this document.Returns the schema for the RMDataSource associated with this document (convenience).static RMDocument
Creates a new document from aSource using RMArchiver.Returns the document itself (over-ridden from RMShape).Returns the filename associated with this document, if available.getFont()
Returns the document's default font.double
Returns the grid spacing for the document's grid.boolean
getLoops()
Returns whether the last animator loops.double
Returns the margin rects bottom value.double
Returns the margin rects left value.Returns the margin rect for this document.Returns the default margin rect.double
Returns the margin rects right value.double
Returns the margin rects top value.float
Returns the total time needed to animate this document (total of all page animators).Returns the string used to replace any occurrances of null values in a generated report.getPage
(int anIndex) Returns the page at the given index.int
Returns the number of pages in this document.Returns the last page (convenience).Returns the page layout for the document.getPages()
Returns the list of pages associated with this document.Returns the size of a document page.Returns the default page size.double
getPointsFromUnits
(double aValue) Converts given value from document units to printer points (1/72 of an inch).Returns the URL this document should be uploaded to.int
Returns the current page index of this document.Returns the currently selected page of this document.boolean
Returns whether the document should show an alignment grid.boolean
Returns whether the document should show a margin rect.boolean
Returns whether the document should snap to an alignment grid.boolean
Returns whether the document should snap to a margin rect.Returns the document as a string of a CSV file.getStringDelimitedText
(String fieldDelimiter, String recordDelimiter, boolean quoteFields) Returns the document as a string of a delimited text file.getSubreport
(String aName) Returns a subreport document for given name (override to improve).getUnit()
Returns the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS).double
getUnitsFromPoints
(double aValue) Converts given value to document units from printer points (1/72 of an inch).float
Returns the multiplier used to convert printer points to document units.float
Returns the version this document was loaded as.boolean
boolean
Override this for shapes (like a table row) that don't don't make sense to delete by themselves.boolean
Returns whether the document should paginate generated reports by default.protected void
Rebuilds the document according to the selected page and page layout.void
paintShape
(RMShapePainter aPntr) Overrides paint shape, because document should never really paint itself.byte[]
pdfBytes()
Obsolete method for old pdfBytes() method.removePage
(int anIndex) Removes a page from this document.int
removePage
(RMPage aPage) Removes the given page.void
Performs page substitutions on any text fields that were identified as containing @Page@ keys.protected RMShape
rpgChildren
(ReportOwner anRptOwner, RMParentShape aParent) Override to handle ShapeLists special.void
setBypassImageCache
(boolean b) void
setCompress
(boolean aValue) Sets whether the document should compress images in generated file formats like PDF.void
setDataSource
(RMDataSource aDataSource) Sets the RMDataSource associated with this document.void
Sets the document default font.void
setGridSpacing
(double aValue) Sets the grid spacing for the document's grid.void
setMarginRect
(RMRect aRect) Sets the margin rect for this document.void
setMargins
(double left, double right, double top, double bottom) Sets the margin rect for this document.void
setNullString
(String aValue) Sets the string used to replace any occurrances of null values in a generated report.void
setPageLayout
(RMDocument.PageLayout aValue) Sets the page layout for the document.void
setPageLayout
(String aValue) Set page layout from string.void
setPageSize
(double aWidth, double aHeight) Sets the size of the document (and all of its pages).void
setPaginate
(boolean aValue) Sets whether the document should paginate generated reports by default.void
setPublishUrl
(String aValue) Sets the URL this document should be uploaded to.void
setSelectedIndex
(int anIndex) Selects the currently selected page by index.void
setSelectedPage
(RMPage aPage) Selects the given page.void
setShowGrid
(boolean aValue) Sets whether the document should show an alignment grid.void
setShowMargin
(boolean aValue) Sets whether the document should show a margin rect.void
setSnapGrid
(boolean aValue) Sets whether the document should snap to an alignment grid.void
setSnapMargin
(boolean aValue) Sets whether the document should snap to a margin rect.void
setUnit
(RMDocument.Unit aValue) Sets the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS).void
Sets the units used to express sizes in the current document with one of the strings: point, inch or cm.boolean
Editor method indicates that document is super selectable.toXML()
Returns RXElement for document.protected void
toXMLChildren
(RXArchiver anArchiver, RXElement anElement) XML archival of children.protected RXElement
toXMLShape
(RXArchiver anArchiver) XML archival.void
Writes the document to the given File objectvoid
Writes the document out to the given path String (it extracts type from path extension).void
writeExcel
(String path) Deprecated.void
Writes the document to the given path String as PDF.void
writePDFBytes
(OutputStream outputStream) writes the bytes for a PDF directly to the supplied output stream, closing it once completed.void
Writes the document to the given path String as Excel Xlsx format.void
Writes the document to the given path String as Excel Xlsx format.Methods inherited from class com.inductiveautomation.rm.shape.RMParentShape
addChild, addChild, addChild, addLayoutChild, bringShapesToFront, cloneDeep, divideShapeFromTop, fromXML, fromXMLChildren, getBoundsOfChildren, getChild, getChildArray, getChildContaining, getChildCount, getChildLast, getChildren, getChildrenIntersecting, getChildrenWithClass, getChildrenWithClass, getChildWithClass, getChildWithName, getLayout, getNeedsLayout, getSourceURL, indexOfChild, isHittable, isShowing, isSourceURLSet, layout, relayout, removeChild, removeChild, removeChildren, removeLayoutChild, rpgAll, sendShapesToBack, setHeight, setLayout, setNeedsLayout, setSourceURL, setWidth, toXML
Methods inherited from class com.inductiveautomation.rm.shape.RMShape
acceptsMouse, addBinding, addBinding, addDeepChangeListener, addMouseListener, animUpdate, bounds, contains, convertedPointFromShape, convertedPointToShape, convertedRectFromShape, convertedRectToShape, convertedVectorFromShape, convertedVectorToShape, convertFromShape, convertPathFromShape, convertPathToShape, convertPointFromShape, convertPointToShape, convertRectFromShape, convertRectToShape, convertToShape, convertVectorFromShape, convertVectorToShape, copyShape, createDivideShapeRemainder, deepChange, divideShapeFromEdge, get, get, getAlignment, getAlignmentX, getAlignmentY, getAncestor, getAncestorCount, getAncestorInCommon, getAnimator, getAnimator, getAutosizing, getBestHeight, getBestHeight, getBestWidth, getBestWidth, getBinding, getBinding, getBindingCount, getBindings, getBounds, getBoundsInside, getBoundsMarked, getBoundsMarkedDeep, getChildAnimator, getChildAnimator, getChildClipShape, getClipShape, getColor, getDashArrayString, getDashPhase, getDatasetKey, getDisplayedFill, getDisplayedStroke, getEffect, getEventAdapter, getFill, getFormat, getFrame, getFrameHeight, getFrameMaxX, getFrameMaxY, getFrameWidth, getFrameX, getFrameXY, getFrameY, getHeight, getHover, getLayoutInfo, getMaskPath, getMaxX, getMaxY, getMinHeight, getMinHeight, getMinWidth, getMinWidth, getName, getOpacity, getOpacityDeep, getOutline, getPageBreak, getPageBreakMax, getPageBreakPage, getPageBreakPageMax, getPageShape, getParent, getParent, getPath, getPathInBounds, getPrefHeight, getPrefHeight, getPrefWidth, getPrefWidth, getPropertyNameMapped, getPropertyNames, getPropertyNames, getRoll, getRootShape, getRSS, getScaleX, getScaleY, getShapesToAncestor, getShapesToDescendant, getShapesToShape, getSize, getSkewX, getSkewY, getStroke, getStrokeColor, getStrokeOnTop, getStrokeStyle, getStrokeWidth, getTextColor, getTimeline, getTimeline, getTransform, getTransformFromShape, getTransformInverse, getTransformToShape, getUndoer, getURL, getVisbileBounds, getVisibleBounds, getVisibleBounds, getVisibleBounds, getWidth, getX, getXY, getXYP, getY, height, indexOf, intersects, isAncestor, isAnimProperty, isDescendant, isEditing, isEnabled, isFontSet, isHittable, isLocked, isMinHeightSet, isMinWidthSet, isPrefHeightSet, isPrefWidthSet, isRoot, isRSS, isShowing, isUnderlined, isUseFill, isUseStroke, isViewing, isVisible, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, offsetXY, page, pageMax, paint, paintShapeAll, paintShapeChildren, paintShapeOver, propertyChange, put, removeBinding, removeBinding, removeDeepChangeListener, removeFromParent, removeMouseListener, repaint, repaint, resolvePageReferences, rpgBindings, rpgShape, setAlignment, setAlignmentX, setAlignmentY, setAutosizing, setBestHeight, setBestSize, setBounds, setBounds, setColor, setDashArrayString, setDashPhase, setEffect, setEnabled, setFill, setFormat, setFrame, setFrame, setFrameSize, setFrameX, setFrameXY, setFrameXY, setFrameY, setHover, setLayoutInfo, setLocked, setMinHeight, setMinSize, setMinWidth, setName, setOpacity, setOutline, setParent, setPrefHeight, setPrefWidth, setRoll, setScaleX, setScaleXY, setScaleY, setShowing, setSize, setSize, setSkewX, setSkewXY, setSkewY, setStroke, setStrokeColor, setStrokeStyle, setStrokeWidth, setTextColor, setTime, setTimeline, setUnderlined, setURL, setUseFill, setUseStroke, setVisible, setX, setXY, setXY, setXYP, setY, shapeHidden, shapeShown, toString, undoerDisable, undoerEnable, undoerSetUndoTitle, width, x, y
Methods inherited from class com.inductiveautomation.rm.base.RMObject
addPropertyChangeListener, firePropertyChange, firePropertyChange, firePropertyChange, getPCEvent, removePropertyChangeListener, sendPropertyChange
Methods inherited from class com.inductiveautomation.rm.base.RMListenerList
addListener, getListener, getListenerCount, getListenerCount, getListenerList, getListeners, hasListeners, removeListener
-
Field Details
-
DEFAULT_NULL_STR
- See Also:
-
_locale
-
-
Constructor Details
-
RMDocument
public RMDocument()Creates a plain empty document. It's really only used by the archiver. -
RMDocument
public RMDocument(double aWidth, double aHeight) Creates a document with the given width and height (in printer points). -
RMDocument
Creates a new document from the given source.
-
-
Method Details
-
getDoc
Creates a new document from aSource using RMArchiver. -
getFilename
Returns the filename associated with this document, if available. -
getFont
Returns the document's default font. -
setFont
Sets the document default font. -
getVersion
public float getVersion()Returns the version this document was loaded as. -
getPageCount
public int getPageCount()Returns the number of pages in this document. -
getPage
Returns the page at the given index. -
getPageLast
Returns the last page (convenience). -
getPages
Returns the list of pages associated with this document. -
addPage
Adds a new page to this document. -
addPage
Adds a given page to this document. -
addPage
Adds a given page to this document at the given index. -
removePage
Removes a page from this document. -
removePage
Removes the given page. -
createPage
Creates a new page. -
addChild
Override to make sure document has size.- Overrides:
addChild
in classRMParentShape
-
addPages
Add the pages in the given document to this document (at end) and clears the pages list in the given document. -
getSelectedIndex
public int getSelectedIndex()Returns the current page index of this document. -
setSelectedIndex
public void setSelectedIndex(int anIndex) Selects the currently selected page by index. -
getSelectedPage
Returns the currently selected page of this document. -
setSelectedPage
Selects the given page. -
getPageLayout
Returns the page layout for the document. -
setPageLayout
Sets the page layout for the document. -
setPageLayout
Set page layout from string. -
getUnit
Returns the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS). -
setUnit
Sets the units used to express sizes in the current document (POINTS, INCHES, CENTIMETERS). -
setUnit
Sets the units used to express sizes in the current document with one of the strings: point, inch or cm. -
getPointsFromUnits
public double getPointsFromUnits(double aValue) Converts given value from document units to printer points (1/72 of an inch). -
getUnitsFromPoints
public double getUnitsFromPoints(double aValue) Converts given value to document units from printer points (1/72 of an inch). -
getUnitsMultiplier
public float getUnitsMultiplier()Returns the multiplier used to convert printer points to document units. -
getShowGrid
public boolean getShowGrid()Returns whether the document should show an alignment grid. -
setShowGrid
public void setShowGrid(boolean aValue) Sets whether the document should show an alignment grid. -
getSnapGrid
public boolean getSnapGrid()Returns whether the document should snap to an alignment grid. -
setSnapGrid
public void setSnapGrid(boolean aValue) Sets whether the document should snap to an alignment grid. -
getGridSpacing
public double getGridSpacing()Returns the grid spacing for the document's grid. -
setGridSpacing
public void setGridSpacing(double aValue) Sets the grid spacing for the document's grid. -
getShowMargin
public boolean getShowMargin()Returns whether the document should show a margin rect. -
setShowMargin
public void setShowMargin(boolean aValue) Sets whether the document should show a margin rect. -
getSnapMargin
public boolean getSnapMargin()Returns whether the document should snap to a margin rect. -
setSnapMargin
public void setSnapMargin(boolean aValue) Sets whether the document should snap to a margin rect. -
getMarginRect
Returns the margin rect for this document. -
setMarginRect
Sets the margin rect for this document. -
getMarginRectDefault
Returns the default margin rect. -
setMargins
public void setMargins(double left, double right, double top, double bottom) Sets the margin rect for this document. -
getMarginLeft
public double getMarginLeft()Returns the margin rects left value. -
getMarginRight
public double getMarginRight()Returns the margin rects right value. -
getMarginTop
public double getMarginTop()Returns the margin rects top value. -
getMarginBottom
public double getMarginBottom()Returns the margin rects bottom value. -
getPageSize
Returns the size of a document page. -
setPageSize
public void setPageSize(double aWidth, double aHeight) Sets the size of the document (and all of its pages). -
getPageSizeDefault
Returns the default page size. -
getAutosizingDefault
Returns the autosizing default.- Overrides:
getAutosizingDefault
in classRMShape
-
getDataSource
Returns the RMDataSource associated with this document. -
setDataSource
Sets the RMDataSource associated with this document. -
getDataSourceSchema
Returns the schema for the RMDataSource associated with this document (convenience). -
getDatasetEntity
Returns the entity this shape should show in keys browser.- Overrides:
getDatasetEntity
in classRMShape
-
getPublishUrl
Returns the URL this document should be uploaded to. -
setPublishUrl
Sets the URL this document should be uploaded to. -
getNullString
Returns the string used to replace any occurrances of null values in a generated report. -
setNullString
Sets the string used to replace any occurrances of null values in a generated report. -
setBypassImageCache
public void setBypassImageCache(boolean b) -
isBypassImageCache
public boolean isBypassImageCache() -
isPaginate
public boolean isPaginate()Returns whether the document should paginate generated reports by default. -
setPaginate
public void setPaginate(boolean aValue) Sets whether the document should paginate generated reports by default. -
getCompress
public boolean getCompress()Returns whether the document should compress images in generated file formats like PDF. -
setCompress
public void setCompress(boolean aValue) Sets whether the document should compress images in generated file formats like PDF. -
getBytes
public byte[] getBytes()Returns the document as an XML byte array. -
getBytesPDF
public byte[] getBytesPDF()Returns the document as a byte array of a PDF file. -
writePDFBytes
writes the bytes for a PDF directly to the supplied output stream, closing it once completed.- Throws:
IOException
-
getBytesHTML
public byte[] getBytesHTML()Returns the document as a byte array of an HTML file. -
getBytesCSV
public byte[] getBytesCSV()Returns the document as a byte array of a CSV file. -
getBytesDelimitedAscii
public byte[] getBytesDelimitedAscii(String fieldDelimiter, String recordDelimiter, boolean quoteFields) Returns the document as a byte array of a delimited ASCII file (using given field, record separator strings). -
getBytesExcel
Deprecated.usegetBytesXlsx()
Returns the document as byte array of an Excel file. -
getBytesXlsx
public byte[] getBytesXlsx()Returns the document as byte array of an Excel XLSX file. -
getBytesRTF
public byte[] getBytesRTF()Returns the document as byte array of an Excel file. -
getBytesJPEG
public byte[] getBytesJPEG()Returns the document as byte array of a JPEG file. -
getBytesPNG
public byte[] getBytesPNG()Returns the document as byte array of PNG file. -
getAllPagesBytesPNG
public byte[] getAllPagesBytesPNG()Returns a single png that includes all pages and is (pageCount * pageHeight) tall -
getAllPagesBytesJPEG
public byte[] getAllPagesBytesJPEG()Returns a single jpeg that includes all pages and is (pageCount * pageHeight) tall -
getStringCSV
Returns the document as a string of a CSV file. -
getStringDelimitedText
public String getStringDelimitedText(String fieldDelimiter, String recordDelimiter, boolean quoteFields) Returns the document as a string of a delimited text file. -
write
Writes the document out to the given path String (it extracts type from path extension). -
write
Writes the document to the given File object -
writePDF
Writes the document to the given path String as PDF. -
writeExcel
Deprecated.Writes the document to the given path String as Excel.- Parameters:
path
- the save path, must not be null
-
writeXlsx
Writes the document to the given path String as Excel Xlsx format.- Parameters:
path
- the save path, must not be null
-
writeXlsx
Writes the document to the given path String as Excel Xlsx format.- Parameters:
file
- the file to save to, must not be null
-
getMaxTime
public float getMaxTime()Returns the total time needed to animate this document (total of all page animators). -
getDocument
Returns the document itself (over-ridden from RMShape).- Overrides:
getDocument
in classRMShape
-
getAnimator
Returns the animator for a specific page. -
getAnimatorLast
Returns the animator for the last page. -
getLoops
public boolean getLoops()Returns whether the last animator loops. -
getSubreport
Returns a subreport document for given name (override to improve). -
paintShape
Overrides paint shape, because document should never really paint itself.- Overrides:
paintShape
in classRMShape
-
generateReport
Returns a generated report from this template evaluated against the given object. -
generateReport
Returns a generated report from this template evaluated against the given object. -
generateReport
Returns a generated report from this template evaluated against the given object and userInfo. -
generateReport
Returns a generated report from this template evaluated against the given object with an option to paginate. -
generateReport
Returns generated report from this template evaluated against given object/userInfo (with option to paginate). -
rpgChildren
Override to handle ShapeLists special.- Overrides:
rpgChildren
in classRMParentShape
-
resolvePageReferences
public void resolvePageReferences()Performs page substitutions on any text fields that were identified as containing @Page@ keys. -
layoutChildren
protected void layoutChildren()Rebuilds the document according to the selected page and page layout.- Overrides:
layoutChildren
in classRMParentShape
-
computePrefWidth
protected double computePrefWidth(double aHeight) Override to return double page width for PageLayout.Double, Facing, & Quadruple. return a double value for the width.- Overrides:
computePrefWidth
in classRMParentShape
-
computePrefHeight
protected double computePrefHeight(double aWidth) Override to return height * PageCount (plus spacing) for Continuous, height * PageCount/2 for ContinuousDouble, and height * 2 for Quadruple.- Overrides:
computePrefHeight
in classRMParentShape
- Returns:
- a double value for the height.
-
toXML
Returns RXElement for document. -
clone
Copies basic document attributes (shallow copy only - no children or pages).- Overrides:
clone
in classRMParentShape
-
toXMLShape
XML archival.- Overrides:
toXMLShape
in classRMParentShape
-
toXMLChildren
XML archival of children.- Overrides:
toXMLChildren
in classRMParentShape
-
fromXMLShape
XML unarchival.- Overrides:
fromXMLShape
in classRMParentShape
-
superSelectable
public boolean superSelectable()Editor method indicates that document is super selectable.- Overrides:
superSelectable
in classRMShape
-
childrenSuperSelectImmediately
public boolean childrenSuperSelectImmediately()Editor method indicates that pages super select immediately.- Overrides:
childrenSuperSelectImmediately
in classRMShape
-
acceptsChildren
public boolean acceptsChildren()Editor method indicates that document accepts children (should probably be false).- Overrides:
acceptsChildren
in classRMShape
-
pdfBytes
public byte[] pdfBytes()Obsolete method for old pdfBytes() method. -
isDeletable
public boolean isDeletable()Description copied from class:RMShape
Override this for shapes (like a table row) that don't don't make sense to delete by themselves.- Overrides:
isDeletable
in classRMShape
-
getBytesXlsx()