Package com.itextpdf.layout.tagging
Class LayoutTaggingHelper
- java.lang.Object
-
- com.itextpdf.layout.tagging.LayoutTaggingHelper
-
public class LayoutTaggingHelper extends java.lang.Object
The class is a helper which is used to correctly create structure tree for layout element (with keeping right order for tags).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
LayoutTaggingHelper.ScanContext
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<IRenderer,TagTreePointer>
autoTaggingPointerSavedPosition
private TagStructureContext
context
private PdfDocument
document
private java.util.Map<PdfObject,TaggingDummyElement>
dummiesForPreExistingTags
private boolean
immediateFlush
private java.util.Map<TaggingHintKey,java.util.List<TaggingHintKey>>
kidsHints
private java.util.Map<TaggingHintKey,TaggingHintKey>
parentHints
private int
RETVAL_NO_PARENT
private int
RETVAL_PARENT_AND_KID_FINISHED
private java.util.Map<java.lang.String,java.util.List<ITaggingRule>>
taggingRules
-
Constructor Summary
Constructors Constructor Description LayoutTaggingHelper(PdfDocument document, boolean immediateFlush)
-
Method Summary
-
-
-
Field Detail
-
context
private final TagStructureContext context
-
document
private final PdfDocument document
-
immediateFlush
private final boolean immediateFlush
-
kidsHints
private final java.util.Map<TaggingHintKey,java.util.List<TaggingHintKey>> kidsHints
-
parentHints
private final java.util.Map<TaggingHintKey,TaggingHintKey> parentHints
-
autoTaggingPointerSavedPosition
private final java.util.Map<IRenderer,TagTreePointer> autoTaggingPointerSavedPosition
-
taggingRules
private final java.util.Map<java.lang.String,java.util.List<ITaggingRule>> taggingRules
-
dummiesForPreExistingTags
private final java.util.Map<PdfObject,TaggingDummyElement> dummiesForPreExistingTags
-
RETVAL_NO_PARENT
private final int RETVAL_NO_PARENT
- See Also:
- Constant Field Values
-
RETVAL_PARENT_AND_KID_FINISHED
private final int RETVAL_PARENT_AND_KID_FINISHED
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LayoutTaggingHelper
public LayoutTaggingHelper(PdfDocument document, boolean immediateFlush)
-
-
Method Detail
-
addTreeHints
public static void addTreeHints(LayoutTaggingHelper taggingHelper, IRenderer rootRenderer)
-
getHintKey
public static TaggingHintKey getHintKey(IPropertyContainer container)
-
getOrCreateHintKey
public static TaggingHintKey getOrCreateHintKey(IPropertyContainer container)
-
addKidsHint
public void addKidsHint(TagTreePointer parentPointer, java.lang.Iterable<? extends IPropertyContainer> newKids)
-
addKidsHint
public void addKidsHint(IPropertyContainer parent, java.lang.Iterable<? extends IPropertyContainer> newKids)
-
addKidsHint
public void addKidsHint(IPropertyContainer parent, java.lang.Iterable<? extends IPropertyContainer> newKids, int insertIndex)
-
addKidsHint
public void addKidsHint(TaggingHintKey parentKey, java.util.Collection<TaggingHintKey> newKidsKeys)
-
addKidsHint
public void addKidsHint(TaggingHintKey parentKey, java.util.Collection<TaggingHintKey> newKidsKeys, int insertIndex)
-
setRoleHint
public void setRoleHint(IPropertyContainer hintOwner, java.lang.String role)
-
isArtifact
public boolean isArtifact(IPropertyContainer hintOwner)
-
markArtifactHint
public void markArtifactHint(IPropertyContainer hintOwner)
-
markArtifactHint
public void markArtifactHint(TaggingHintKey hintKey)
-
useAutoTaggingPointerAndRememberItsPosition
public TagTreePointer useAutoTaggingPointerAndRememberItsPosition(IRenderer renderer)
-
restoreAutoTaggingPointerPosition
public void restoreAutoTaggingPointerPosition(IRenderer renderer)
-
getKidsHint
public java.util.List<TaggingHintKey> getKidsHint(TaggingHintKey parent)
-
getAccessibleKidsHint
public java.util.List<TaggingHintKey> getAccessibleKidsHint(TaggingHintKey parent)
-
getParentHint
public TaggingHintKey getParentHint(IPropertyContainer hintOwner)
-
getParentHint
public TaggingHintKey getParentHint(TaggingHintKey hintKey)
-
getAccessibleParentHint
public TaggingHintKey getAccessibleParentHint(TaggingHintKey hintKey)
-
releaseFinishedHints
public void releaseFinishedHints()
-
releaseAllHints
public void releaseAllHints()
-
createTag
public boolean createTag(IRenderer renderer, TagTreePointer tagPointer)
-
createTag
public boolean createTag(TaggingHintKey hintKey, TagTreePointer tagPointer)
-
finishTaggingHint
public void finishTaggingHint(IPropertyContainer hintOwner)
-
replaceKidHint
public int replaceKidHint(TaggingHintKey kidHintKey, java.util.Collection<TaggingHintKey> newKidsHintKeys)
-
moveKidHint
public int moveKidHint(TaggingHintKey hintKeyOfKidToMove, TaggingHintKey newParent)
-
moveKidHint
public int moveKidHint(TaggingHintKey hintKeyOfKidToMove, TaggingHintKey newParent, int insertIndex)
-
getPdfDocument
public PdfDocument getPdfDocument()
-
getOrCreateHintKey
private static TaggingHintKey getOrCreateHintKey(IPropertyContainer hintOwner, boolean setProperty)
-
addKidsHint
private void addKidsHint(TaggingHintKey parentKey, java.util.Collection<TaggingHintKey> newKidsKeys, int insertIndex, boolean skipFinishedChecks)
-
createSingleTag
private boolean createSingleTag(TaggingHintKey hintKey, TagTreePointer tagPointer)
-
removeParentHint
private int removeParentHint(TaggingHintKey hintKey)
-
removeParentHint
private int removeParentHint(TaggingHintKey hintKey, TaggingHintKey parentHint)
-
finishDummyKids
private void finishDummyKids(java.util.List<TaggingHintKey> taggingHintKeys)
-
moveKidTagIfCreated
private void moveKidTagIfCreated(TaggingHintKey parentKey, TaggingHintKey kidKey)
-
isNonAccessibleHint
private static boolean isNonAccessibleHint(TaggingHintKey hintKey)
-
isTagAlreadyExistsForHint
private boolean isTagAlreadyExistsForHint(TaggingHintKey tagHint)
-
releaseHint
private void releaseHint(TaggingHintKey hint, java.util.Set<TaggingHintKey> hintsToBeHeld, boolean checkContextIsFinished)
-
isSomeParentNotFinished
private boolean isSomeParentNotFinished(TaggingHintKey parentHint)
-
isSomeKidNotFinished
private boolean isSomeKidNotFinished(TaggingHintKey hint)
-
registerRules
private void registerRules(PdfVersion pdfVersion)
-
registerSingleRule
private void registerSingleRule(java.lang.String role, ITaggingRule rule)
-
getNearestNextSiblingIndex
private int getNearestNextSiblingIndex(WaitingTagsManager waitingTagsManager, TagTreePointer parentPointer, TaggingHintKey parentKey, TaggingHintKey kidKey)
-
scanForNearestNextSiblingIndex
private int scanForNearestNextSiblingIndex(LayoutTaggingHelper.ScanContext scanContext, TaggingHintKey toCheck, TaggingHintKey parent)
-
-