Package org.apache.pdfbox.pdmodel.common
Class PDMetadata
- java.lang.Object
-
- org.apache.pdfbox.pdmodel.common.PDStream
-
- org.apache.pdfbox.pdmodel.common.PDMetadata
-
- All Implemented Interfaces:
COSObjectable
public class PDMetadata extends PDStream
This class represents metadata for various objects in a PDF document.- Author:
- Ben Litchfield
-
-
Constructor Summary
Constructors Constructor Description PDMetadata(COSStream str)Constructor.PDMetadata(PDDocument document)This will create a new PDMetadata object with the /Type and /Subtype entries for a document level metadata object.PDMetadata(PDDocument doc, java.io.InputStream str)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.io.InputStreamexportXMPMetadata()Extract the XMP metadata.voidimportXMPMetadata(byte[] xmp)Import an XMP stream into the PDF document.-
Methods inherited from class org.apache.pdfbox.pdmodel.common.PDStream
addCompression, createInputStream, createInputStream, createInputStream, createOutputStream, createOutputStream, getCOSObject, getDecodedStreamLength, getDecodeParms, getFile, getFileDecodeParams, getFileFilters, getFilters, getLength, getMetadata, getStream, setDecodedStreamLength, setDecodeParms, setFile, setFileDecodeParams, setFileFilters, setFilters, setMetadata, toByteArray
-
-
-
-
Constructor Detail
-
PDMetadata
public PDMetadata(PDDocument document)
This will create a new PDMetadata object with the /Type and /Subtype entries for a document level metadata object.- Parameters:
document- The document that the stream will be part of.
-
PDMetadata
public PDMetadata(PDDocument doc, java.io.InputStream str) throws java.io.IOException
Constructor. Reads all data from the input stream and embeds it into the document, this will close the InputStream. The /Type and /Subtype entries for a document level metadata object will be created.- Parameters:
doc- The document that will hold the stream.str- The stream parameter.- Throws:
java.io.IOException- If there is an error creating the stream in the document.
-
PDMetadata
public PDMetadata(COSStream str)
Constructor. This will not set up the /Type and /Subtype entries.- Parameters:
str- The stream parameter.
-
-
Method Detail
-
exportXMPMetadata
public java.io.InputStream exportXMPMetadata() throws java.io.IOExceptionExtract the XMP metadata. To persist changes back to the PDF you must call importXMPMetadata.- Returns:
- A stream to get the xmp data from.
- Throws:
java.io.IOException- If there is an error parsing the XMP data.
-
importXMPMetadata
public void importXMPMetadata(byte[] xmp) throws java.io.IOExceptionImport an XMP stream into the PDF document.- Parameters:
xmp- The XMP data.- Throws:
java.io.IOException- If there is an error generating the XML document.
-
-