InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IPreflightArtworkPaintInfo Class Referenceabstract

#include <IPreflightArtworkPaintInfo.h>

Inheritance diagram for IPreflightArtworkPaintInfo:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_IPREFLIGHTARTWORKPAINTINFO }
 
enum  PaintSpatialType {
  kPaintSpatial_Invalid, kPaintSpatial_Other, kPaintSpatial_Constant, kPaintSpatial_Image,
  kPaintSpatial_Shading, kPaintSpatial_Composite, kPaintSpatial_Encapsulated, kPaintSpatial_Pattern
}
 

Public Member Functions

virtual void Initialize (CAGMPaint &paint, const PMMatrix &paintMatrix, bool overprint)=0
 
virtual bool GetOverprint () const =0
 
virtual PMMatrix GetPaintMatrix () const =0
 
virtual IPreflightArtworkCSInfoQueryColorSpace () const =0
 
virtual PaintSpatialType GetSpatialType () const =0
 
virtual uint32 IsTrapSafeColor (const PMReal &threshold) const =0
 
virtual uint32 IsTrapSafe (const PMReal &threshold) const =0
 
virtual bool IsWhite (const PMReal &tolerance=0.001) const =0
 
virtual int32 GetConstantColorValues (K2Vector< PMReal > *comps) const =0
 
virtual Int32Rect GetImagePixelBounds () const =0
 
virtual PMPoint GetImageResolution () const =0
 
virtual uint32 GetImageBitsPerPixel () const =0
 
virtual bool IsOPIProxy () const =0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

This interface provides information about a particular marking operation. See IPreflightArtworkMarkInfo for more context, in particular QueryColorPaintInfo() and/or QueryAlphaPaintInfo().

Member Enumeration Documentation

The spatial representation of the marking operation.

Member Function Documentation

virtual int32 IPreflightArtworkPaintInfo::GetConstantColorValues (K2Vector< PMReal > * comps) const
pure virtual

Get the constant paint components (applicable only for constant spatial paint operations).

Note
Valid only when GetSpatialType() == kPaintSpatial_Constant.
Parameters
compsOUT Receives the array of component values, if not nil.
Returns
The number of components in the array (returned whether or not nil pointer is passed).
virtual uint32 IPreflightArtworkPaintInfo::GetImageBitsPerPixel () const
pure virtual

For image paints, get the bit depth per pixel.

Note
Applies iff GetSpatialType() == kPaintSpatial_Image.
Returns
The bit depth per pixel.
virtual Int32Rect IPreflightArtworkPaintInfo::GetImagePixelBounds () const
pure virtual

For image paints, get the pixel bounds of the image.

Note
Applies iff GetSpatialType() == kPaintSpatial_Image.
Returns
The bounds of the image.
virtual PMPoint IPreflightArtworkPaintInfo::GetImageResolution () const
pure virtual

For image paints, get the XY resolution of the image in CTM.

Note
Applies iff GetSpatialType() == kPaintSpatial_Image.
Returns
The resolution of the image in CTM.
See Also
GetAbsoluteMatrix.
virtual bool IPreflightArtworkPaintInfo::GetOverprint () const
pure virtual

Returns whether overprint is enabled. This is the same value as on the parent mark.

Returns
True if overprinted, False if knocked out.
virtual PMMatrix IPreflightArtworkPaintInfo::GetPaintMatrix () const
pure virtual

Return the matrix associated with the paint.

Returns
The matrix for the paint.
virtual PaintSpatialType IPreflightArtworkPaintInfo::GetSpatialType () const
pure virtual

Return the spatial type, ie how the color varies spatially.

Returns
The spatial paint type.
virtual void IPreflightArtworkPaintInfo::Initialize (CAGMPaint & paint,
const PMMatrixpaintMatrix,
bool overprint 
)
pure virtual

This is used to initialize the interface. This takes an opaque type, so only InDesign internal code can call or implement this method.

Parameters
paintIN The opaque object that this interface gives you information about.
paintMatrixIN The paint matrix.
overprintIN The overprint state from the marking operation.
virtual bool IPreflightArtworkPaintInfo::IsOPIProxy () const
pure virtual

For image and encapsulated paint types, determines whether the mark is an OPI proxy.

Note
This merely inspects the paint's OPI tag, if present. If there is no OPI tag it could still be part of some OPI artwork that is declared at the artwork context level.
Returns
kTrue if it's known to be an OPI proxy; kFalse if not.
virtual uint32 IPreflightArtworkPaintInfo::IsTrapSafe (const PMRealthreshold) const
pure virtual

This is simply a logical AND combination of IsTrapSafeColor() and GetOverprint().

Parameters
thresholdThe coverage value above which all marks on the sole marked plate must be to qualify. Typically this is on the order of 0.9 (90%).
Returns
The total number of plates marked.
virtual uint32 IPreflightArtworkPaintInfo::IsTrapSafeColor (const PMRealthreshold) const
pure virtual

Analyzes the paint to figure out whether the paint marks a single plate at some minimum threshold everywhere on that plate and zero on all the other channels. This may seem like a very strange criteria; but it's needed to determine whether this is a trap-safe paint.

Actually, you also need to check the mark for its overprint state; if it's overprinted and marking a single plate then it doesn't really need to be trapped. This in turn is important if you're concerned about misregistration of very small elements.

Note that if this returns true that only means that this particular paint, in isolation, is expected to trap properly based on its color. It may not be after compositing with transparency.

Parameters
thresholdThe coverage value above which all marks on the sole marked plate must be to qualify. Typically this is on the order of 0.9 (90%).
Returns
The total number of plates marked.
virtual bool IPreflightArtworkPaintInfo::IsWhite (const PMRealtolerance = 0.001) const
pure virtual

Returns true if the paint is a constant color white (ie, marks no plates). If it's anything other than constant color, returns false (assuming all-white gradients, patterns, images, etc., are uninteresting cases).

Parameters
toleranceThe value above which a channel is assumed to be marked.
Returns
kTrue if it's white; kFalse otherwise.
virtual IPreflightArtworkCSInfo* IPreflightArtworkPaintInfo::QueryColorSpace () const
pure virtual

Return the color space information for the paint. This provides all the information about the color channels, alpha, and so on.

Returns
A refcounted CSInfo interface.