java.lang.Objectcom.aspose.words.TextBox
public class TextBox
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 TextBox that represents the next TextBox in a sequence of shapes. | ||
Shape | getParent() | |
Gets a parent shape for the TextBox. | ||
TextBox | getPrevious() | |
Returns a TextBox that represents the previous TextBox in a sequence of shapes. | ||
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 TextBox. | ||
boolean | isValidLinkTarget(TextBox target) | |
Determines whether this TextBox can be linked to the target Textbox. |
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");
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");