Package org.apache.poi.xwpf.usermodel
Class XWPFHeaderFooter
- java.lang.Object
-
- org.apache.poi.ooxml.POIXMLDocumentPart
-
- org.apache.poi.xwpf.usermodel.XWPFHeaderFooter
-
- All Implemented Interfaces:
IBody
- Direct Known Subclasses:
XWPFFooter,XWPFHeader
public abstract class XWPFHeaderFooter extends POIXMLDocumentPart implements IBody
Parent of XWPF headers and footers
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
POIXMLDocumentPart.RelationPart
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedXWPFHeaderFooter()XWPFHeaderFooter(POIXMLDocumentPart parent, PackagePart part)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr_getHdrFtr()StringaddPictureData(byte[] pictureData, int format)Adds a picture to the document.StringaddPictureData(InputStream is, int format)Adds a picture to the document.voidclearHeaderFooter()Clears all paragraphs and tables from this header / footerXWPFParagraphcreateParagraph()Adds a new paragraph at the end of the header or footerXWPFTablecreateTable(int rows, int cols)Adds a new table at the end of the header or footerList<XWPFPictureData>getAllPackagePictures()get all Pictures in this packageList<XWPFPictureData>getAllPictures()List<IBodyElement>getBodyElements()Returns an Iterator with paragraphs and tables, in the order that they occur in the text.List<XWPFParagraph>getListParagraph()get a List of all ParagraphsPOIXMLDocumentPartgetOwner()XWPFParagraphgetParagraph(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP p)Returns the paragraph corresponding to the providedCTP.XWPFParagraphgetParagraphArray(int pos)Returns the paragraph that holds the text of the header or footer.List<XWPFParagraph>getParagraphs()Returns the paragraph(s) that holds the text of the header or footer.POIXMLDocumentPartgetPart()returns the Part, to which the body belongs, which you need for adding relationship to other partsXWPFPictureDatagetPictureDataByID(String blipID)returns the PictureData by blipIDXWPFTablegetTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl ctTable)XWPFTablegetTableArray(int pos)Returns the table at position posXWPFTableCellgetTableCell(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTc cell)get the TableCell which belongs to the TableCellList<XWPFTable>getTables()Return the table(s) that holds the text of the header or footer, for complex cases where a paragraph isn't used.StringgetText()Returns the textual content of the header/footer, by flattening out the text of its paragraph(s)XWPFDocumentgetXWPFDocument()Return XWPFDocumentXWPFParagraphinsertNewParagraph(XmlCursor cursor)add a new paragraph at position of the cursorXWPFTableinsertNewTbl(XmlCursor cursor)inserts a new Table at the cursor position.voidinsertTable(int pos, XWPFTable table)inserts an existing XWPFTable to the arrays bodyElements and tablesprotected voidonDocumentRead()Fired when a package part is readprotected voidprepareForCommit()Ensure that a memory based package part does not have lingering data from previous commit() calls.voidreadHdrFtr()voidremoveParagraph(XWPFParagraph paragraph)Removes a specific paragraph from this header / footervoidremoveTable(XWPFTable table)Removes a specific table from this header / footervoidsetHeaderFooter(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr headerFooter)set a new headerFootervoidsetXWPFDocument(XWPFDocument doc)-
Methods inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
_invokeOnDocumentRead, addRelation, commit, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommitted, onDocumentCreate, onDocumentRemove, onSave, read, rebase, removeRelation, removeRelation, removeRelation, setCommitted, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.poi.xwpf.usermodel.IBody
getPartType
-
-
-
-
Constructor Detail
-
XWPFHeaderFooter
protected XWPFHeaderFooter()
-
XWPFHeaderFooter
public XWPFHeaderFooter(POIXMLDocumentPart parent, PackagePart part)
- Since:
- by POI 3.14-Beta1
-
-
Method Detail
-
onDocumentRead
protected void onDocumentRead() throws IOExceptionDescription copied from class:POIXMLDocumentPartFired when a package part is read- Overrides:
onDocumentReadin classPOIXMLDocumentPart- Throws:
IOException- a subclass may throw an IOException when a document is read
-
_getHdrFtr
@Internal public org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr _getHdrFtr()
-
getBodyElements
public List<IBodyElement> getBodyElements()
Description copied from interface:IBodyReturns an Iterator with paragraphs and tables, in the order that they occur in the text.- Specified by:
getBodyElementsin interfaceIBody
-
getParagraphs
public List<XWPFParagraph> getParagraphs()
Returns the paragraph(s) that holds the text of the header or footer. Normally there is only the one paragraph, but there could be more in certain cases, or a table.- Specified by:
getParagraphsin interfaceIBody
-
getTables
public List<XWPFTable> getTables() throws ArrayIndexOutOfBoundsException
Return the table(s) that holds the text of the header or footer, for complex cases where a paragraph isn't used. Normally there's just one paragraph, but some complex headers/footers have a table or two in addition.- Specified by:
getTablesin interfaceIBody- Throws:
ArrayIndexOutOfBoundsException
-
getText
public String getText()
Returns the textual content of the header/footer, by flattening out the text of its paragraph(s)
-
setHeaderFooter
public void setHeaderFooter(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr headerFooter)
set a new headerFooter
-
getTable
public XWPFTable getTable(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl ctTable)
-
getParagraph
public XWPFParagraph getParagraph(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP p)
Description copied from interface:IBodyReturns the paragraph corresponding to the providedCTP.- Specified by:
getParagraphin interfaceIBody- Parameters:
p- is instance of CTP and is searching for an XWPFParagraph- Returns:
- The paragraph corresponding to the
CTP, ornullif there is no corresponding paragraph in this body.
-
getParagraphArray
public XWPFParagraph getParagraphArray(int pos)
Returns the paragraph that holds the text of the header or footer.- Specified by:
getParagraphArrayin interfaceIBody
-
getListParagraph
public List<XWPFParagraph> getListParagraph()
get a List of all Paragraphs- Returns:
- a list of
XWPFParagraph
-
getAllPictures
public List<XWPFPictureData> getAllPictures()
-
getAllPackagePictures
public List<XWPFPictureData> getAllPackagePictures()
get all Pictures in this package- Returns:
- all Pictures in this package
-
addPictureData
public String addPictureData(byte[] pictureData, int format) throws InvalidFormatException
Adds a picture to the document.- Parameters:
pictureData- The picture dataformat- The format of the picture.- Returns:
- the index to this picture (0 based), the added picture can be obtained from
getAllPictures(). - Throws:
InvalidFormatException- If the format of the picture is not known.
-
addPictureData
public String addPictureData(InputStream is, int format) throws InvalidFormatException, IOException
Adds a picture to the document.- Parameters:
is- The stream to read image fromformat- The format of the picture.- Returns:
- the index to this picture (0 based), the added picture can be obtained from
getAllPictures(). - Throws:
InvalidFormatException- If the format of the picture is not known.IOException- If reading the picture-data from the stream fails.
-
getPictureDataByID
public XWPFPictureData getPictureDataByID(String blipID)
returns the PictureData by blipID- Returns:
- XWPFPictureData of a specificID
-
createParagraph
public XWPFParagraph createParagraph()
Adds a new paragraph at the end of the header or footer- Returns:
- new
XWPFParagraphobject
-
createTable
public XWPFTable createTable(int rows, int cols)
Adds a new table at the end of the header or footer- Parameters:
rows- - number of rows in the tablecols- - number of columns in the table- Returns:
- new
XWPFTableobject
-
removeParagraph
public void removeParagraph(XWPFParagraph paragraph)
Removes a specific paragraph from this header / footer- Parameters:
paragraph- -XWPFParagraphobject to remove
-
removeTable
public void removeTable(XWPFTable table)
Removes a specific table from this header / footer- Parameters:
table- -XWPFTableobject to remove
-
clearHeaderFooter
public void clearHeaderFooter()
Clears all paragraphs and tables from this header / footer
-
insertNewParagraph
public XWPFParagraph insertNewParagraph(XmlCursor cursor)
add a new paragraph at position of the cursor- Specified by:
insertNewParagraphin interfaceIBody- Returns:
- the inserted paragraph
-
insertNewTbl
public XWPFTable insertNewTbl(XmlCursor cursor)
Description copied from interface:IBodyinserts a new Table at the cursor position.- Specified by:
insertNewTblin interfaceIBody- Returns:
- the inserted table
-
getOwner
public POIXMLDocumentPart getOwner()
-
getTableArray
public XWPFTable getTableArray(int pos)
Returns the table at position pos- Specified by:
getTableArrayin interfaceIBody
-
insertTable
public void insertTable(int pos, XWPFTable table)inserts an existing XWPFTable to the arrays bodyElements and tables- Specified by:
insertTablein interfaceIBody
-
readHdrFtr
public void readHdrFtr()
-
getTableCell
public XWPFTableCell getTableCell(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTc cell)
get the TableCell which belongs to the TableCell- Specified by:
getTableCellin interfaceIBody
-
getXWPFDocument
public XWPFDocument getXWPFDocument()
Description copied from interface:IBodyReturn XWPFDocument- Specified by:
getXWPFDocumentin interfaceIBody
-
setXWPFDocument
public void setXWPFDocument(XWPFDocument doc)
-
getPart
public POIXMLDocumentPart getPart()
returns the Part, to which the body belongs, which you need for adding relationship to other parts
-
prepareForCommit
protected void prepareForCommit()
Description copied from class:POIXMLDocumentPartEnsure that a memory based package part does not have lingering data from previous commit() calls.Note: This is overwritten for some objects, as *PictureData seem to store the actual content in the part directly without keeping a copy like all others therefore we need to handle them differently.
- Overrides:
prepareForCommitin classPOIXMLDocumentPart
-
-