Package com.itextpdf.text.pdf
Class PdfACopy
java.lang.Object
com.itextpdf.text.DocWriter
com.itextpdf.text.pdf.PdfWriter
com.itextpdf.text.pdf.PdfCopy
com.itextpdf.text.pdf.PdfACopy
- All Implemented Interfaces:
DocListener,ElementListener,PdfAnnotations,PdfDocumentActions,PdfEncryptionSettings,PdfPageActions,PdfRunDirection,PdfVersion,PdfViewerPreferences,EventListener
- Direct Known Subclasses:
PdfASmartCopy
Extension of PdfCopy that will attempt to keep a file
in conformance with the PDF/A standard.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.itextpdf.text.pdf.PdfCopy
PdfCopy.ImportedPage, PdfCopy.IndirectReferences, PdfCopy.PageStamp, PdfCopy.StampContentNested classes/interfaces inherited from class com.itextpdf.text.pdf.PdfWriter
PdfWriter.PdfBody, PdfWriter.PdfTrailer -
Field Summary
FieldsFields inherited from class com.itextpdf.text.pdf.PdfCopy
disableIndirects, fieldArray, fieldKeys, fields, fieldTemplates, importedPages, indirectMap, indirectObjects, indirects, mergeFields, namePtr, parentObjects, reader, savedObjects, structTreeRootReference, updateRootKids, widgetKeysFields inherited from class com.itextpdf.text.pdf.PdfWriter
ALLOW_ASSEMBLY, ALLOW_COPY, ALLOW_DEGRADED_PRINTING, ALLOW_FILL_IN, ALLOW_MODIFY_ANNOTATIONS, ALLOW_MODIFY_CONTENTS, ALLOW_PRINTING, ALLOW_SCREENREADERS, AllowAssembly, AllowCopy, AllowDegradedPrinting, AllowFillIn, AllowModifyAnnotations, AllowModifyContents, AllowPrinting, AllowScreenReaders, body, CenterWindow, colorNumber, colorProfile, compressionLevel, crypto, currentPageNumber, currentPdfReaderInstance, defaultColorspace, DID_PRINT, DID_SAVE, directContent, directContentUnder, DirectionL2R, DirectionR2L, DisplayDocTitle, DO_NOT_ENCRYPT_METADATA, DOCUMENT_CLOSE, documentColors, documentExtGState, documentFonts, documentOCG, documentOCGorder, documentPatterns, documentProperties, documentShadingPatterns, documentShadings, documentSpotPatterns, EMBEDDED_FILES_ONLY, ENCRYPTION_AES_128, ENCRYPTION_AES_256, ENCRYPTION_MASK, extraCatalog, FitWindow, fontNumber, formXObjects, formXObjectsCounter, fullCompression, GENERATION_MAX, group, HideMenubar, HideToolbar, HideWindowUI, imageDictionary, JBIG2Globals, markAll, markInlineElementsOnly, newBookmarks, NO_SPACE_CHAR_RATIO, NonFullScreenPageModeUseNone, NonFullScreenPageModeUseOC, NonFullScreenPageModeUseOutlines, NonFullScreenPageModeUseThumbs, OCGLocked, OCGRadioGroup, OCProperties, originalFileID, PAGE_CLOSE, PAGE_OPEN, pageDictEntries, PageLayoutOneColumn, PageLayoutSinglePage, PageLayoutTwoColumnLeft, PageLayoutTwoColumnRight, PageLayoutTwoPageLeft, PageLayoutTwoPageRight, PageModeFullScreen, PageModeUseAttachments, PageModeUseNone, PageModeUseOC, PageModeUseOutlines, PageModeUseThumbs, pageReferences, patternColorspaceCMYK, patternColorspaceGRAY, patternColorspaceRGB, patternNumber, pdf, pdf_version, PDF_VERSION_1_2, PDF_VERSION_1_3, PDF_VERSION_1_4, PDF_VERSION_1_5, PDF_VERSION_1_6, PDF_VERSION_1_7, pdfIsoConformance, PDFX1A2001, PDFX32002, PDFXNONE, prevxref, PrintScalingNone, readerInstances, root, RUN_DIRECTION_DEFAULT, RUN_DIRECTION_LTR, RUN_DIRECTION_NO_BIDI, RUN_DIRECTION_RTL, runDirection, SIGNATURE_APPEND_ONLY, SIGNATURE_EXISTS, SPACE_CHAR_RATIO_DEFAULT, STANDARD_ENCRYPTION_128, STANDARD_ENCRYPTION_40, STRENGTH128BITS, STRENGTH40BITS, structureTreeRoot, tabs, tagged, taggingMode, ttfUnicodeWriter, VERSION_1_2, VERSION_1_3, VERSION_1_4, VERSION_1_5, VERSION_1_6, VERSION_1_7, WILL_PRINT, WILL_SAVE, xmpMetadata, xmpWriter -
Constructor Summary
ConstructorsConstructorDescriptionPdfACopy(Document document, OutputStream os, PdfAConformanceLevel conformanceLevel) Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidaddDocument(PdfReader reader) voidaddPage(PdfImportedPage iPage) Add an imported page to our outputprotected voidcacheObject(PdfIndirectObject iobj) Use this method for caching objects.private voidcheckPdfAInfo(PdfReader reader) voidclose()Signals that theDocumentwas closed and that no otherElementswill be added.createPageStamp(PdfImportedPage iPage) Create a page stamp.protected XmpWritercreateXmpWriter(ByteArrayOutputStream baos, PdfDictionary info) protected XmpWritercreateXmpWriter(ByteArrayOutputStream baos, HashMap<String, String> info) protected Counterprivate PdfACheckerprotected TtfUnicodeWriterprotected PdfIsoConformancebooleansetOutputIntents(PdfReader reader, boolean checkExistence) Copies the output intent dictionary from other document to this one.voidsetOutputIntents(String outputConditionIdentifier, String outputCondition, String registryName, String info, ICC_Profile colorProfile) Sets the values of the output intent dictionary.Methods inherited from class com.itextpdf.text.pdf.PdfCopy
add, add, addAnnotation, addDocument, addPage, addToBody, addToBody, copyArray, copyArray, copyDictionary, copyDictionary, copyDocumentFields, copyIndirect, copyIndirect, copyObject, copyObject, copyStream, fixStructureTreeRoot, fixTaggedStructure, flushAcroFields, flushIndirectObjects, flushTaggedObjects, freeReader, getCatalog, getFlags, getImportedPage, getImportedPage, getImportedPageImpl, getOffStateName, isCheckButton, isRadioButton, isRotateContents, isStructTreeRootReference, isTextField, setFromIPage, setFromReader, setMergeFields, setPageEvent, setRotateContents, structureTreeRootKidsForReaderImportedMethods inherited from class com.itextpdf.text.pdf.PdfWriter
add, add, addAnnotation, addCalculationOrder, addDeveloperExtension, addDirectImageSimple, addDirectImageSimple, addDirectTemplateSimple, addFileAttachment, addFileAttachment, addFileAttachment, addJavaScript, addJavaScript, addJavaScript, addJavaScript, addJavaScript, addJavaScript, addLocalDestinations, addNamedDestination, addNamedDestinations, addOCGRadioGroup, addPageDictEntry, addSharedObjectsToBody, addSimple, addSimple, addSimpleExtGState, addSimplePattern, addSimplePatternColorspace, addSimpleProperty, addSimpleShading, addSimpleShadingPattern, addToBody, addToBody, addToBody, addToBody, addViewerPreference, addXFormsToBody, buildStructTreeRootForTagged, checkElementRole, checkPdfIsoConformance, checkPdfIsoConformance, clearTextWrap, createAnnotation, createAnnotation, createAnnotation, createXmpMetadata, eliminateFontSubset, fillOCProperties, getAcroForm, getBoxSize, getBoxSize, getColorProfile, getColorspaceName, getCompressionLevel, getCurrentDocumentSize, getCurrentPage, getCurrentPageNumber, getDefaultColorspace, getDirectContent, getDirectContentUnder, getEncryption, getExtraCatalog, getGroup, getImageReference, getIndirectReferenceNumber, getInfo, getInstance, getInstance, getNameString, getNewObjectNumber, getOCProperties, getOs, getPageDictEntries, getPageEvent, getPageNumber, getPageReference, getPageSize, getPdfDocument, getPdfIndirectReference, getPdfReaderInstance, getPdfVersion, getPDFXConformance, getReaderFile, getReferenceJBIG2Globals, getRootOutline, getRunDirection, getSpaceCharRatio, getStandardStructElems, getStructureTreeRoot, getTabs, getVerticalPosition, getXmpWriter, isFullCompression, isPageEmpty, isPdfIso, isPdfX, isRgbTransparencyBlending, isStrictImageSequence, isTagged, isUserProperties, lockLayer, needToBeMarkedInContent, open, propertyExists, registerLayer, releaseTemplate, reorderPages, resetContent, resetPageDictEntries, setAdditionalAction, setAtLeastPdfVersion, setBoxSize, setCollection, setCompressionLevel, setCropBoxSize, setDefaultColorspace, setDuration, setEncryption, setEncryption, setEncryption, setEncryption, setEncryption, setFullCompression, setGroup, setInitialLeading, setLanguage, setLinearPageMode, setOpenAction, setOpenAction, setOutlines, setOutputIntents, setPageAction, setPageEmpty, setPageLabels, setPageViewport, setPageXmpMetadata, setPdfVersion, setPdfVersion, setPDFXConformance, setRgbTransparencyBlending, setRunDirection, setSigFlags, setSpaceCharRatio, setStrictImageSequence, setTabs, setTagged, setTagged, setThumbnail, setTransition, setUserProperties, setUserunit, setViewerPreferences, setXmpMetadata, useExternalCacheForTagStructure, writeKeyInfo, writeOutlinesMethods inherited from class com.itextpdf.text.DocWriter
add, addTabs, flush, getISOBytes, isCloseStream, isPaused, newPage, pause, resetPageCount, resume, setCloseStream, setMarginMirroring, setMarginMirroringTopBottom, setMargins, setPageCount, setPageSize, write, write, writeEnd, writeEnd, writeMarkupAttributes, writeStart
-
Field Details
-
COUNTER
-
-
Constructor Details
-
PdfACopy
public PdfACopy(Document document, OutputStream os, PdfAConformanceLevel conformanceLevel) throws DocumentException Constructor- Parameters:
document- documentos- outputstream- Throws:
DocumentException
-
-
Method Details
-
getCounter
- Overrides:
getCounterin classPdfCopy
-
initPdfIsoConformance
- Overrides:
initPdfIsoConformancein classPdfWriter
-
cacheObject
Description copied from class:PdfWriterUse this method for caching objects.- Overrides:
cacheObjectin classPdfCopy- Parameters:
iobj- @see PdfIndirectObject
-
getPdfAChecker
-
addDocument
- Overrides:
addDocumentin classPdfCopy- Throws:
DocumentExceptionIOException
-
addPage
Description copied from class:PdfCopyAdd an imported page to our output- Overrides:
addPagein classPdfCopy- Parameters:
iPage- an imported page- Throws:
IOExceptionBadPdfFormatException
-
createPageStamp
Description copied from class:PdfCopyCreate a page stamp. New content and annotations, including new fields, are allowed. The fields added cannot have parents in another pages. This method modifies the PdfReader instance.The general usage to stamp something in a page is:
PdfImportedPage page = copy.getImportedPage(reader, 1); PdfCopy.PageStamp ps = copy.createPageStamp(page); ps.addAnnotation(PdfAnnotation.createText(copy, new Rectangle(50, 180, 70, 200), "Hello", "No Thanks", true, "Comment")); PdfContentByte under = ps.getUnderContent(); under.addImage(img); PdfContentByte over = ps.getOverContent(); over.beginText(); over.setFontAndSize(bf, 18); over.setTextMatrix(30, 30); over.showText("total page " + totalPage); over.endText(); ps.alterContents(); copy.addPage(page);- Overrides:
createPageStampin classPdfCopy- Parameters:
iPage- an imported page- Returns:
- the
PageStamp
-
setOutputIntents
public void setOutputIntents(String outputConditionIdentifier, String outputCondition, String registryName, String info, ICC_Profile colorProfile) throws IOException Description copied from class:PdfWriterSets the values of the output intent dictionary. Null values are allowed to suppress any key.- Overrides:
setOutputIntentsin classPdfWriter- Parameters:
outputConditionIdentifier- a valueoutputCondition- a valueregistryName- a valueinfo- a valuecolorProfile- a value- Throws:
IOException- on error
-
setOutputIntents
Copies the output intent dictionary from other document to this one.- Overrides:
setOutputIntentsin classPdfWriter- Parameters:
reader- the other documentcheckExistence-trueto just check for the existence of a valid output intent dictionary,falseto insert the dictionary if it exists- Returns:
trueif the output intent dictionary exists,falseotherwise- Throws:
IOException- on error
-
createXmpWriter
protected XmpWriter createXmpWriter(ByteArrayOutputStream baos, PdfDictionary info) throws IOException - Overrides:
createXmpWriterin classPdfWriter- Throws:
IOException
-
createXmpWriter
protected XmpWriter createXmpWriter(ByteArrayOutputStream baos, HashMap<String, String> info) throws IOException- Overrides:
createXmpWriterin classPdfWriter- Throws:
IOException
-
getTtfUnicodeWriter
- Overrides:
getTtfUnicodeWriterin classPdfWriter- See Also:
-
close
public void close()Description copied from class:PdfCopySignals that theDocumentwas closed and that no otherElementswill be added.The pages-tree is built and written to the outputstream. A Catalog is constructed, as well as an Info-object, the reference table is composed and everything is written to the outputstream embedded in a Trailer.
- Specified by:
closein interfaceDocListener- Overrides:
closein classPdfCopy- See Also:
-
checkPdfAInfo
-