public class ListLevel
extends java.lang.Object
implements java.lang.Cloneable
To learn more, visit the Working with Lists documentation article.
Remarks:
You do not create objects of this class. List level objects are created automatically when a list is created. You access ListLevel objects via the ListLevelCollection collection.
Use the properties of ListLevel to specify list formatting for individual list levels.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
| Modifier and Type | Method and Description |
|---|---|
void |
clearRunAttrs() |
void |
createPictureBullet()
Creates picture bullet shape for the current list level.
|
void |
deletePictureBullet()
Deletes picture bullet for the current list level.
|
boolean |
equals(ListLevel level)
Compares with the specified ListLevel.
|
java.lang.Object |
fetchInheritedRunAttr(int key) |
int |
getAlignment()
Gets the justification of the actual number of the list item.
|
java.lang.String |
getCustomNumberStyleFormat()
Gets the custom number style format for this list level.
|
java.lang.Object |
getDirectRunAttr(int key) |
java.lang.Object |
getDirectRunAttr(int key,
int revisionsView) |
static java.lang.String |
getEffectiveValue(int index,
int numberStyle,
java.lang.String customNumberStyleFormat) |
Font |
getFont()
Specifies character formatting used for the list label.
|
ImageData |
getImageData()
Returns image data of the picture bullet shape for the current list level.
|
Style |
getLinkedStyle()
Gets the paragraph style that is linked to this list level.
|
java.lang.String |
getNumberFormat()
Gets the number format for the list level.
|
double |
getNumberPosition()
Gets the position (in points) of the number or bullet for the list level.
|
int |
getNumberStyle()
Gets the number style for this list level.
|
int |
getRestartAfterLevel()
Gets the list level that must appear before the specified list level restarts numbering.
|
int |
getStartAt()
Gets the starting number for this list level.
|
double |
getTabPosition()
Gets the tab position (in points) for the list level.
|
double |
getTextPosition()
Gets the position (in points) for the second line of wrapping text for the list level.
|
int |
getTrailingCharacter()
Gets the character inserted after the number for the list level.
|
int |
hashCode() |
boolean |
isLegal()
True if the level turns all inherited numbers to Arabic, false if it preserves their number style.
|
void |
isLegal(boolean value)
True if the level turns all inherited numbers to Arabic, false if it preserves their number style.
|
protected java.lang.Object |
memberwiseClone() |
void |
removeRunAttr(int key) |
void |
setAlignment(int value)
Sets the justification of the actual number of the list item.
|
void |
setCustomNumberStyleFormat(java.lang.String value)
Sets the custom number style format for this list level.
|
void |
setLinkedStyle(Style value)
Sets the paragraph style that is linked to this list level.
|
void |
setNumberFormat(java.lang.String value)
Sets the number format for the list level.
|
void |
setNumberPosition(double value)
Sets the position (in points) of the number or bullet for the list level.
|
void |
setNumberStyle(int value)
Sets the number style for this list level.
|
void |
setRestartAfterLevel(int value)
Sets the list level that must appear before the specified list level restarts numbering.
|
void |
setRunAttr(int key,
java.lang.Object value) |
void |
setStartAt(int value)
Sets the starting number for this list level.
|
void |
setTabPosition(double value)
Sets the tab position (in points) for the list level.
|
void |
setTextPosition(double value)
Sets the position (in points) for the second line of wrapping text for the list level.
|
void |
setTrailingCharacter(int value)
Sets the character inserted after the number for the list level.
|
public void createPictureBullet()
throws java.lang.Exception
Remarks:
Please note, getNumberStyle() / setNumberStyle(int) will be set to NumberStyle.BULLET and getNumberFormat() / setNumberFormat(java.lang.String) to "\xF0B7" to properly display picture bullet. Red cross image will be set as picture bullet image upon creating. To change it please use getImageData().
Examples:
Shows how to set a custom image icon for list item labels.
Document doc = new Document();
List docList = doc.getLists().add(ListTemplate.BULLET_CIRCLE);
// Create a picture bullet for the current list level, and set an image from a local file system
// as the icon that the bullets for this list level will display.
docList.getListLevels().get(0).createPictureBullet();
docList.getListLevels().get(0).getImageData().setImage(getImageDir() + "Logo icon.ico");
Assert.assertTrue(docList.getListLevels().get(0).getImageData().hasImage());
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("Hello world!");
builder.write("Hello again!");
doc.save(getArtifactsDir() + "Lists.CreatePictureBullet.docx");
docList.getListLevels().get(0).deletePictureBullet();
Assert.assertNull(docList.getListLevels().get(0).getImageData());
java.lang.Exceptionpublic void deletePictureBullet()
Remarks:
Default bullet will be shown after deleting.
Examples:
Shows how to set a custom image icon for list item labels.
Document doc = new Document();
List docList = doc.getLists().add(ListTemplate.BULLET_CIRCLE);
// Create a picture bullet for the current list level, and set an image from a local file system
// as the icon that the bullets for this list level will display.
docList.getListLevels().get(0).createPictureBullet();
docList.getListLevels().get(0).getImageData().setImage(getImageDir() + "Logo icon.ico");
Assert.assertTrue(docList.getListLevels().get(0).getImageData().hasImage());
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("Hello world!");
builder.write("Hello again!");
doc.save(getArtifactsDir() + "Lists.CreatePictureBullet.docx");
docList.getListLevels().get(0).deletePictureBullet();
Assert.assertNull(docList.getListLevels().get(0).getImageData());
public static java.lang.String getEffectiveValue(int index,
int numberStyle,
java.lang.String customNumberStyleFormat)
public boolean equals(ListLevel level)
public int hashCode()
hashCode in class java.lang.Objectpublic int getStartAt()
Remarks:
Default value is 1.
Examples:
Shows how to restart numbering in a list by copying a list.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize its first list level.
List list1 = doc.getLists().add(ListTemplate.NUMBER_ARABIC_PARENTHESIS);
list1.getListLevels().get(0).getFont().setColor(Color.RED);
list1.getListLevels().get(0).setAlignment(ListLevelAlignment.RIGHT);
// Apply our list to some paragraphs.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("List 1 starts below:");
builder.getListFormat().setList(list1);
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().removeNumbers();
// We can add a copy of an existing list to the document's list collection
// to create a similar list without making changes to the original.
List list2 = doc.getLists().addCopy(list1);
list2.getListLevels().get(0).getFont().setColor(Color.BLUE);
list2.getListLevels().get(0).setStartAt(10);
// Apply the second list to new paragraphs.
builder.writeln("List 2 starts below:");
builder.getListFormat().setList(list2);
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.RestartNumberingUsingListCopy.docx");
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
public void setStartAt(int value)
Remarks:
Default value is 1.
Examples:
Shows how to restart numbering in a list by copying a list.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize its first list level.
List list1 = doc.getLists().add(ListTemplate.NUMBER_ARABIC_PARENTHESIS);
list1.getListLevels().get(0).getFont().setColor(Color.RED);
list1.getListLevels().get(0).setAlignment(ListLevelAlignment.RIGHT);
// Apply our list to some paragraphs.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.writeln("List 1 starts below:");
builder.getListFormat().setList(list1);
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().removeNumbers();
// We can add a copy of an existing list to the document's list collection
// to create a similar list without making changes to the original.
List list2 = doc.getLists().addCopy(list1);
list2.getListLevels().get(0).getFont().setColor(Color.BLUE);
list2.getListLevels().get(0).setStartAt(10);
// Apply the second list to new paragraphs.
builder.writeln("List 2 starts below:");
builder.getListFormat().setList(list2);
builder.writeln("Item 1");
builder.writeln("Item 2");
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.RestartNumberingUsingListCopy.docx");
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The starting number for this list level.public int getNumberStyle()
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
NumberStyle constants.public void setNumberStyle(int value)
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
value - The number style for this list level. The value must be one of NumberStyle constants.public java.lang.String getCustomNumberStyleFormat()
Examples:
Shows how to get the format for a list with the custom number style.
Document doc = new Document(getMyDir() + "List with leading zero.docx");
ListLevel listLevel = doc.getFirstSection().getBody().getParagraphs().get(0).getListFormat().getListLevel();
String customNumberStyleFormat = "";
if (listLevel.getNumberStyle() == NumberStyle.CUSTOM)
customNumberStyleFormat = listLevel.getCustomNumberStyleFormat();
Assert.assertEquals("001, 002, 003, ...", customNumberStyleFormat);
// We can get value for the specified index of the list item.
Assert.assertEquals("iv", ListLevel.getEffectiveValue(4, NumberStyle.LOWERCASE_ROMAN, null));
Assert.assertEquals("005", ListLevel.getEffectiveValue(5, NumberStyle.CUSTOM, customNumberStyleFormat));
Shows how to set customer number style format.
Document doc = new Document(getMyDir() + "List with leading zero.docx");
doc.updateListLabels();
ParagraphCollection paras = doc.getFirstSection().getBody().getParagraphs();
Assert.assertEquals("001.", paras.get(0).getListLabel().getLabelString());
Assert.assertEquals("0001.", paras.get(1).getListLabel().getLabelString());
Assert.assertEquals("0002.", paras.get(2).getListLabel().getLabelString());
paras.get(1).getListFormat().getListLevel().setCustomNumberStyleFormat("001, 002, 003, ...");
doc.updateListLabels();
Assert.assertEquals("001.", paras.get(0).getListLabel().getLabelString());
Assert.assertEquals("001.", paras.get(1).getListLabel().getLabelString());
Assert.assertEquals("002.", paras.get(2).getListLabel().getLabelString());
public void setCustomNumberStyleFormat(java.lang.String value)
Examples:
Shows how to get the format for a list with the custom number style.
Document doc = new Document(getMyDir() + "List with leading zero.docx");
ListLevel listLevel = doc.getFirstSection().getBody().getParagraphs().get(0).getListFormat().getListLevel();
String customNumberStyleFormat = "";
if (listLevel.getNumberStyle() == NumberStyle.CUSTOM)
customNumberStyleFormat = listLevel.getCustomNumberStyleFormat();
Assert.assertEquals("001, 002, 003, ...", customNumberStyleFormat);
// We can get value for the specified index of the list item.
Assert.assertEquals("iv", ListLevel.getEffectiveValue(4, NumberStyle.LOWERCASE_ROMAN, null));
Assert.assertEquals("005", ListLevel.getEffectiveValue(5, NumberStyle.CUSTOM, customNumberStyleFormat));
Shows how to set customer number style format.
Document doc = new Document(getMyDir() + "List with leading zero.docx");
doc.updateListLabels();
ParagraphCollection paras = doc.getFirstSection().getBody().getParagraphs();
Assert.assertEquals("001.", paras.get(0).getListLabel().getLabelString());
Assert.assertEquals("0001.", paras.get(1).getListLabel().getLabelString());
Assert.assertEquals("0002.", paras.get(2).getListLabel().getLabelString());
paras.get(1).getListFormat().getListLevel().setCustomNumberStyleFormat("001, 002, 003, ...");
doc.updateListLabels();
Assert.assertEquals("001.", paras.get(0).getListLabel().getLabelString());
Assert.assertEquals("001.", paras.get(1).getListLabel().getLabelString());
Assert.assertEquals("002.", paras.get(2).getListLabel().getLabelString());
value - The custom number style format for this list level.public java.lang.String getNumberFormat()
Remarks:
Among normal text characters, the string can contain placeholder characters \x0000 to \x0008 representing the numbers from the corresponding list levels.
For example, the string "\x0000.\x0001)" will generate a list label that looks something like "1.5)". The number "1" is the current number from the 1st list level, the number "5" is the current number from the 2nd list level.
Null is not allowed, but an empty string meaning no number is valid.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
public void setNumberFormat(java.lang.String value)
Remarks:
Among normal text characters, the string can contain placeholder characters \x0000 to \x0008 representing the numbers from the corresponding list levels.
For example, the string "\x0000.\x0001)" will generate a list label that looks something like "1.5)". The number "1" is the current number from the 1st list level, the number "5" is the current number from the 2nd list level.
Null is not allowed, but an empty string meaning no number is valid.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
value - The number format for the list level.public int getAlignment()
Remarks:
The list label is justified relative to the getNumberPosition() / setNumberPosition(double) property.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
ListLevelAlignment constants.public void setAlignment(int value)
Remarks:
The list label is justified relative to the getNumberPosition() / setNumberPosition(double) property.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The justification of the actual number of the list item. The value must be one of ListLevelAlignment constants.public boolean isLegal()
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
boolean value.public void isLegal(boolean value)
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
value - The corresponding boolean value.public int getRestartAfterLevel()
Remarks:
The value of -1 means the numbering will continue.
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
public void setRestartAfterLevel(int value)
Remarks:
The value of -1 means the numbering will continue.
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
value - The list level that must appear before the specified list level restarts numbering.public int getTrailingCharacter()
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
ListTrailingCharacter constants.public void setTrailingCharacter(int value)
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The character inserted after the number for the list level. The value must be one of ListTrailingCharacter constants.public Font getFont()
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
Font value.public double getTabPosition()
Remarks:
Has effect only when getTrailingCharacter() / setTrailingCharacter(int) is a tab.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
getNumberPosition(),
setNumberPosition(double),
getTextPosition(),
setTextPosition(double)public void setTabPosition(double value)
Remarks:
Has effect only when getTrailingCharacter() / setTrailingCharacter(int) is a tab.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The tab position (in points) for the list level.getNumberPosition(),
setNumberPosition(double),
getTextPosition(),
setTextPosition(double)public double getNumberPosition()
Remarks:
getNumberPosition() / setNumberPosition(double) corresponds to LeftIndent plus FirstLineIndent of the paragraph.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
getTextPosition(),
setTextPosition(double),
getTabPosition(),
setTabPosition(double)public void setNumberPosition(double value)
Remarks:
getNumberPosition() / setNumberPosition(double) corresponds to LeftIndent plus FirstLineIndent of the paragraph.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The position (in points) of the number or bullet for the list level.getTextPosition(),
setTextPosition(double),
getTabPosition(),
setTabPosition(double)public double getTextPosition()
Remarks:
getTextPosition() / setTextPosition(double) corresponds to LeftIndent of the paragraph.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
getNumberPosition(),
setNumberPosition(double),
getTabPosition(),
setTabPosition(double)public void setTextPosition(double value)
Remarks:
getTextPosition() / setTextPosition(double) corresponds to LeftIndent of the paragraph.
Examples:
Shows how to apply custom list formatting to paragraphs when using DocumentBuilder.
Document doc = new Document();
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
// Create a list from a Microsoft Word template, and customize the first two of its list levels.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
ListLevel listLevel = docList.getListLevels().get(0);
listLevel.getFont().setColor(Color.RED);
listLevel.getFont().setSize(24.0);
listLevel.setNumberStyle(NumberStyle.ORDINAL_TEXT);
listLevel.setStartAt(21);
listLevel.setNumberFormat(" ");
listLevel.setNumberPosition(-36);
listLevel.setTextPosition(144.0);
listLevel.setTabPosition(144.0);
listLevel = docList.getListLevels().get(1);
listLevel.setAlignment(ListLevelAlignment.RIGHT);
listLevel.setNumberStyle(NumberStyle.BULLET);
listLevel.getFont().setName("Wingdings");
listLevel.getFont().setColor(Color.BLUE);
listLevel.getFont().setSize(24.0);
// This NumberFormat value will create star-shaped bullet list symbols.
listLevel.setNumberFormat("");
listLevel.setTrailingCharacter(ListTrailingCharacter.SPACE);
listLevel.setNumberPosition(144.0);
// Create paragraphs and apply both list levels of our custom list formatting to them.
DocumentBuilder builder = new DocumentBuilder(doc);
builder.getListFormat().setList(docList);
builder.writeln("The quick brown fox...");
builder.writeln("The quick brown fox...");
builder.getListFormat().listIndent();
builder.writeln("jumped over the lazy dog.");
builder.writeln("jumped over the lazy dog.");
builder.getListFormat().listOutdent();
builder.writeln("The quick brown fox...");
builder.getListFormat().removeNumbers();
builder.getDocument().save(getArtifactsDir() + "Lists.CreateCustomList.docx");
value - The position (in points) for the second line of wrapping text for the list level.getNumberPosition(),
setNumberPosition(double),
getTabPosition(),
setTabPosition(double)public Style getLinkedStyle()
Remarks:
This property is null when the list level is not linked to a paragraph style. This property can be set to null.
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
public void setLinkedStyle(Style value)
Remarks:
This property is null when the list level is not linked to a paragraph style. This property can be set to null.
Examples:
Shows advances ways of customizing list labels.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// A list allows us to organize and decorate sets of paragraphs with prefix symbols and indents.
// We can create nested lists by increasing the indent level.
// We can begin and end a list by using a document builder's "ListFormat" property.
// Each paragraph that we add between a list's start and the end will become an item in the list.
List docList = doc.getLists().add(ListTemplate.NUMBER_DEFAULT);
// Level 1 labels will be formatted according to the "Heading 1" paragraph style and will have a prefix.
// These will look like "Appendix A", "Appendix B"...
docList.getListLevels().get(0).setNumberFormat("Appendix ");
docList.getListLevels().get(0).setNumberStyle(NumberStyle.UPPERCASE_LETTER);
docList.getListLevels().get(0).setLinkedStyle(doc.getStyles().get("Heading 1"));
// Level 2 labels will display the current numbers of the first and the second list levels and have leading zeroes.
// If the first list level is at 1, then the list labels from these will look like "Section (1.01)", "Section (1.02)"...
docList.getListLevels().get(1).setNumberFormat("Section ( .)");
docList.getListLevels().get(1).setNumberStyle(NumberStyle.LEADING_ZERO);
// Note that the higher-level uses UppercaseLetter numbering.
// We can set the "IsLegal" property to use Arabic numbers for the higher list levels.
docList.getListLevels().get(1).isLegal(true);
docList.getListLevels().get(1).setRestartAfterLevel(0);
// Level 3 labels will be upper case Roman numerals with a prefix and a suffix and will restart at each List level 1 item.
// These list labels will look like "-I-", "-II-"...
docList.getListLevels().get(2).setNumberFormat("--");
docList.getListLevels().get(2).setNumberStyle(NumberStyle.UPPERCASE_ROMAN);
docList.getListLevels().get(2).setRestartAfterLevel(1);
// Make labels of all list levels bold.
for (ListLevel level : docList.getListLevels())
level.getFont().setBold(true);
// Apply list formatting to the current paragraph.
builder.getListFormat().setList(docList);
// Create list items that will display all three of our list levels.
for (int n = 0; n < 2; n++) {
for (int i = 0; i < 3; i++) {
builder.getListFormat().setListLevelNumber(i);
builder.writeln("Level " + i);
}
}
builder.getListFormat().removeNumbers();
doc.save(getArtifactsDir() + "Lists.CreateListRestartAfterHigher.docx");
value - The paragraph style that is linked to this list level.public ImageData getImageData()
Remarks:
If this level doesn't define picture bullet returns null. Before setting new image for non picture bullet shape, please use createPictureBullet() method first.
public java.lang.Object getDirectRunAttr(int key)
public java.lang.Object getDirectRunAttr(int key,
int revisionsView)
public java.lang.Object fetchInheritedRunAttr(int key)
public void setRunAttr(int key,
java.lang.Object value)
public void removeRunAttr(int key)
public void clearRunAttrs()
protected java.lang.Object memberwiseClone()