public class TabStop
Normally, a tab stop specifies a position where a tab stop exists. But because
tab stops can be inherited from parent styles, it might be needed for the child object
to define explicitly that there is no tab stop at a given position. To clear
an inherited tab stop at a given position, create a TabStop object and set
TabAlignment.Clear
.
For more information see
Example:
Shows how to modify the position of the right tab stop in TOC related paragraphs.Document doc = new Document(getMyDir() + "Table of contents.docx"); // Iterate through all paragraphs formatted using the TOC result based styles; this is any style between TOC and TOC9 for (Paragraph para : (Iterable<Paragraph>) doc.getChildNodes(NodeType.PARAGRAPH, true)) { if (para.getParagraphFormat().getStyle().getStyleIdentifier() >= StyleIdentifier.TOC_1 && para.getParagraphFormat().getStyle().getStyleIdentifier() <= StyleIdentifier.TOC_9) { // Get the first tab used in this paragraph, this should be the tab used to align the page numbers TabStop tab = para.getParagraphFormat().getTabStops().get(0); // Remove the old tab from the collection para.getParagraphFormat().getTabStops().removeByPosition(tab.getPosition()); // Insert a new tab using the same properties but at a modified position // We could also change the separators used (dots) by passing a different Leader type para.getParagraphFormat().getTabStops().add(tab.getPosition() - 50, tab.getAlignment(), tab.getLeader()); } } doc.save(getArtifactsDir() + "Styles.ChangeTocsTabStops.docx");
Constructor Summary |
---|
TabStop(doubleposition)
Initializes a new instance of this class. |
TabStop(doubleposition, intalignment, intleader)
Initializes a new instance of this class. |
Property Getters/Setters Summary | ||
---|---|---|
int | getAlignment() | |
void | setAlignment(intvalue) | |
Gets or sets the alignment of text at this tab stop. The value of the property is TabAlignment integer constant. | ||
boolean | isClear() | |
Returns true if this tab stop clears any existing tab stops in this position.
|
||
int | getLeader() | |
void | setLeader(intvalue) | |
Gets or sets the type of the leader line displayed under the tab character. The value of the property is TabLeader integer constant. | ||
double | getPosition() | |
Gets the position of the tab stop in points.
|
Method Summary | ||
---|---|---|
boolean | equals(TabStop rhs) | |
Compares with the specified TabStop.
|
||
int | hashCode() | |
Calculates hash code for this object.
|
public TabStop(double position)
Example:
Shows how to work with a document's collection of tab stops.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Access the collection of tab stops and add some tab stops to it TabStopCollection tabStops = builder.getParagraphFormat().getTabStops(); // 72 points is one "inch" on the Microsoft Word tab stop ruler tabStops.add(new TabStop(72.0)); tabStops.add(new TabStop(432, TabAlignment.RIGHT, TabLeader.DASHES)); Assert.assertEquals(2, tabStops.getCount()); Assert.assertFalse(tabStops.get(0).isClear()); Assert.assertFalse(tabStops.get(0).equals(tabStops.get(1))); // Every "tab" character takes the builder's cursor to the next tab stop builder.writeln("Start\tTab 1\tTab 2"); // Get the collection of paragraphs that we've created ParagraphCollection paragraphs = doc.getFirstSection().getBody().getParagraphs(); Assert.assertEquals(2, paragraphs.getCount()); // Each paragraph gets its own TabStopCollection which gets values from the DocumentBuilder's collection Assert.assertEquals(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); Assert.assertNotSame(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); // A TabStopCollection can point us to TabStops before and after certain positions Assert.assertEquals(72.0, tabStops.before(100.0).getPosition()); Assert.assertEquals(432.0, tabStops.after(100.0).getPosition()); // We can clear a paragraph's TabStopCollection to revert to the default tabbing behaviour paragraphs.get(1).getParagraphFormat().getTabStops().clear(); Assert.assertEquals(0, paragraphs.get(1).getParagraphFormat().getTabStops().getCount()); doc.save(getArtifactsDir() + "TabStopCollection.TabStopCollection.docx");
public TabStop(double position, int alignment, int leader)
position
- The position of the tab stop in points.alignment
- A leader
- A Example:
Shows how to work with a document's collection of tab stops.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Access the collection of tab stops and add some tab stops to it TabStopCollection tabStops = builder.getParagraphFormat().getTabStops(); // 72 points is one "inch" on the Microsoft Word tab stop ruler tabStops.add(new TabStop(72.0)); tabStops.add(new TabStop(432, TabAlignment.RIGHT, TabLeader.DASHES)); Assert.assertEquals(2, tabStops.getCount()); Assert.assertFalse(tabStops.get(0).isClear()); Assert.assertFalse(tabStops.get(0).equals(tabStops.get(1))); // Every "tab" character takes the builder's cursor to the next tab stop builder.writeln("Start\tTab 1\tTab 2"); // Get the collection of paragraphs that we've created ParagraphCollection paragraphs = doc.getFirstSection().getBody().getParagraphs(); Assert.assertEquals(2, paragraphs.getCount()); // Each paragraph gets its own TabStopCollection which gets values from the DocumentBuilder's collection Assert.assertEquals(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); Assert.assertNotSame(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); // A TabStopCollection can point us to TabStops before and after certain positions Assert.assertEquals(72.0, tabStops.before(100.0).getPosition()); Assert.assertEquals(432.0, tabStops.after(100.0).getPosition()); // We can clear a paragraph's TabStopCollection to revert to the default tabbing behaviour paragraphs.get(1).getParagraphFormat().getTabStops().clear(); Assert.assertEquals(0, paragraphs.get(1).getParagraphFormat().getTabStops().getCount()); doc.save(getArtifactsDir() + "TabStopCollection.TabStopCollection.docx");
public int getAlignment() / public void setAlignment(int value)
Example:
Shows how to modify the position of the right tab stop in TOC related paragraphs.Document doc = new Document(getMyDir() + "Table of contents.docx"); // Iterate through all paragraphs formatted using the TOC result based styles; this is any style between TOC and TOC9 for (Paragraph para : (Iterable<Paragraph>) doc.getChildNodes(NodeType.PARAGRAPH, true)) { if (para.getParagraphFormat().getStyle().getStyleIdentifier() >= StyleIdentifier.TOC_1 && para.getParagraphFormat().getStyle().getStyleIdentifier() <= StyleIdentifier.TOC_9) { // Get the first tab used in this paragraph, this should be the tab used to align the page numbers TabStop tab = para.getParagraphFormat().getTabStops().get(0); // Remove the old tab from the collection para.getParagraphFormat().getTabStops().removeByPosition(tab.getPosition()); // Insert a new tab using the same properties but at a modified position // We could also change the separators used (dots) by passing a different Leader type para.getParagraphFormat().getTabStops().add(tab.getPosition() - 50, tab.getAlignment(), tab.getLeader()); } } doc.save(getArtifactsDir() + "Styles.ChangeTocsTabStops.docx");
public boolean isClear()
Example:
Shows how to work with a document's collection of tab stops.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Access the collection of tab stops and add some tab stops to it TabStopCollection tabStops = builder.getParagraphFormat().getTabStops(); // 72 points is one "inch" on the Microsoft Word tab stop ruler tabStops.add(new TabStop(72.0)); tabStops.add(new TabStop(432, TabAlignment.RIGHT, TabLeader.DASHES)); Assert.assertEquals(2, tabStops.getCount()); Assert.assertFalse(tabStops.get(0).isClear()); Assert.assertFalse(tabStops.get(0).equals(tabStops.get(1))); // Every "tab" character takes the builder's cursor to the next tab stop builder.writeln("Start\tTab 1\tTab 2"); // Get the collection of paragraphs that we've created ParagraphCollection paragraphs = doc.getFirstSection().getBody().getParagraphs(); Assert.assertEquals(2, paragraphs.getCount()); // Each paragraph gets its own TabStopCollection which gets values from the DocumentBuilder's collection Assert.assertEquals(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); Assert.assertNotSame(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); // A TabStopCollection can point us to TabStops before and after certain positions Assert.assertEquals(72.0, tabStops.before(100.0).getPosition()); Assert.assertEquals(432.0, tabStops.after(100.0).getPosition()); // We can clear a paragraph's TabStopCollection to revert to the default tabbing behaviour paragraphs.get(1).getParagraphFormat().getTabStops().clear(); Assert.assertEquals(0, paragraphs.get(1).getParagraphFormat().getTabStops().getCount()); doc.save(getArtifactsDir() + "TabStopCollection.TabStopCollection.docx");
public int getLeader() / public void setLeader(int value)
Example:
Shows how to modify the position of the right tab stop in TOC related paragraphs.Document doc = new Document(getMyDir() + "Table of contents.docx"); // Iterate through all paragraphs formatted using the TOC result based styles; this is any style between TOC and TOC9 for (Paragraph para : (Iterable<Paragraph>) doc.getChildNodes(NodeType.PARAGRAPH, true)) { if (para.getParagraphFormat().getStyle().getStyleIdentifier() >= StyleIdentifier.TOC_1 && para.getParagraphFormat().getStyle().getStyleIdentifier() <= StyleIdentifier.TOC_9) { // Get the first tab used in this paragraph, this should be the tab used to align the page numbers TabStop tab = para.getParagraphFormat().getTabStops().get(0); // Remove the old tab from the collection para.getParagraphFormat().getTabStops().removeByPosition(tab.getPosition()); // Insert a new tab using the same properties but at a modified position // We could also change the separators used (dots) by passing a different Leader type para.getParagraphFormat().getTabStops().add(tab.getPosition() - 50, tab.getAlignment(), tab.getLeader()); } } doc.save(getArtifactsDir() + "Styles.ChangeTocsTabStops.docx");
public double getPosition()
Example:
Shows how to modify the position of the right tab stop in TOC related paragraphs.Document doc = new Document(getMyDir() + "Table of contents.docx"); // Iterate through all paragraphs formatted using the TOC result based styles; this is any style between TOC and TOC9 for (Paragraph para : (Iterable<Paragraph>) doc.getChildNodes(NodeType.PARAGRAPH, true)) { if (para.getParagraphFormat().getStyle().getStyleIdentifier() >= StyleIdentifier.TOC_1 && para.getParagraphFormat().getStyle().getStyleIdentifier() <= StyleIdentifier.TOC_9) { // Get the first tab used in this paragraph, this should be the tab used to align the page numbers TabStop tab = para.getParagraphFormat().getTabStops().get(0); // Remove the old tab from the collection para.getParagraphFormat().getTabStops().removeByPosition(tab.getPosition()); // Insert a new tab using the same properties but at a modified position // We could also change the separators used (dots) by passing a different Leader type para.getParagraphFormat().getTabStops().add(tab.getPosition() - 50, tab.getAlignment(), tab.getLeader()); } } doc.save(getArtifactsDir() + "Styles.ChangeTocsTabStops.docx");
public boolean equals(TabStop rhs)
Example:
Shows how to work with a document's collection of tab stops.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Access the collection of tab stops and add some tab stops to it TabStopCollection tabStops = builder.getParagraphFormat().getTabStops(); // 72 points is one "inch" on the Microsoft Word tab stop ruler tabStops.add(new TabStop(72.0)); tabStops.add(new TabStop(432, TabAlignment.RIGHT, TabLeader.DASHES)); Assert.assertEquals(2, tabStops.getCount()); Assert.assertFalse(tabStops.get(0).isClear()); Assert.assertFalse(tabStops.get(0).equals(tabStops.get(1))); // Every "tab" character takes the builder's cursor to the next tab stop builder.writeln("Start\tTab 1\tTab 2"); // Get the collection of paragraphs that we've created ParagraphCollection paragraphs = doc.getFirstSection().getBody().getParagraphs(); Assert.assertEquals(2, paragraphs.getCount()); // Each paragraph gets its own TabStopCollection which gets values from the DocumentBuilder's collection Assert.assertEquals(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); Assert.assertNotSame(paragraphs.get(0).getParagraphFormat().getTabStops(), paragraphs.get(1).getParagraphFormat().getTabStops()); // A TabStopCollection can point us to TabStops before and after certain positions Assert.assertEquals(72.0, tabStops.before(100.0).getPosition()); Assert.assertEquals(432.0, tabStops.after(100.0).getPosition()); // We can clear a paragraph's TabStopCollection to revert to the default tabbing behaviour paragraphs.get(1).getParagraphFormat().getTabStops().clear(); Assert.assertEquals(0, paragraphs.get(1).getParagraphFormat().getTabStops().getCount()); doc.save(getArtifactsDir() + "TabStopCollection.TabStopCollection.docx");
public int hashCode()