# Setting Bullet List Indents in RadWordsProcessing

## Environment

| Version    | Product            | Author                                                                          |
| ---------- | ------------------ | ------------------------------------------------------------------------------- |
| 2025.1.205 | RadWordsProcessing | [Desislava Yordanova](https://www.telerik.com/blogs/author/desislava-yordanova) |

## Description

When you work with bullet lists in [RadWordsProcessing](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/overview) documents, you may need to adjust the bullet position and text indentation to meet specific formatting requirements. This article shows how to set the text indent and adjust the bullet position for bullet lists in RadWordsProcessing.

![Bullet Text Indentation](https://www.telerik.com/document-processing-libraries/documentation/assets/b8b6672aa7eee1adfc9ba8fd891464ff/bullet-text-indentation.png)

## Solution

To set the bullet position and text indentation for a bullet list in RadWordsProcessing, follow these steps:

1. Initialize the [RadFlowDocument](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/model/radflowdocument) and add a section to it.
2. Create a [bullet list](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/concepts/lists) and configure its levels as needed.
3. Use the `ParagraphProperties`.[LeftIndent](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/concepts/style-properties) and `ParagraphProperties`.[HangingIndent](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/concepts/style-properties) properties to adjust the bullet position and text indentation.

**Example 1: Setting Bullet List Indents**

```csharp
            RadFlowDocument document = new RadFlowDocument();
            Section section = document.Sections.AddSection();
            section.PageMargins = new Telerik.Windows.Documents.Primitives.Padding(10);
            document.Lists.Add(ListTemplateType.BulletDefault);
            List list = document.Lists.Last();

            // Configure the first level of the bullet list
            list.Levels[0].NumberTextFormat = "¾";
            list.Levels[0].NumberingStyle = NumberingStyle.Bullet;
            list.Levels[0].CharacterProperties.FontFamily.LocalValue = new ThemableFontFamily("Wingdings 2");
            list.Levels[0].CharacterProperties.FontSize.LocalValue = 16;
            // Adjust the space between the bullet and the text for the first level
            list.Levels[0].ParagraphProperties.LeftIndent.LocalValue = 50; // Bullet position
            list.Levels[0].ParagraphProperties.HangingIndent.LocalValue = 20; // Text indent
             
            // Configure the second level of the bullet list
            list.Levels[1].NumberTextFormat = "¾";
            list.Levels[1].NumberingStyle = NumberingStyle.Bullet;
            list.Levels[1].CharacterProperties.FontFamily.LocalValue = new ThemableFontFamily("Wingdings 2");
            list.Levels[1].CharacterProperties.FontSize.LocalValue = 14;
            // Adjust the space between the bullet and the text for the second level
            list.Levels[1].ParagraphProperties.LeftIndent.LocalValue = 100; // Bullet position
            list.Levels[1].ParagraphProperties.HangingIndent.LocalValue = 50; // Text indent

            // Add paragraphs and associate them with list levels
            Paragraph paragraph = document.Sections.Last().Blocks.AddParagraph();
            paragraph.Inlines.AddRun("Bullet 1");
            paragraph.ListId = list.Id;
            paragraph.ListLevel = 0;

            paragraph = document.Sections.Last().Blocks.AddParagraph();
            paragraph.Inlines.AddRun("Bullet 1.1");
            paragraph.ListId = list.Id;
            paragraph.ListLevel = 1;

            Telerik.Windows.Documents.Flow.FormatProviders.Docx.DocxFormatProvider provider = new Telerik.Windows.Documents.Flow.FormatProviders.Docx.DocxFormatProvider();
            string outputFilePath = "output.docx";
            File.Delete(outputFilePath);
            using (Stream output = File.OpenWrite(outputFilePath))
            { 
                provider.Export(document, output, TimeSpan.FromSeconds(10));
            }

            Process.Start(new ProcessStartInfo() { FileName = outputFilePath, UseShellExecute = true });
```

> tip The conversion from [device-independent pixels](https://www.telerik.com/document-processing-libraries/documentation/common-information/device-independent-pixels) (DIP) to centimeters (cm) uses the formula: cm = DIP / 96 \* 2.54. For example, to convert 18.9 DIP to cm: 18.9 / 96 \* 2.54 = 0.5 cm.

## See Also

* [Style Properties](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/concepts/style-properties)
* [Lists](https://www.telerik.com/document-processing-libraries/documentation/libraries/radwordsprocessing/concepts/lists)
* [Device Independent Pixels](https://www.telerik.com/document-processing-libraries/documentation/common-information/device-independent-pixels)
