Text Class Documentation
class Text : ElementNamespace:Datalogics::PDFL
- Inherits from:
Element
Detailed Description
A container that represents a series of text elements and characters.
A Text object is container that represents both a series of TextRun elements and a series of text characters. Operations can be performed on individual TextRuns within a Text or on individual characters within a Text by specifying the index of the individual TextRun or character. All indices start at 0.
Referenced by
Constructor & Destructor Documentation
Text
Text()Create a new, empty Text object.
Property Documentation
BoundingBox
Rect BoundingBox[get]The bounding box for this element.
The bounding box is a rectangle that is guaranteed to encompass the element, but it is not guaranteed to be the smallest box that could contain the element. For example, if the element is a Path that contains an arc, the bounding box encompasses the bezier control points, and not just the curve itself.
Clip
Clip Clip[get, set]Gets the current Clip for an Element.
Matrix
Matrix Matrix[get, set]The transformation matrix for the element.
NumberOfCharacters
int NumberOfCharacters[get]The number of characters in this text element.
NumberOfRuns
int NumberOfRuns[get]The number of text runs in this text element.
Member Function Documentation
AddGlyphs
void AddGlyphs(System.Collections.Generic.List< System.Char > glyphIDs, System.Collections.Generic.List< System.Char > uniText, Font font, GraphicState gState, TextState state, Matrix matrix, TextFlags flags)Parameters
glyphIDs: System.Collections.Generic.List< System.Char >Glyphs IDs in the specified font for adding to the page's content
uniText: System.Collections.Generic.List< System.Char >Unicode codes for the specified glyph IDs
font: FontFont for wich GlyphIDs were specified
gState: GraphicStateThe GraphicsState for Text element
state: TextStateTextState flags
matrix: Matrixmatrix for the Text element
flags: TextFlagsTextFlags that specifies what kind of text to add
Returns:
voidAdds Unicode text to a Text object
AddGlyphs
void AddGlyphs(System.Collections.Generic.List< System.Char > glyphIDs, System.Collections.Generic.List< System.Char > uniText, Font font, GraphicState gState, TextState state, Matrix matrix, TextFlags flags, int index)Parameters
glyphIDs: System.Collections.Generic.List< System.Char >Glyphs IDs in the specified font to add to the page's content
uniText: System.Collections.Generic.List< System.Char >Unicode codes for the specified glyph IDs
font: FontFont for wich GlyphIDs were specified
gState: GraphicStateThe GraphicsState for Text element
state: TextStateTextState flags
matrix: Matrixmatrix for the Text element
flags: TextFlagsTextFlags that specifies what kind of text to add
index: intThe index after which to add the character or text run.
Returns:
voidAdds Unicode text to a Text object
AddRun
void AddRun(TextRun run)Parameters
run: TextRunThe TextRun to append.
Returns:
voidAdds a TextRun to the end of this text element.
AddRun
void AddRun(TextRun run, int index)Parameters
run: TextRunTextRun to be added
index: intIndex, where TextRun should be placed
Returns:
voidAdds a TextRun at the specified index.
ChangeMatrixForTextRun
void ChangeMatrixForTextRun(Matrix newMatrix, int textRunIndex)Parameters
newMatrix: MatrixThe new transformation matrix to use for the TextRun.
textRunIndex: intThe index of a TextRun, relative to the Text object (the first TextRun in the Text object is at index 0).
Returns:
voidChanges the transformation matrix from user space to the current text space for the specified TextRun. Unlike ChangeTextMatrixForTextRun(), this function does not change fontSize, hScale, and textRise in the textState of PDEText. The H and V values of the matrix indicate the origin of the first character.
ChangeTextMatrixForTextRun
void ChangeTextMatrixForTextRun(Matrix newMatrix, int textRunIndex)Parameters
newMatrix: MatrixThe new transformation matrix to use for the TextRun.
textRunIndex: intThe index of a TextRun, relative to the Text object (the first TextRun in the Text object is at index 0).
Returns:
voidChanges the transformation matrix from user space to the current text space for the specified TextRun. The H and V values of the matrix indicate the origin of the first character.
Clone
new Text Clone()Returns:
new TextThe copied text.
Makes a copy of the text.
Make a copy of an text to obtain a new text that has a distinct set of attributes.
Clone
new Text Clone(ElementCloneFlags cloneFlags)Parameters
cloneFlags: ElementCloneFlagsFlags that modify the cloning operation.
Returns:
new TextThe copied text.
Makes a copy of the text.
Make a copy of an text to obtain a new text that has a distinct set of attributes.
ColorConvert
Text ColorConvert(Document document, ColorProfile prof, RenderIntent intent, bool embed)Parameters
document: DocumentThe document the element belongs to.
prof: ColorProfileThe ICC ColorProfile to be applied.
intent: RenderIntentThe ICC Rendering Intent for the ColorProfile
embed: boolIf true, embed the color space and make the object calibrated. If it is false and the target profile is CMYK, RGB, or Gray, the colors space of the resulting object, after conversion, will be DeviceCMYK, DeviceRGB, or DeviceGray, respectively.
Returns:
TextA new Text object with the applied ICC ColorProfile.
Applies the specified ICC ColorProfile to the Text object
Dispose
void Dispose()Returns:
voidFindTextRunIndexForCharacter
int FindTextRunIndexForCharacter(int characterIndex)Parameters
characterIndex: intThe index of a character, relative to the Text object (the first character in the Text object is at index 0).
Returns:
intThe index of the TextRun that contains the character specified by characterIndex.
Finds the index of the TextRun that contains the nth character in a Text object.
GetAdvanceForCharacter
Point GetAdvanceForCharacter(int characterIndex)Parameters
characterIndex: intThe index of a character, relative to the Text object (the first character in the Text object is at index 0).
Returns:
PointA value specifying both the horizontal and vertical components of the advance width of a character in user space.
Gets the advance width of a character, in user space. The advance width is the amount by which the current point advances when the character is drawn.
Advance width may be horizontal or vertical, depending on the writing style. Thus, the return value has both a horizontal and a vertical component.
GetAdvanceForTextRun
Point GetAdvanceForTextRun(int textRunIndex)Parameters
textRunIndex: intThe index of a TextRun, relative to the Text object (the first TextRun in the Text object is at index 0).
Returns:
PointA value specifying both the horizontal and vertical components of the advance width of a TextRun in user space.
Gets the advance width of a TextRun, in user space. The advance width is the amount by which the current point advances when the TextRun is drawn.
Advance width may be horizontal or vertical, depending on the writing style. Thus, the return value has both a horizontal and a vertical component.
GetBoundingBoxForCharacter
Rect GetBoundingBoxForCharacter(int characterIndex)Parameters
characterIndex: intThe index of a character, relative to the Text object (the first character in the Text object is at index 0)
Returns:
RectA Rect specifying the bounding box for the character.
The bounding box for a character in this text element.
GetRun
TextRun GetRun(int index)Parameters
index: intThe zero-based index of the TextRun to retrieve.
Returns:
TextRunThe TextRun at the specified index.
Obtains the TextRun at the specified index.
GetTextMatrixForCharacter
Matrix GetTextMatrixForCharacter(int characterIndex)Parameters
characterIndex: intThe index of a character, relative to the Text object (the first character in the Text object is at index 0).
Returns:
MatrixThe transformation matrix for the character specified by characterIndex.
Gets the transformation matrix from user space to the current text space for the specified character. The H and V values of the matrix indicate the origin of the first character.
GetTextMatrixForTextRun
Matrix GetTextMatrixForTextRun(int textRunIndex)Parameters
textRunIndex: intThe index of a TextRun, relative to the Text object (the first TextRun in the Text object is at index 0).
Returns:
MatrixThe transformation matrix for the TextRun specified by TextRunIndex.
Gets the transformation matrix from user space to the current text space for the specified TextRun. The H and V values of the matrix indicate the origin of the first character.
PointIntersectsCharacter
bool PointIntersectsCharacter(Point p, int index)Parameters
p: PointThe point to test, in user space coordinates.
index: intThe index of the character. The first character in the Text has an index of 0.
Returns:
booltrue if the point is on the character, false if the point is not on the character.
Tests whether a point is on a specified character within this Text object.
PointIntersectsTextRun
bool PointIntersectsTextRun(Point p, int index)Parameters
p: PointThe point to test, in user space coordinates.
index: intThe index of the TextRun. The first TextRun in the Text has an index of 0.
Returns:
booltrue if the point is on the TextRun, false if the point is not on the TextRun.
Tests whether a point is on a specified TextRun within this Text object.
RectIntersectsCharacter
bool RectIntersectsCharacter(Rect r, int index)Parameters
r: RectThe rect to test, in user space coordinates.
index: intThe index of the character. The first character in the Text has an index of 0.
Returns:
booltrue if any part of the rectangle is on the character, false if no part of the rectangle is on the character.
Tests whether any part of a rectangle is on a specified character within this Text object.
RectIntersectsTextRun
bool RectIntersectsTextRun(Rect r, int index)Parameters
r: RectThe rect to test, in user space coordinates.
index: intThe index of the TextRun. The first TextRun in the Text has an index of 0.
Returns:
booltrue if any part of the rectangle is on the TextRun, false if no part of the rectangle is on the TextRun.
Tests whether any part of a rectangle is on a specified TextRun within this Text object.
RemoveRuns
void RemoveRuns(int index, int count)Parameters
index: intStart position of range to delete
count: intCount of TextRuns to delete
Returns:
voidRemoves a count of TextRuns, starting from index
Rotate
void Rotate(double theta)Parameters
theta: doubleThe rotation angle in degrees.
Returns:
voidRotate an element by theta degrees counterclockwise using the matrix [ cos T sin T -sin T cos T 0 0 ].
Scale
void Scale(double sx, double sy)Parameters
sx: doubleThe horizontal scale factor.
sy: doubleThe vertical scale factor.
Returns:
voidScale an element by (sx,sy) units using the matrix [ sx 0 0 sy 0 0 ].
SplitTextRunAtCharacter
void SplitTextRunAtCharacter(int splitLocation)Parameters
splitLocation: intThe split location, relative to the Text object.
Returns:
voidSplits the TextRun containing the character at the specified location into two contiguous TextRuns. The character at the specified index will be part of the first TextRun.
Translate
void Translate(double tx, double ty)Parameters
tx: doubleThe horizontal translation distance in user space units.
ty: doubleThe vertical translation distance in user space units.
Returns:
voidTranslate an element by (tx,ty) units using the matrix [ 1 0 0 1 tx ty ].