CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
PdfPublishCommon.h
Go to the documentation of this file.
1
2// Copyright (C) 2002-2022, Open Design Alliance (the "Alliance").
3// All rights reserved.
4//
5// This software and its documentation and related materials are owned by
6// the Alliance. The software may only be incorporated into application
7// programs owned by members of the Alliance, subject to a signed
8// Membership Agreement and Supplemental Software License Agreement with the
9// Alliance. The structure and organization of this software are the valuable
10// trade secrets of the Alliance and its suppliers. The software is also
11// protected by copyright law and international treaty provisions. Application
12// programs incorporating this software must include the following statement
13// with their copyright notices:
14//
15// This application incorporates Open Design Alliance software pursuant to a license
16// agreement with Open Design Alliance.
17// Open Design Alliance Copyright (C) 2002-2022 by Open Design Alliance.
18// All rights reserved.
19//
20// By use of this software, its documentation or related materials, you
21// acknowledge and accept the above terms.
23
24
25#ifndef _PDFPUBLISH_COMMON_INCLUDED_
26#define _PDFPUBLISH_COMMON_INCLUDED_
27
28#include "OdaCommon.h"
29
34namespace OdPdfPublish {
35
42 {
43 eOk = 0, // Operation successfully finished.
44 eInternalError = 1, // An internal error occurred during the operation.
45 eEmptyInputArray = 2, // The input array is empty.
46 eNotSortedArray = 3, // The input array is not sorted.
47 eDuplicatedElement = 4, // A duplication of elements was found.
48 eNullDocument = 5, // Tried to process the operation with a null smart pointer to the Publish SDK document.
49 eKeyNotFound = 6, // The specified key value is not found.
50 eNullBaseName = 7, // The name of the base object is null.
51 eNotImplementedYet = 8, // The feature currently is not implemented.
52 exOdError = 0x00020000, // ODA base class error occured during the operation.
53 //DOM-IGNORE-BEGIN
54 // For internal use only.
55 eLastErrorNum = 0xFFFF
56 //DOM-IGNORE-END
57 };
58
62 namespace Activation {
63
67 enum When {
68 kExplicit, // Annotation stays inactive until it is directly activated by a user or a script.
69 kOpened, // Annotation is activated when its page is opened.
70 kVisible // Annotation is activated when its page becomes visible.
71 };
72 }
73
77 namespace Deactivation {
78
82 enum When {
83 kExplicit, // Annotation stays active until it is directly deactivated by a user or a script.
84 kClosed, // Annotation is deactivated when its page is closed.
85 kNotVisible // Annotation is deactivated when its page becomes invisible.
86 };
87 }
88
92 namespace Page {
93
97 enum Format {
98 kA4 = 0, // Format A4 (842 points width, 1190 points height).
99 kA3, // Format A3 (595 points width, 842 points height).
100 kP11x17, // Format P11x17.
101 kA5, // Format A5.
102 kB4JIS, // Format B4JIS.
103 kB5JIS, // Format B5JIS.
104 kExecutive, // Format Executive.
105 kLegal, // Format Legal.
106 kLetter, // Format Letter.
107 kTabloid, // Format Tabloid.
108 kB4ISO, // Format B4ISO.
109 kB5ISO, // Format B5ISO.
110 kCustom, // Custom format.
111 //DOM-IGNORE-BEGIN
112 // For internal use only.
114 //DOM-IGNORE-END
115 };
116
121 kPortrait = 0, // Portrait orientation.
122 kLandscape, // Landscape orientation.
123
124 //DOM-IGNORE-BEGIN
125 // For internal use only.
127 //DOM-IGNORE-END
128 };
129
134 {
135 kInches = 0, // Inch measurement units.
136 kMillimeters = 1, // Millimeter measurement units.
137 kPixels = 2 // Pixel measurement units.
138 };
139 }
140
144 namespace Camera {
145
150 kOrthographic = 0, // Orthographic camera projection.
151 kPerspective // Perspective camera projection.
152 };
153 }
154
158 namespace Lighting
159 {
160
164 enum Mode {
165 kDefault = 0, // Default light mode. Currently is not applied.
166 kArtwork, // Light mode is inherited from the annotation.
167 kNone, // No light mode is used.
168 kWhite, // White light mode is used.
169 kDay, // Day light mode is used.
170 kBright, // Bright light mode is used.
171 kPrimaryColor, // Primary color light mode is used.
172 kNight, // Night light mode is used.
173 kBlue, // Blue light mode is used.
174 kRed, // Red light mode is used.
175 kCube, // Cube light mode is used.
176 kCADOptimized, // Optimized light from CAD is used.
177 kHeadlamp // Head lamp light mode is used.
178 };
179 }
180
184 namespace Rendering
185 {
189 enum Mode {
190 kDefault = 0, // Default rendering mode. Currently is not applied.
191 kSolid, // Textured and lighted faces are rendered.
192 kSolidWireframe, // Textured, lighted faces and monochrome tessellation edges are rendered.
193 kSolidOutline, // Textured, lighted faces and monochrome silhouette edges are rendered.
194 kBoundingBox, // Monochrome bounding box edges are rendered.
195 kTransparent, // Textured and lighted transparent faces are rendered.
196 kTransparentWireframe, // Textured, lighted transparent faces and monochrome tessellation edges are rendered.
197 kTransparentBoundingBox, // Monochrome bounding box transparent faces are rendered.
198 kTransparentBoundingBoxOutline, // Monochrome edges and bounding box transparent faces are rendered.
199 kIllustration, // Monochrome unlighted faces and silhouette edges are rendered.
200 kShadedIllustration, // Textured, lighted highly emissive faces and monochrome silhouette edges are rendered.
201 kWireframe, // Monochrome tessellation edges are rendered.
202 kShadedWireframe, // Interpolated and lighted tessellation edges are rendered.
203 kHiddenWireframe, // Monochrome faces and tessellation edges are rendered.
204 kVertices, // Monochrome vertices are rendered.
205 kShadedVertices // Colored and lighted vertices are rendered.
206 };
207 }
208
212 namespace Artwork {
213
218 kNone, // No animation style. Application allows other ways of animation control, for example through JavaScript.
219 kLoop, // Animation loop. Application plays the animation in an infinite loop.
220 kBounce // Animation forward and backward loop. In each loop iteration, the animation first is played forward, then backward.
221 };
222
227 kNative, // Use default view from .prc data (if .prc data exists).
228 kPDF // Use default view from .pdf data (if .pdf data exists).
229 };
230
235 kDefined, // Use view settings.
236 kRuntime // Use application display runtime settings. In this mode settings are not applied to the default view.
237 };
238 }
239
243 namespace Border {
244
249 kThin, // Border line is thin.
250 kMedium, // Border line has medium thickness.
251 kWide // Border line is wide.
252 };
253
257 enum Style {
258 kSolid, // The border is solid.
259 kDashed, // The border is dashed.
260 kBeveled, // The border is bevelled.
261 kInset, // The border is inset.
262 kUnderlined // The border is underlined.
263 };
264 }
265
269 namespace Text {
270
275 kRegular, // Normal font style.
276 kBold, // Text appears as bold.
277 kItalic, // Text appears as italic.
278 kBoldItalic // Text appears as bold and italic.
279 };
280
285 kLeft, // Left text justification.
286 kRight, // Right text justification.
287 kCenter // Center text justification.
288 };
289
293 enum Rotation {
294 kNone, // Horizontally allocated text, no rotation.
295 kCounterClockwise90Degrees, // Counter-clockwise rotation 90 degrees relative to the horizontal position.
296 kCounterClockwise180Degrees, // Counter-clockwise rotation 180 degrees relative to the horizontal position.
297 kCounterClockwise270Degrees // Counter-clockwise rotation 270 degrees relative to the horizontal position.
298 };
299
304 {
305 kTimesRoman, // Normal Times Roman font.
306 kHelvetica, // Normal Helvetica font.
307 kCourier, // Normal Courier font.
308 kSymbol, // Normal Symbol font.
309 kTimesBold, // Bold Times Roman font.
310 kHelveticaBold, // Bold Helvetica font.
311 kCourierBold, // Bold Courier font.
312 kZapfDingbats, // Normal ZapfDingbats font.
313 kTimesItalic, // Italic Times Roman font.
314 kHelveticaOblique, // Oblique Helvetica font.
315 kCourierOblique, // Oblique Courier font.
316 kTimesBoldItalic, // Bold and italic combination of the Times Roman font.
317 kHelveticaBoldOblique, // Bold and oblique combination of the Helvetica font.
318 kCourierBoldOblique // Bold and oblique combination of the Courier font.
319 };
320
325 {
326 kBuiltIn, // Built-in data storage.
327 kExplicit // Explicit data storage.
328 };
329
334 {
335 kASCII, // ASCII Text.
336 kEastEuropeanRoman, // East European Roman.
337 kCyrillic, // Cyrillic.
338 kGreek, // Greek.
339 kTurkish, // Turkish.
340 kHebrew, // Hebrew.
341 kArabic, // Arabic.
342 kBaltic, // Baltic.
343 kChineseTraditional, // Traditional Chinese.
344 kChineseSimplified, // Simplified Chinese.
345 kJapanese, // Japanese.
346 kKorean, // Korean.
347 kDefault // Default language.
348 };
349 }
350
354 namespace Label {
355
360 {
361 kLabelOnly, // Only label is displayed.
362 kIconOnly, // Only label icon is displayed.
363 kTop, // The label is positioned at the top of the icon associated with it (i.e above the icon).
364 kBottom, // The label is positioned at the bottom of icon associated with it (i.e under the icon).
365 kLeft, // The label is positioned at the left edge of the icon associated with it.
366 kRight, // The label is positioned at the right edge of the icon associated with it.
367 kOnTop // The label is positioned on top of the icon associated with it.
368 };
369 }
370
374 namespace Highlighting {
375
380 enum Mode
381 {
382 kNone, // No highlighting.
383 kInvert, // Inverts highlighting colors within the control.
384 kOutline, // Creates an outline border around the control.
385 kPush // Content area appears on the page.
386 };
387 }
388
392 namespace Image {
393
398 {
399
400 kUnknown = -1, // The format is unknown.
401 kBMP, // A bitmap image.
402 kICO, // An icon image.
403 kJPEG, // A .jpeg image.
404 kJNG, // A .jng image.
405 kKOALA, // A .koala image.
406 kLBM, // An .lbm image.
407 kIFF, // An .iff image.
408 kMNG, // An .mgn image.
409 kPBM, // A .pbm image.
410 kPBMRAW, // A raw .pbm image.
411 kPCD, // A .pcd image.
412 kPCX, // A .pcx image.
413 kPGM, // A .pgm image.
414 kPGMRAW, // A raw .pgm image.
415 kPNG, // A .png image.
416 kPPM, // A .ppm image.
417 kPPMRAW, // A raw .ppm image.
418 kRAS, // A .ras image.
419 kTARGA, // A .targa image.
420 kTIFF, // A .tiff image.
421 kWBMP, // A .wbmp image.
422 kPSD, // A .psd (Adobe Photoshop) image.
423 kCUT, // A .cut image.
424 kXBM, // A .xbm image.
425 kXPM, // A .xpm image.
426 kDDS, // A .dds image.
427 kGIF, // A .gif image.
428 kHDR, // A .hdr image.
429 kFAXG3, // A .faxg3 image.
430 kSGI, // An .sgi image.
431 kEXR, // A .exr image.
432 kJ2K, // A .j2k image.
433 kJP2, // A .jp2 image.
434 kPFM, // A .pfm image.
435 kPICT, // A .pict image.
436 kRAW // A raw image.
437 };
438 }
439
443 namespace Action {
444
448 enum Type
449 {
450 kCursorEnter = 0, // The curson enters into a control.
451 kCursorExit = 1, // The curson exits from a control.
452 kButtonPressed = 2, // A button is pressed (but not released).
453 kButtonReleased = 3, // A pressed button is released.
454 kInputFocus = 4, // A control gets the focus.
455 kLoseFocus = 5, // A control loses the focus.
456 kPageOpened = 6, // A page is opened.
457 kPageClosed = 7, // A page is closed.
458 kPageVisible = 8, // A page becomes visible (is shown).
459 kPageInvisible = 9 // A page becomes invisible (is hidden).
460 };
461 }
462
466 namespace Geometry {
467
472 {
473 kLineCapNotSet = -1, // Line cap is not set.
474 kButtCap = 0, // Butt line cap.
475 kRoundCap = 1, // Round line cap.
476 kProjectingSquareCap = 2 // Projecting square line cap.
477 };
478
483 {
484 kLineJoinNotSet = -1, // Line join is not set.
485 kMiterJoin = 0, // Miter line join.
486 kRoundJoin = 1, // Round line join.
487 kBevelJoin = 2 // Bevel line join.
488 };
489
494 {
495 kFillNotSet = 0, // Finish rule is not set.
496 kEnd = 1, // End of the path.
497 kStroke = 2, // Stroke the path.
498 kClose = 4, // Close the path.
499 kFillEvenOdd = 8, // Fill the path using the even-odd rule to determine the region to fill.
500 kFillNonZero = 16 // Fill the path using the nonzero winding number rule to determine the region to fill. Any subpaths that are open are implicitly closed before being filled.
501 };
502 }
503
507 namespace Source {
511 enum Type
512 {
513 kCode = 0, // Source code text.
514 kFileName = 1 // Name of the source code file.
515 };
516 }
517
521 namespace CAD {
526 {
527 kNoPolicy = 0, // No color policy. A drawing is exported with its native color palette (as is).
528 kMono = 1, // Drawing is exported to a monochrome .pdf file.
529 kGrayscale = 2 // Drawing is exported to a grayscale .pdf file. Native colors are converted into grayscale
530 };
531 }
532
536 namespace AccessPermissions {
541 {
557
560 };
561 }
562
563}
564
565#endif // _PDFPUBLISH_COMMON_INCLUDED_
566
567