All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.intarsys.pdf.content.ICSDeviceFeatures Maven / Gradle / Ivy

package de.intarsys.pdf.content;

import de.intarsys.pdf.font.PDFont;
import de.intarsys.pdf.pd.PDColorSpace;
import de.intarsys.pdf.pd.PDExtGState;
import de.intarsys.pdf.pd.PDImage;
import de.intarsys.pdf.pd.PDPattern;
import de.intarsys.pdf.pd.PDShading;
import de.intarsys.pdf.pd.PDXObject;

/**
 * The {@link CSDeviceBasedInterpreter} may do some unnecessary work when
 * interfacing to an {@link ICSDevice}, for example when he realizes images
 * where the device finally only handles shapes or text.
 * 

* This optional interface can signal to the interpreter that it is not * interested in some of the arguments in the {@link ICSDevice} callback. Only * the arguments are replaced with null, the callback itself is * performed to support lightweight implementations that for example only rely * on the object name. *

* This declarative interface is designed to fine tune the * {@link CSDeviceBasedInterpreter} where either a PDF object lookup or other * complex object construction is involved. Where this tuning is not enough you * may be better off subclassing {@link CSInterpreter} directly. * */ public interface ICSDeviceFeatures { /** * true if this device supports (needs) {@link PDColorSpace} * objects to be reported in its callbacks. * * @return true if this device supports (needs) * {@link PDColorSpace} objects to be reported in its callbacks. */ public boolean supportsColorSpace(); /** * true if this device supports (needs) {@link PDExtGState} * objects to be reported in its callbacks. * * @return true if this device supports (needs) * {@link PDExtGState} objects to be reported in its callbacks. */ public boolean supportsExtendedState(); /** * true if this device supports (needs) {@link PDFont} objects * to be reported in its callbacks. * * @return true if this device supports (needs) {@link PDFont} * objects to be reported in its callbacks. */ public boolean supportsFont(); /** * true if this device supports (needs) {@link PDImage} objects * to be reported in its "inlineImage" callbacks. * * @return true if this device supports (needs) {@link PDImage} * objects to be reported in its callbacks. */ public boolean supportsInlineImage(); /** * true if this device supports (needs) {@link PDPattern} * objects to be reported in its callbacks. * * @return true if this device supports (needs) * {@link PDPattern} objects to be reported in its callbacks. */ public boolean supportsPattern(); /** * true if this device supports (needs) properties to be * reported in its callbacks. * * @return true if this device supports (needs) properties to * be reported in its callbacks. */ public boolean supportsProperties(); /** * true if this device supports (needs) {@link PDShading} * objects to be reported in its callbacks. * * @return true if this device supports (needs) * {@link PDShading} objects to be reported in its callbacks. */ public boolean supportsShading(); /** * true if this device supports (needs) {@link PDXObject} * objects to be reported in its callbacks. * * @return true if this device supports (needs) * {@link PDXObject} objects to be reported in its callbacks. */ public boolean supportsXObject(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy