Important: The information in this document is obsolete and should not be used for new development.
Including Constants and Data Types for Picture Comments
For the picture comments described in this appendix, neither QuickDraw nor the Printing Manager includes constant definitions or data type declarations; instead, you must include these in your own build files. Listed here are the constants and data types for picture comments that have been predefined for printer drivers from Apple Computer, Inc.
{PicComments.p} CONST {values for picture comments} TextBegin = 150; TextEnd = 151; StringBegin = 152; StringEnd = 153; TextCenter = 154; LineLayoutOff = 155; LineLayoutOn = 156; ClientLineLayout = 157; {considered to be of limited usefulness} PolyBegin = 160; PolyEnd = 161; PolyIgnore = 163; PolySmooth = 164; PolyClose = 165; DashedLine = 180; DashedStop = 181; SetLineWidth = 182; PostScriptBegin = 190; PostScriptEnd = 191; PostScriptHandle = 192; PostScriptFile = 193; {considered to be of limited usefulness} TextIsPostScript = 194; {considered to be of limited usefulness} ResourcePS = 195; {considered to be of limited usefulness} PSBeginNoSave = 196; {dangerous to use with LaserWriter 8.0} SetGrayLevel = 197; {this comment now obsolete} RotateBegin = 200; RotateEnd = 201; RotateCenter = 202; {values for the tJus field of the TTxtPicRec record} tJusNone = 0; tJusLeft = 1; tJusCenter = 2; tJusRight = 3; tJusFull = 4; {values for the tFlip field of the TTxtPicRec record} tFlipNone = 0; tFlipHorizontal = 1; tFlipVertical = 2; TYPE TTxtPicHdl = ^TTxtPicPtr; TTxtPicPtr = ^TTxtPicRec; TTxtPicRec = PACKED RECORD tJus: Byte; {justification for line layout of text} tFlip: Byte; {horizontal or vertical flipping} tAngle: Integer; {0..360 degrees clockwise rotation } { in integer format} tLine: Byte; {reserved} tCmnt: Byte; {reserved} tAngleFixed: Byte; {0..360 degrees clockwise rotation in } { fixed-number format} END; TRotationHdl = ^TRotationPtr; TRotationPtr = ^TRotationRec; TRotationRec = RECORD rFlip: Integer; {horizontal/vertical flipping} rAngle: Integer; {0..360 degrees clockwise rotation } { in integer format} rAngleFixed: Fixed; {0..360 degrees clockwise rotation in } { fixed-number format} END; TCenterHdl = ^TCenterPtr; TCenterPtr = ^TCenterRec; TCenterRec = RECORD y: Fixed; {vertical offset from current pen location} x: Fixed; {horizontal offset from current pen location} END; TPolyVerbHdl = ^TPolyVerbPtr; TPolyVerbPtr = ^TPolyVerbRec; TPolyVerbRec = PACKED RECORD f7, f6, f5, f4, f3: Boolean; {reserved; set to 0} fPolyClose: Boolean; {TRUE is same as PolyClose } { picture comment} fPolyFill: Boolean; {TRUE means fill polygon} fPolyFrame: Boolean; {TRUE means frame polygon} END; TDashedLineHdl = ^TDashedLinePtr; TDashedLinePtr = ^TDashedLineRec; TDashedLineRec = PACKED RECORD offset: SignedByte; {offset into pattern for first dash} centered: SignedByte; {reserved; set to 0} intervals: ARRAY[0..5] OF SignedByte; {points for drawing and not drawing dashes} TLineWidthHdl = ^TLineWidthPtr; TLineWidthPtr = ^TLineWidth; TLineWidth = Point; {v = numerator, h = denominator} END;