Package org.docx4j.model.images
Class AbstractConversionImageHandler
java.lang.Object
org.docx4j.model.images.AbstractConversionImageHandler
- All Implemented Interfaces:
ConversionImageHandler
- Direct Known Subclasses:
FileConversionImageHandler
public abstract class AbstractConversionImageHandler extends java.lang.Object implements ConversionImageHandler
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,java.lang.String>handledImagesMapprotected java.lang.StringimageDirPathprotected booleanincludeUUIDprotected static org.slf4j.Loggerlogprotected java.lang.Stringuuid -
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractConversionImageHandler(java.lang.String imageDirPath, boolean includeUUID)Creates an AbstractConversionImageHandler -
Method Summary
Modifier and Type Method Description voidclear()If the instance is reused, it should be cleared firstprotected java.lang.StringcreateEncodedImage(BinaryPart binaryPart, byte[] bytes)protected java.lang.StringcreateKey(Relationship relationship, BinaryPart part)protected abstract java.lang.StringcreateStoredImage(BinaryPart binaryPart, byte[] bytes)protected java.lang.StringdoHandleImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part)protected byte[]getImageData(BinaryPart binaryPart)Get the image data of the bufferprotected java.lang.StringgetImageName(BinaryPart binaryPart)Get the image base nameprotected java.lang.StringhandleExternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part)java.lang.StringhandleImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part)protected java.lang.StringhandleInternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart binaryPart)protected booleanisInternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part)protected java.lang.StringsetupImageName(BinaryPart binaryPart)
-
Field Details
-
log
protected static org.slf4j.Logger log -
uuid
protected java.lang.String uuid -
handledImagesMap
protected java.util.Map<java.lang.String,java.lang.String> handledImagesMap -
imageDirPath
protected java.lang.String imageDirPath -
includeUUID
protected boolean includeUUID
-
-
Constructor Details
-
AbstractConversionImageHandler
protected AbstractConversionImageHandler(java.lang.String imageDirPath, boolean includeUUID)Creates an AbstractConversionImageHandler- Parameters:
imageDirPath- , the path, where the images will be storedincludeUUID- , should the image names be prefixed with an UUID to differentiate different runs
-
-
Method Details
-
handleImage
public java.lang.String handleImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part) throws Docx4JException- Specified by:
handleImagein interfaceConversionImageHandlerrelationship- of the imagepart- of the image, if it is an internal image, otherwise null- Returns:
- uri for the image we've saved, or null
- Throws:
Docx4JException- this exception will be logged, but not propagated
-
createKey
-
doHandleImage
protected java.lang.String doHandleImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part) throws Docx4JException- Throws:
Docx4JException
-
isInternalImage
protected boolean isInternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part) throws Docx4JException- Throws:
Docx4JException
-
handleInternalImage
protected java.lang.String handleInternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart binaryPart) throws Docx4JException- Parameters:
picture-relationship-binaryPart-- Returns:
- uri for the image we've saved, or null
- Throws:
Docx4JException
-
createStoredImage
protected abstract java.lang.String createStoredImage(BinaryPart binaryPart, byte[] bytes) throws Docx4JException- Throws:
Docx4JException
-
createEncodedImage
protected java.lang.String createEncodedImage(BinaryPart binaryPart, byte[] bytes) throws Docx4JException- Throws:
Docx4JException
-
setupImageName
-
getImageName
Get the image base name- Parameters:
binaryPart-- Returns:
-
getImageData
Get the image data of the buffer- Parameters:
binaryPart-- Returns:
-
handleExternalImage
protected java.lang.String handleExternalImage(AbstractWordXmlPicture picture, Relationship relationship, BinaryPart part)- Parameters:
picture-relationship-part- (is always null)- Returns:
- uri for the image we've saved, or null
-
clear
public void clear()If the instance is reused, it should be cleared first
-