00001 #ifndef __AITextFrame__
00002 #define __AITextFrame__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef __AITypes__
00031 #include "AITypes.h"
00032 #endif
00033
00034 #ifndef __AIArt__
00035 #include "AIArt.h"
00036 #endif
00037
00038 #ifndef __AIFONT__
00039 #include "AIFont.h"
00040 #endif
00041
00042 #ifndef __AIHitTest__
00043 #include "AIHitTest.h"
00044 #endif
00045
00046 #ifndef __ATESuites__
00047 #include "ATESuites.h"
00048 #endif
00049
00050 #ifdef __cplusplus
00051 using ATE::TextRangesRef;
00052 using ATE::TextRangeRef;
00053 using ATE::TextFrameRef;
00054 #endif
00055
00056 #include "AIHeaderBegin.h"
00057
00061
00062
00063
00064
00065
00066
00067 #define kAITextFrameSuite "AI Text Frame Suite"
00068
00069 #define kAITextFrameSuiteVersion4 AIAPI_VERSION(4)
00070 #define kAITextFrameSuiteVersion kAITextFrameSuiteVersion4
00071 #define kAITextFrameVersion kAITextFrameSuiteVersion
00072
00073 #define kAITextFrameMESuite "AI Text Frame ME Suite"
00074 #define kAITextFrameMESuiteVersion3 AIAPI_VERSION(3)
00075 #define kAITextFrameMESuiteVersion kAITextFrameMESuiteVersion3
00076 #define kAITextFrameMEVersion kAITextFrameMESuiteVersion
00077
00078
00079 #define kAITextFrameVersion kAITextFrameSuiteVersion
00080
00081 #define kAITextFrameHitSuite "AI Text Frame Hit Suite"
00082 #define kAITextFrameHitSuiteVersion2 AIAPI_VERSION(2)
00083 #define kAITextFrameHitSuiteVersion kAITextFrameHitSuiteVersion2
00084 #define kAITextFrameHitVersion kAITextFrameHitSuiteVersion
00085
00087 typedef enum {
00088 kUnknownTextType = -1,
00091 kPointTextType,
00094 kInPathTextType,
00097 kOnPathTextType
00098 } AITextType;
00099
00101 typedef AITextType AITextFrameType;
00102
00104 enum AITextDirection{
00105 kAITextLeftToRightDirection,
00106 kAITextRightToLeftDirection
00107 };
00108
00110 enum AITextPart {
00111 kAITextNowhere = 0,
00113 kAITextText = 1,
00115 kAITextInport = 2,
00117 kAITextOutPort = 3,
00119 kAITextStart = 4,
00121 kAITextMiddle = 5,
00123 kAITextEnd = 6
00124 };
00125
00127 enum TextAntialiasingAvailableTypes
00128 {
00129 kTextAntialiasingInvalid = 0,
00130 kTextAntialiasingNone,
00131 kTextAntialiasingSharp,
00132 kTextAntialiasingCrisp,
00133 kTextAntialiasingStrong
00134 };
00135
00136
00137
00138
00139
00140
00141
00167 typedef struct {
00168
00177 AIAPI AIErr (*NewPointText) ( ai::int16 paintOrder, AIArtHandle prep, AITextOrientation orient,
00178 AIRealPoint anchor, AIArtHandle *newTextFrame );
00190 AIAPI AIErr (*NewInPathText) ( ai::int16 paintOrder, AIArtHandle prep, AITextOrientation orient,
00191 AIArtHandle path, AIArtHandle baseFrame, AIBool8 append, AIArtHandle *newTextFrame );
00192
00208 AIAPI AIErr (*NewOnPathText) ( ai::int16 paintOrder, AIArtHandle prep, AITextOrientation orient,
00209 AIArtHandle path, AIReal startT, AIReal endT, AIArtHandle baseFrame,
00210 AIBool8 append, AIArtHandle *newTextFrame );
00211
00225 AIAPI AIErr (*NewOnPathText2) ( ai::int16 paintOrder, AIArtHandle prep, AITextOrientation orient,
00226 AIArtHandle path, AIRealPoint anchor, AIArtHandle baseFrame,
00227 AIBool8 append, AIArtHandle *newTextFrame );
00228
00233 AIAPI AIErr (*GetType) ( AIArtHandle textFrame, AITextFrameType *type );
00234
00239 AIAPI AIErr (*GetOrientation) ( AIArtHandle textFrame, AITextOrientation *orient );
00240
00245 AIAPI AIErr (*SetOrientation) ( AIArtHandle textFrame, AITextOrientation orient );
00246
00251 AIAPI AIErr (*GetTextAntialias) ( AIArtHandle textFrame, TextAntialiasingAvailableTypes *tAntialias );
00252
00257 AIAPI AIErr (*SetTextAntialias) ( AIArtHandle textFrame, TextAntialiasingAvailableTypes tAntialias );
00258
00265 AIAPI AIErr (*GetPointTextAnchor)( AIArtHandle textFrame, AIRealPoint *anchor );
00266
00277 AIAPI AIErr (*GetPathObject) ( AIArtHandle textFrame, AIArtHandle *pathObject );
00278
00287 AIAPI AIErr (*GetOnPathTextTRange)( AIArtHandle textFrame, AIReal *startT, AIReal *endT );
00288
00295 AIAPI AIErr (*SetOnPathTextTRange)( AIArtHandle textFrame, AIReal startT, AIReal endT );
00296
00305 AIAPI AIErr (*GetATETextRange) ( AIArtHandle textFrame, TextRangeRef* textRange );
00306
00313 AIAPI AIErr (*GetATETextFrame) ( AIArtHandle textFrame, TextFrameRef* ATE_textFrame );
00314
00319 AIAPI AIErr (*GetAITextFrame) ( TextFrameRef ATE_textFrame, AIArtHandle* textFrame );
00320
00328 AIAPI AIErr (*GetATETextSelection)( AIArtHandle textFrame, TextRangesRef* Selection );
00329
00337 AIAPI AIErr (*DoTextFrameHit) ( const AIHitRef hitRef, TextRangeRef* textRange );
00338
00347 AIAPI AIErr (*CreateOutline) ( AIArtHandle textFrame, AIArtHandle *outline );
00348
00353 AIAPI AIErr (*Link) ( AIArtHandle baseFrame, AIArtHandle nextFrame );
00354
00369 AIAPI AIErr (*Unlink) ( AIArtHandle frame, AIBool8 before, AIBool8 after );
00370
00380 AIAPI AIErr (*CreateATEV2Text) ( ai::int16 paintOrder, AIArtHandle prep, void* data,
00381 size_t size, ai::int32 index, AIArtHandle *newTextFrame );
00382
00388 AIAPI AIErr (*GetATEV2Data) ( void** data, size_t* size );
00389
00396 AIAPI AIErr (*GetStoryIndex) ( AIArtHandle frame, ai::int32* index );
00397
00404 AIAPI AIErr (*GetFrameIndex) ( AIArtHandle frame, ai::int32* index );
00405
00410 AIAPI AIErr (*PartOfLinkedText) ( AIArtHandle frame, AIBool8* linked );
00411 } AITextFrameSuite;
00412
00413
00421 typedef struct {
00422
00427 AIAPI AIErr (*GetDirection) ( AIArtHandle textFrame, AITextDirection *dir );
00428
00433 AIAPI AIErr (*SetDirection) ( AIArtHandle textFrame, AITextDirection dir );
00434
00443 AIAPI AIErr (*NewPointTextME) ( short paintOrder, AIArtHandle prep, AITextOrientation orient,AITextDirection dir, AIRealPoint anchor, AIArtHandle *newTextFrame );
00444
00456 AIAPI AIErr (*NewInPathTextME) ( short paintOrder, AIArtHandle prep, AITextOrientation orient, AITextDirection dir, AIArtHandle path, AIArtHandle baseFrame, AIBool8 append, AIArtHandle *newTextFrame );
00457
00473 AIAPI AIErr (*NewOnPathTextME) ( short paintOrder, AIArtHandle prep, AITextOrientation orient, AITextDirection dir, AIArtHandle path, AIReal startT, AIReal endT, AIArtHandle baseFrame, AIBool8 append, AIArtHandle *newTextFrame );
00474
00488 AIAPI AIErr (*NewOnPathText2ME) ( short paintOrder, AIArtHandle prep, AITextOrientation orient, AITextDirection dir, AIArtHandle path, AIRealPoint anchor, AIArtHandle baseFrame, AIBool8 append, AIArtHandle *newTextFrame );
00489
00493 AIAPI AIErr (*FullReflow) ( AIArtHandle newTextFrame );
00494
00495 } AITextFrameMESuite;
00496
00497
00507 typedef struct {
00508
00513 AIAPI ai::int32 (*GetPart) (AIHitRef hit);
00514
00515 } AITextFrameHitSuite;
00516
00517
00518 #include "AIHeaderEnd.h"
00519
00520
00521 #endif