InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IEPSAttributes.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: David Berggren
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //
23 // Purpose:
24 // Stores info about an EPS page item.
25 //
26 //========================================================================================
27 
28 #ifndef __IEPSAttributes__
29 #define __IEPSAttributes__
30 
31 #include "IPMUnknown.h"
32 #include "PMRect.h"
33 #include "UIDList.h"
34 #include "K2Vector.h"
35 #include "EPSID.h"
36 
39 typedef uint32 EPSPSFlags;
40 enum {
41  EPSFlagsIsPostScript = 1 << 0,
42  EPSFlagsIsEPS = 1 << 1,
43  EPSFlagsIsAI = 1 << 2,
44  EPSFlagsIsDSCCompliant = 1 << 3,
45  EPSFlagsHasComments = 1 << 4,
46  EPSFlagsHasBoundingBox = 1 << 5,
47  EPSFlagsHasColor = 1 << 6,
48  EPSFlagsNeedsProcSets = 1 << 7,
49  EPSFlagsIsDCSCompliant = 1 << 8,
50 
51  // Non-MPSPSFlags
52  EPSFlagsGeneratingPreview = 1 << 15, // We are generating a thumbnail preview for the place dialog
53  EPSFlagsIsPhotoshopRaster = 1 << 16, // We have a raster based Photoshop EPS
54  EPSFlagsTestedForRaster = 1 << 17 // If 0, then EPSFlagsIsPhotoshopRaster == 0 does not
55  // necessarily mean we do not have a raster.
56 };
57 
61 class IEPSAttributes : public IPMUnknown
62 {
63 public:
64  /* Default IID to be used by UseDefaultIID() */
65  enum { kDefaultIID = IID_IEPSATTRIBUTES };
66 
69  typedef enum
70  {
83  } DrawEPSOption;
84 
88  virtual void SetBoundingBox (const PMRect& bbox) = 0;
92  virtual void SetTargetRes (const PMReal& targetRes) = 0;
96  virtual void SetAddProcessColors(const bool16 bAddProColor) = 0;
100  virtual void SetImportDCS(const bool16 bImportDCS) = 0;
104  virtual void SetReadOPI(const bool16 bReadOPI) = 0;
108  virtual void SetCreateFrame(const bool16 bCreateFrame) = 0;
112  virtual void SetEPSFlags (const EPSPSFlags flags) = 0;
116  virtual void SetDrawEPSOption(DrawEPSOption drawOption) = 0;
120  virtual PMRect GetBoundingBox () const = 0;
124  virtual PMReal GetTargetRes () const = 0;
128  virtual bool16 GetAddProcessColors() const = 0;
132  virtual bool16 GetImportDCS() const = 0;
136  virtual bool16 GetReadOPI() const = 0;
140  virtual bool16 GetCreateFrame() const = 0;
144  virtual EPSPSFlags GetEPSFlags () const = 0;
148  virtual DrawEPSOption GetDrawEPSOption() const = 0;
149 
165  virtual const UIDList* CreateUsedColorUIDList(const UIDList* pUIDList) = 0;
166 
170  virtual void AppendToUsedColorUIDList (const UID colorUID) = 0;
171 
176  virtual const UIDList* GetUsedColorUIDList() const = 0;
177 
182  virtual void ReplaceUsedColorUID (const UID, const UID) = 0;
183 
189 
195  virtual PMString GetEPSColorName (const PMString&) = 0;
196 };
197 
198 #endif