We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

How to get List Label using .NET

image.png (14.9 KB)

how get digits from paragraphs? [0],[1],[2]?

paragraph.GetText() return simple text, without left digits

@mesteruh

Please use ListLabel.LabelString property to get the string representation of list label. Following code example shows how to extract the label of each paragraph in a list as a value or a String.

Document doc = new Document(MyDir + "Rendering.docx");
doc.UpdateListLabels();

NodeCollection paras = doc.GetChildNodes(NodeType.Paragraph, true);

// Find if we have the paragraph list. In our document our list uses plain arabic numbers,
// which start at three and ends at six
foreach (Paragraph paragraph in paras.OfType<Paragraph>().Where(p => p.ListFormat.IsListItem))
{
    Console.WriteLine($"List item paragraph #{paras.IndexOf(paragraph)}");

    // This is the text we get when actually getting when we output this node to text format
    // The list labels are not included in this text output. Trim any paragraph formatting characters
    string paragraphText = paragraph.ToString(SaveFormat.Text).Trim();
    Console.WriteLine($"\tExported Text: {paragraphText}");

    ListLabel label = paragraph.ListLabel;
    // This gets the position of the paragraph in current level of the list. If we have a list with multiple level then this
    // will tell us what position it is on that particular level
    Console.WriteLine($"\tNumerical Id: {label.LabelValue}");

    // Combine them together to include the list label with the text in the output
    Console.WriteLine($"\tList label combined with text: {label.LabelString} {paragraphText}");
}