java.lang.Object
com.aspose.words.TextBox
public class TextBox
To learn more, visit the Working with Shapes documentation article. Use the Example: Example: Example:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert another textbox with specific margins.
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
textBox.setInternalMarginTop(15.0);
textBox.setInternalMarginBottom(15.0);
textBox.setInternalMarginLeft(15.0);
textBox.setInternalMarginRight(15.0);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text placed according to textbox margins.");
doc.save(getArtifactsDir() + "Shape.TextBoxMargins.docx");
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 150.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
// Move the document builder to inside the TextBox and add text.
builder.moveTo(textBoxShape.getLastParagraph());
builder.writeln("Hello world!");
builder.write("Hello again!");
// Set the "LayoutFlow" property to set an orientation for the text contents of this text box.
textBox.setLayoutFlow(layoutFlow);
doc.save(getArtifactsDir() + "Shape.TextBoxLayoutFlow.docx");
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 150.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
// Apply these values to both these members to get the parent shape to fit
// tightly around the text contents, ignoring the dimensions we have set.
textBox.setFitShapeToText(true);
textBox.setTextBoxWrapMode(TextBoxWrapMode.NONE);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text fit tightly inside textbox.");
doc.save(getArtifactsDir() + "Shape.TextBoxFitShapeToText.docx");
| Property Getters/Setters Summary | ||
|---|---|---|
boolean | getFitShapeToText() | |
void | setFitShapeToText(boolean value) | |
| Determines whether Microsoft Word will grow the shape to fit text. | ||
double | getInternalMarginBottom() | |
void | setInternalMarginBottom(double value) | |
| Specifies the inner bottom margin in points for a shape. | ||
double | getInternalMarginLeft() | |
void | setInternalMarginLeft(double value) | |
| Specifies the inner left margin in points for a shape. | ||
double | getInternalMarginRight() | |
void | setInternalMarginRight(double value) | |
| Specifies the inner right margin in points for a shape. | ||
double | getInternalMarginTop() | |
void | setInternalMarginTop(double value) | |
| Specifies the inner top margin in points for a shape. | ||
int | getLayoutFlow() | |
void | setLayoutFlow(int value) | |
| Determines the flow of the text layout in a shape. The value of the property is LayoutFlow integer constant. | ||
TextBox | getNext() | |
void | setNext(TextBox value) | |
|
Returns or sets a |
||
boolean | getNoTextRotation() | |
void | setNoTextRotation(boolean value) | |
| Gets or sets a boolean value indicating either text of the TextBox should not rotate when the shape is rotated. | ||
Shape | getParent() | |
|
Gets a parent shape for the |
||
TextBox | getPrevious() | |
|
Returns a |
||
int | getTextBoxWrapMode() | |
void | setTextBoxWrapMode(int value) | |
| Determines how text wraps inside a shape. The value of the property is TextBoxWrapMode integer constant. | ||
int | getVerticalAnchor() | |
void | setVerticalAnchor(int value) | |
| Specifies the vertical alignment of the text within a shape. The value of the property is TextBoxAnchor integer constant. | ||
| Method Summary | ||
|---|---|---|
void | breakForwardLink() | |
|
Breaks the link to the next |
||
boolean | isValidLinkTarget(TextBox target) | |
|
Determines whether this |
||
| Property Getters/Setters Detail |
|---|
getFitShapeToText/setFitShapeToText | |
public boolean getFitShapeToText() / public void setFitShapeToText(boolean value) | |
The default value is false.
Example:
Shows how to get a text box to resize itself to fit its contents tightly.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 150.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
// Apply these values to both these members to get the parent shape to fit
// tightly around the text contents, ignoring the dimensions we have set.
textBox.setFitShapeToText(true);
textBox.setTextBoxWrapMode(TextBoxWrapMode.NONE);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text fit tightly inside textbox.");
doc.save(getArtifactsDir() + "Shape.TextBoxFitShapeToText.docx");getInternalMarginBottom/setInternalMarginBottom | |
public double getInternalMarginBottom() / public void setInternalMarginBottom(double value) | |
The default value is 1/20 inch.
Example:
Shows how to set internal margins for a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert another textbox with specific margins.
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
textBox.setInternalMarginTop(15.0);
textBox.setInternalMarginBottom(15.0);
textBox.setInternalMarginLeft(15.0);
textBox.setInternalMarginRight(15.0);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text placed according to textbox margins.");
doc.save(getArtifactsDir() + "Shape.TextBoxMargins.docx");getInternalMarginLeft/setInternalMarginLeft | |
public double getInternalMarginLeft() / public void setInternalMarginLeft(double value) | |
The default value is 1/10 inch.
Example:
Shows how to set internal margins for a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert another textbox with specific margins.
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
textBox.setInternalMarginTop(15.0);
textBox.setInternalMarginBottom(15.0);
textBox.setInternalMarginLeft(15.0);
textBox.setInternalMarginRight(15.0);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text placed according to textbox margins.");
doc.save(getArtifactsDir() + "Shape.TextBoxMargins.docx");getInternalMarginRight/setInternalMarginRight | |
public double getInternalMarginRight() / public void setInternalMarginRight(double value) | |
The default value is 1/10 inch.
Example:
Shows how to set internal margins for a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert another textbox with specific margins.
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
textBox.setInternalMarginTop(15.0);
textBox.setInternalMarginBottom(15.0);
textBox.setInternalMarginLeft(15.0);
textBox.setInternalMarginRight(15.0);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text placed according to textbox margins.");
doc.save(getArtifactsDir() + "Shape.TextBoxMargins.docx");getInternalMarginTop/setInternalMarginTop | |
public double getInternalMarginTop() / public void setInternalMarginTop(double value) | |
The default value is 1/20 inch.
Example:
Shows how to set internal margins for a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert another textbox with specific margins.
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
textBox.setInternalMarginTop(15.0);
textBox.setInternalMarginBottom(15.0);
textBox.setInternalMarginLeft(15.0);
textBox.setInternalMarginRight(15.0);
builder.moveTo(textBoxShape.getLastParagraph());
builder.write("Text placed according to textbox margins.");
doc.save(getArtifactsDir() + "Shape.TextBoxMargins.docx");getLayoutFlow/setLayoutFlow | |
public int getLayoutFlow() / public void setLayoutFlow(int value) | |
The default value is
Example:
Shows how to set the orientation of text inside a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 150.0, 100.0);
TextBox textBox = textBoxShape.getTextBox();
// Move the document builder to inside the TextBox and add text.
builder.moveTo(textBoxShape.getLastParagraph());
builder.writeln("Hello world!");
builder.write("Hello again!");
// Set the "LayoutFlow" property to set an orientation for the text contents of this text box.
textBox.setLayoutFlow(layoutFlow);
doc.save(getArtifactsDir() + "Shape.TextBoxLayoutFlow.docx");getNext/setNext | |
public TextBox getNext() / public void setNext(TextBox value) | |
Example:
Shows how to link text boxes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape1 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox1 = textBoxShape1.getTextBox();
builder.writeln();
Shape textBoxShape2 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox2 = textBoxShape2.getTextBox();
builder.writeln();
Shape textBoxShape3 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox3 = textBoxShape3.getTextBox();
builder.writeln();
Shape textBoxShape4 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox4 = textBoxShape4.getTextBox();
// Create links between some of the text boxes.
if (textBox1.isValidLinkTarget(textBox2))
textBox1.setNext(textBox2);
if (textBox2.isValidLinkTarget(textBox3))
textBox2.setNext(textBox3);
// Only an empty text box may have a link.
Assert.assertTrue(textBox3.isValidLinkTarget(textBox4));
builder.moveTo(textBoxShape4.getLastParagraph());
builder.write("Hello world!");
Assert.assertFalse(textBox3.isValidLinkTarget(textBox4));
if (textBox1.getNext() != null && textBox1.getPrevious() == null)
System.out.println("This TextBox is the head of the sequence");
if (textBox2.getNext() != null && textBox2.getPrevious() != null)
System.out.println("This TextBox is the middle of the sequence");
if (textBox3.getNext() == null && textBox3.getPrevious() != null) {
System.out.println("This TextBox is the tail of the sequence");
// Break the forward link between textBox2 and textBox3, and then verify that they are no longer linked.
textBox3.getPrevious().breakForwardLink();
Assert.assertTrue(textBox2.getNext() == null);
Assert.assertTrue(textBox3.getPrevious() == null);
}
doc.save(getArtifactsDir() + "Shape.CreateLinkBetweenTextBoxes.docx");getNoTextRotation/setNoTextRotation | |
public boolean getNoTextRotation() / public void setNoTextRotation(boolean value) | |
The default value is false
Example:
Shows how to disable text rotation when the shape is rotate.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); Shape shape = builder.insertShape(ShapeType.ELLIPSE, 20.0, 20.0); shape.getTextBox().setNoTextRotation(true); doc.save(getArtifactsDir() + "Shape.NoTextRotation.docx");
getParent | |
public Shape getParent() | |
getPrevious | |
public TextBox getPrevious() | |
Example:
Shows how to link text boxes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape1 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox1 = textBoxShape1.getTextBox();
builder.writeln();
Shape textBoxShape2 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox2 = textBoxShape2.getTextBox();
builder.writeln();
Shape textBoxShape3 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox3 = textBoxShape3.getTextBox();
builder.writeln();
Shape textBoxShape4 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox4 = textBoxShape4.getTextBox();
// Create links between some of the text boxes.
if (textBox1.isValidLinkTarget(textBox2))
textBox1.setNext(textBox2);
if (textBox2.isValidLinkTarget(textBox3))
textBox2.setNext(textBox3);
// Only an empty text box may have a link.
Assert.assertTrue(textBox3.isValidLinkTarget(textBox4));
builder.moveTo(textBoxShape4.getLastParagraph());
builder.write("Hello world!");
Assert.assertFalse(textBox3.isValidLinkTarget(textBox4));
if (textBox1.getNext() != null && textBox1.getPrevious() == null)
System.out.println("This TextBox is the head of the sequence");
if (textBox2.getNext() != null && textBox2.getPrevious() != null)
System.out.println("This TextBox is the middle of the sequence");
if (textBox3.getNext() == null && textBox3.getPrevious() != null) {
System.out.println("This TextBox is the tail of the sequence");
// Break the forward link between textBox2 and textBox3, and then verify that they are no longer linked.
textBox3.getPrevious().breakForwardLink();
Assert.assertTrue(textBox2.getNext() == null);
Assert.assertTrue(textBox3.getPrevious() == null);
}
doc.save(getArtifactsDir() + "Shape.CreateLinkBetweenTextBoxes.docx");getTextBoxWrapMode/setTextBoxWrapMode | |
public int getTextBoxWrapMode() / public void setTextBoxWrapMode(int value) | |
The default value is
Example:
Shows how to set a wrapping mode for the contents of a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape = builder.insertShape(ShapeType.TEXT_BOX, 300.0, 300.0);
TextBox textBox = textBoxShape.getTextBox();
// Set the "TextBoxWrapMode" property to "TextBoxWrapMode.None" to increase the text box's width
// to accommodate text, should it be large enough.
// Set the "TextBoxWrapMode" property to "TextBoxWrapMode.Square" to
// wrap all text inside the text box, preserving its dimensions.
textBox.setTextBoxWrapMode(textBoxWrapMode);
builder.moveTo(textBoxShape.getLastParagraph());
builder.getFont().setSize(32.0);
builder.write("Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.");
doc.save(getArtifactsDir() + "Shape.TextBoxContentsWrapMode.docx");getVerticalAnchor/setVerticalAnchor | |
public int getVerticalAnchor() / public void setVerticalAnchor(int value) | |
The default value is
Example:
Shows how to vertically align the text contents of a text box.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertShape(ShapeType.TEXT_BOX, 200.0, 200.0);
// Set the "VerticalAnchor" property to "TextBoxAnchor.Top" to
// align the text in this text box with the top side of the shape.
// Set the "VerticalAnchor" property to "TextBoxAnchor.Middle" to
// align the text in this text box to the center of the shape.
// Set the "VerticalAnchor" property to "TextBoxAnchor.Bottom" to
// align the text in this text box to the bottom of the shape.
shape.getTextBox().setVerticalAnchor(verticalAnchor);
builder.moveTo(shape.getFirstParagraph());
builder.write("Hello world!");
// The vertical aligning of text inside text boxes is available from Microsoft Word 2007 onwards.
doc.getCompatibilityOptions().optimizeFor(MsWordVersion.WORD_2007);
doc.save(getArtifactsDir() + "Shape.VerticalAnchor.docx");| Method Detail |
|---|
breakForwardLink | |
public void breakForwardLink() | |
Example:
Shows how to link text boxes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape1 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox1 = textBoxShape1.getTextBox();
builder.writeln();
Shape textBoxShape2 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox2 = textBoxShape2.getTextBox();
builder.writeln();
Shape textBoxShape3 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox3 = textBoxShape3.getTextBox();
builder.writeln();
Shape textBoxShape4 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox4 = textBoxShape4.getTextBox();
// Create links between some of the text boxes.
if (textBox1.isValidLinkTarget(textBox2))
textBox1.setNext(textBox2);
if (textBox2.isValidLinkTarget(textBox3))
textBox2.setNext(textBox3);
// Only an empty text box may have a link.
Assert.assertTrue(textBox3.isValidLinkTarget(textBox4));
builder.moveTo(textBoxShape4.getLastParagraph());
builder.write("Hello world!");
Assert.assertFalse(textBox3.isValidLinkTarget(textBox4));
if (textBox1.getNext() != null && textBox1.getPrevious() == null)
System.out.println("This TextBox is the head of the sequence");
if (textBox2.getNext() != null && textBox2.getPrevious() != null)
System.out.println("This TextBox is the middle of the sequence");
if (textBox3.getNext() == null && textBox3.getPrevious() != null) {
System.out.println("This TextBox is the tail of the sequence");
// Break the forward link between textBox2 and textBox3, and then verify that they are no longer linked.
textBox3.getPrevious().breakForwardLink();
Assert.assertTrue(textBox2.getNext() == null);
Assert.assertTrue(textBox3.getPrevious() == null);
}
doc.save(getArtifactsDir() + "Shape.CreateLinkBetweenTextBoxes.docx");isValidLinkTarget | |
public boolean isValidLinkTarget(TextBox target) | |
Example:
Shows how to link text boxes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape textBoxShape1 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox1 = textBoxShape1.getTextBox();
builder.writeln();
Shape textBoxShape2 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox2 = textBoxShape2.getTextBox();
builder.writeln();
Shape textBoxShape3 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox3 = textBoxShape3.getTextBox();
builder.writeln();
Shape textBoxShape4 = builder.insertShape(ShapeType.TEXT_BOX, 100.0, 100.0);
TextBox textBox4 = textBoxShape4.getTextBox();
// Create links between some of the text boxes.
if (textBox1.isValidLinkTarget(textBox2))
textBox1.setNext(textBox2);
if (textBox2.isValidLinkTarget(textBox3))
textBox2.setNext(textBox3);
// Only an empty text box may have a link.
Assert.assertTrue(textBox3.isValidLinkTarget(textBox4));
builder.moveTo(textBoxShape4.getLastParagraph());
builder.write("Hello world!");
Assert.assertFalse(textBox3.isValidLinkTarget(textBox4));
if (textBox1.getNext() != null && textBox1.getPrevious() == null)
System.out.println("This TextBox is the head of the sequence");
if (textBox2.getNext() != null && textBox2.getPrevious() != null)
System.out.println("This TextBox is the middle of the sequence");
if (textBox3.getNext() == null && textBox3.getPrevious() != null) {
System.out.println("This TextBox is the tail of the sequence");
// Break the forward link between textBox2 and textBox3, and then verify that they are no longer linked.
textBox3.getPrevious().breakForwardLink();
Assert.assertTrue(textBox2.getNext() == null);
Assert.assertTrue(textBox3.getPrevious() == null);
}
doc.save(getArtifactsDir() + "Shape.CreateLinkBetweenTextBoxes.docx");