public class Border
Borders can be applied to various document elements including paragraph, run of text inside a paragraph or a table cell.
Example:
Shows how to insert a string surrounded by a border into a document.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.getFont().getBorder().setColor(Color.GREEN); builder.getFont().getBorder().setLineWidth(2.5); builder.getFont().getBorder().setLineStyle(LineStyle.DASH_DOT_STROKER); builder.write("Text surrounded by green border."); doc.save(getArtifactsDir() + "Border.FontBorder.docx");
Example:
Shows how to insert a paragraph with a top border.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); Border topBorder = builder.getParagraphFormat().getBorders().getByBorderType(BorderType.TOP); topBorder.setColor(Color.RED); topBorder.setLineWidth(4.0d); topBorder.setLineStyle(LineStyle.DASH_SMALL_GAP); builder.writeln("Text with a red top border."); doc.save(getArtifactsDir() + "Border.ParagraphTopBorder.docx");
Property Getters/Setters Summary | ||
---|---|---|
java.awt.Color | getColor() | |
void | setColor(java.awt.Colorvalue) | |
Gets or sets the border color. | ||
double | getDistanceFromText() | |
void | setDistanceFromText(doublevalue) | |
Gets or sets distance of the border from text or from the page edge in points. | ||
boolean | isVisible() | |
Returns true if the LineStyle is not LineStyle.None.
|
||
int | getLineStyle() | |
void | setLineStyle(intvalue) | |
Gets or sets the border style. The value of the property is LineStyle integer constant. | ||
double | getLineWidth() | |
void | setLineWidth(doublevalue) | |
Gets or sets the border width in points. | ||
boolean | getShadow() | |
void | setShadow(booleanvalue) | |
Gets or sets a value indicating whether the border has a shadow. |
Method Summary | ||
---|---|---|
void | clearFormatting() | |
Resets border properties to default values.
|
||
boolean | equals(Border rhs) | |
Determines whether the specified border is equal in value to the current border.
|
||
boolean | equals(java.lang.Object obj) | |
Determines whether the specified object is equal in value to the current object.
|
||
int | hashCode() | |
Serves as a hash function for this type.
|
public java.awt.Color getColor() / public void setColor(java.awt.Color value)
Example:
Shows how to insert a string surrounded by a border into a document.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.getFont().getBorder().setColor(Color.GREEN); builder.getFont().getBorder().setLineWidth(2.5); builder.getFont().getBorder().setLineStyle(LineStyle.DASH_DOT_STROKER); builder.write("Text surrounded by green border."); doc.save(getArtifactsDir() + "Border.FontBorder.docx");
public double getDistanceFromText() / public void setDistanceFromText(double value)
Example:
Shows how to create a page border that looks like a wide blue band at the top of the first page only.Document doc = new Document(); PageSetup pageSetup = doc.getSections().get(0).getPageSetup(); pageSetup.setBorderAlwaysInFront(false); pageSetup.setBorderDistanceFrom(PageBorderDistanceFrom.PAGE_EDGE); pageSetup.setBorderAppliesTo(PageBorderAppliesTo.FIRST_PAGE); Border border = pageSetup.getBorders().getByBorderType(BorderType.TOP); border.setLineStyle(LineStyle.SINGLE); border.setLineWidth(30.0); border.setColor(Color.BLUE); border.setDistanceFromText(0.0); doc.save(getArtifactsDir() + "PageSetup.PageBorderProperties.docx");
public boolean isVisible()
Example:
Shows how to remove borders from a paragraph.Document doc = new Document(getMyDir() + "Borders.docx"); // Each paragraph has an individual set of borders. // We can access the settings for the appearance of these borders via the paragraph format object. BorderCollection borders = doc.getFirstSection().getBody().getFirstParagraph().getParagraphFormat().getBorders(); Assert.assertEquals(Color.RED.getRGB(), borders.get(0).getColor().getRGB()); Assert.assertEquals(3.0d, borders.get(0).getLineWidth()); Assert.assertEquals(LineStyle.SINGLE, borders.get(0).getLineStyle()); Assert.assertTrue(borders.get(0).isVisible()); // We can remove a border at once by running the ClearFormatting method. // Running this method on every border of a paragraph will remove all of its borders. for (Border border : borders) border.clearFormatting(); Assert.assertEquals(0, borders.get(0).getColor().getRGB()); Assert.assertEquals(0.0d, borders.get(0).getLineWidth()); Assert.assertEquals(LineStyle.NONE, borders.get(0).getLineStyle()); Assert.assertFalse(borders.get(0).isVisible()); doc.save(getArtifactsDir() + "Border.ClearFormatting.docx");
public int getLineStyle() / public void setLineStyle(int value)
If you set line style to none, then line width is automatically changed to zero.
Example:
Shows how to insert a string surrounded by a border into a document.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.getFont().getBorder().setColor(Color.GREEN); builder.getFont().getBorder().setLineWidth(2.5); builder.getFont().getBorder().setLineStyle(LineStyle.DASH_DOT_STROKER); builder.write("Text surrounded by green border."); doc.save(getArtifactsDir() + "Border.FontBorder.docx");
public double getLineWidth() / public void setLineWidth(double value)
If you set line width greater than zero when line style is none, the line style is automatically changed to single line.
Example:
Shows how to insert a string surrounded by a border into a document.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.getFont().getBorder().setColor(Color.GREEN); builder.getFont().getBorder().setLineWidth(2.5); builder.getFont().getBorder().setLineStyle(LineStyle.DASH_DOT_STROKER); builder.write("Text surrounded by green border."); doc.save(getArtifactsDir() + "Border.FontBorder.docx");
public boolean getShadow() / public void setShadow(boolean value)
In Microsoft Word, for a border to have a shadow, the borders on all four sides (left, top, right and bottom) should be of the same type, width, color and all should have the Shadow property set to true.
Example:
Shows how to create green wavy page border with a shadow.Document doc = new Document(); PageSetup pageSetup = doc.getSections().get(0).getPageSetup(); pageSetup.getBorders().setLineStyle(LineStyle.DOUBLE_WAVE); pageSetup.getBorders().setLineWidth(2.0); pageSetup.getBorders().setColor(Color.GREEN); pageSetup.getBorders().setDistanceFromText(24.0); pageSetup.getBorders().setShadow(true); doc.save(getArtifactsDir() + "PageSetup.PageBorders.docx");
public void clearFormatting()
Example:
Shows how to remove borders from a paragraph.Document doc = new Document(getMyDir() + "Borders.docx"); // Each paragraph has an individual set of borders. // We can access the settings for the appearance of these borders via the paragraph format object. BorderCollection borders = doc.getFirstSection().getBody().getFirstParagraph().getParagraphFormat().getBorders(); Assert.assertEquals(Color.RED.getRGB(), borders.get(0).getColor().getRGB()); Assert.assertEquals(3.0d, borders.get(0).getLineWidth()); Assert.assertEquals(LineStyle.SINGLE, borders.get(0).getLineStyle()); Assert.assertTrue(borders.get(0).isVisible()); // We can remove a border at once by running the ClearFormatting method. // Running this method on every border of a paragraph will remove all of its borders. for (Border border : borders) border.clearFormatting(); Assert.assertEquals(0, borders.get(0).getColor().getRGB()); Assert.assertEquals(0.0d, borders.get(0).getLineWidth()); Assert.assertEquals(LineStyle.NONE, borders.get(0).getLineStyle()); Assert.assertFalse(borders.get(0).isVisible()); doc.save(getArtifactsDir() + "Border.ClearFormatting.docx");
public boolean equals(Border rhs)
Example:
Shows how border collections can share elements.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.writeln("Paragraph 1."); builder.write("Paragraph 2."); // Since both paragraphs were created with the same border configuration, // the border collections of the two paragraphs share the same elements. BorderCollection firstParagraphBorders = doc.getFirstSection().getBody().getFirstParagraph().getParagraphFormat().getBorders(); BorderCollection secondParagraphBorders = builder.getCurrentParagraph().getParagraphFormat().getBorders(); for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertTrue(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); Assert.assertFalse(firstParagraphBorders.get(i).isVisible()); } for (Border border : secondParagraphBorders) border.setLineStyle(LineStyle.DOT_DASH); // After changing the line style of the borders in just the second paragraph, // the border collections no longer share the same elements. for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertFalse(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertNotEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); // Changing the appearance of an empty border makes it visible. Assert.assertTrue(secondParagraphBorders.get(i).isVisible()); } doc.save(getArtifactsDir() + "Border.SharedElements.docx");
public boolean equals(java.lang.Object obj)
Example:
Shows how border collections can share elements.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.writeln("Paragraph 1."); builder.write("Paragraph 2."); // Since both paragraphs were created with the same border configuration, // the border collections of the two paragraphs share the same elements. BorderCollection firstParagraphBorders = doc.getFirstSection().getBody().getFirstParagraph().getParagraphFormat().getBorders(); BorderCollection secondParagraphBorders = builder.getCurrentParagraph().getParagraphFormat().getBorders(); for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertTrue(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); Assert.assertFalse(firstParagraphBorders.get(i).isVisible()); } for (Border border : secondParagraphBorders) border.setLineStyle(LineStyle.DOT_DASH); // After changing the line style of the borders in just the second paragraph, // the border collections no longer share the same elements. for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertFalse(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertNotEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); // Changing the appearance of an empty border makes it visible. Assert.assertTrue(secondParagraphBorders.get(i).isVisible()); } doc.save(getArtifactsDir() + "Border.SharedElements.docx");
public int hashCode()
Example:
Shows how border collections can share elements.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.writeln("Paragraph 1."); builder.write("Paragraph 2."); // Since both paragraphs were created with the same border configuration, // the border collections of the two paragraphs share the same elements. BorderCollection firstParagraphBorders = doc.getFirstSection().getBody().getFirstParagraph().getParagraphFormat().getBorders(); BorderCollection secondParagraphBorders = builder.getCurrentParagraph().getParagraphFormat().getBorders(); for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertTrue(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); Assert.assertFalse(firstParagraphBorders.get(i).isVisible()); } for (Border border : secondParagraphBorders) border.setLineStyle(LineStyle.DOT_DASH); // After changing the line style of the borders in just the second paragraph, // the border collections no longer share the same elements. for (int i = 0; i < firstParagraphBorders.getCount(); i++) { Assert.assertFalse(firstParagraphBorders.get(i).equals(secondParagraphBorders.get(i))); Assert.assertNotEquals(firstParagraphBorders.get(i).hashCode(), secondParagraphBorders.get(i).hashCode()); // Changing the appearance of an empty border makes it visible. Assert.assertTrue(secondParagraphBorders.get(i).isVisible()); } doc.save(getArtifactsDir() + "Border.SharedElements.docx");