FieldAdvance
Contents
[
Hide
]FieldAdvance class
Implements the ADVANCE field.
To learn more, visit the Working with Fields documentation article.
public class FieldAdvance : Field
Constructors
| Name | Description |
|---|---|
| FieldAdvance() | The default constructor. |
Properties
| Name | Description |
|---|---|
| DisplayResult { get; } | Gets the text that represents the displayed field result. |
| DownOffset { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved down. |
| End { get; } | Gets the node that represents the field end. |
| Format { get; } | Gets a FieldFormat object that provides typed access to field’s formatting. |
| HorizontalPosition { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved horizontally from the left edge of the column, frame, or text box. |
| IsDirty { get; set; } | Gets or sets whether the current result of the field is no longer correct (stale) due to other modifications made to the document. |
| IsLocked { get; set; } | Gets or sets whether the field is locked (should not recalculate its result). |
| LeftOffset { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved left. |
| LocaleId { get; set; } | Gets or sets the LCID of the field. |
| Result { get; set; } | Gets or sets text that is between the field separator and field end. |
| RightOffset { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved right. |
| Separator { get; } | Gets the node that represents the field separator. Can be null. |
| Start { get; } | Gets the node that represents the start of the field. |
| virtual Type { get; } | Gets the Microsoft Word field type. |
| UpOffset { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved up. |
| VerticalPosition { get; set; } | Gets or sets the number of points by which the text that follows the field should be moved vertically from the top edge of the page. |
Methods
| Name | Description |
|---|---|
| GetFieldCode() | Returns text between field start and field separator (or field end if there is no separator). Both field code and field result of child fields are included. |
| GetFieldCode(bool) | Returns text between field start and field separator (or field end if there is no separator). |
| virtual Remove() | Removes the field from the document. Returns a node right after the field. If the field’s end is the last child of its parent node, returns its parent paragraph. If the field is already removed, returns null. |
| Unlink() | Performs the field unlink. |
| Update() | Performs the field update. Throws if the field is being updated already. |
| Update(bool) | Performs a field update. Throws if the field is being updated already. |
Remarks
Moves the starting point at which the text that lexically follows the field is displayed to the right or left, up or down, or to a specific horizontal or vertical position.
Examples
Shows how to insert an ADVANCE field, and edit its properties.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("This text is in its normal place.");
// Below are two ways of using the ADVANCE field to adjust the position of text that follows it.
// The effects of an ADVANCE field continue to be applied until the paragraph ends,
// or another ADVANCE field updates the offset/coordinate values.
// 1 - Specify a directional offset:
FieldAdvance field = (FieldAdvance)builder.InsertField(FieldType.FieldAdvance, true);
field.RightOffset = "5";
field.UpOffset = "5";
Assert.That(field.GetFieldCode(), Is.EqualTo(" ADVANCE \\r 5 \\u 5"));
builder.Write("This text will be moved up and to the right.");
field = (FieldAdvance)builder.InsertField(FieldType.FieldAdvance, true);
field.DownOffset = "5";
field.LeftOffset = "100";
Assert.That(field.GetFieldCode(), Is.EqualTo(" ADVANCE \\d 5 \\l 100"));
builder.Writeln("This text is moved down and to the left, overlapping the previous text.");
// 2 - Move text to a position specified by coordinates:
field = (FieldAdvance)builder.InsertField(FieldType.FieldAdvance, true);
field.HorizontalPosition = "-100";
field.VerticalPosition = "200";
Assert.That(field.GetFieldCode(), Is.EqualTo(" ADVANCE \\x -100 \\y 200"));
builder.Write("This text is in a custom position.");
doc.Save(ArtifactsDir + "Field.ADVANCE.docx");
See Also
- class Field
- namespace Aspose.Words.Fields
- assembly Aspose.Words