Spolupráce s odstavci

Odstavec je soubor znaků v kombinaci s logickým blokem a končí speciálním znakem a bod zlom. In Aspose.Words, odstavec je zastoupen Paragraph třída.

Vložit odstavec

Chcete-li do dokumentu vložit nový odstavec, musíte do něj vložit znak zlomu odstavce. DocumentBuilder.writeln do dokumentu vloží také řetězec textu, ale navíc přidá odstavec zlom.

Aktuální formátování písma je také specifikováno font vlastnost a formátování aktuálního odstavce je určeno paragraph_format majetek.

Následující příklad kódu ukazuje, jak vložit odstavec do dokumentu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
font = builder.font
font.size = 16
font.bold = True
font.color = drawing.Color.blue
font.name = "Arial"
font.underline = aw.Underline.DASH
paragraphFormat = builder.paragraph_format
paragraphFormat.first_line_indent = 8
paragraphFormat.alignment = aw.ParagraphAlignment.JUSTIFY
paragraphFormat.keep_together = True
builder.writeln("A whole paragraph.")
doc.save(docs_base.artifacts_dir + "AddContentUsingDocumentBuilder.insert_paragraph.docx")

Formátovací odstavec

Formátování aktuálního odstavce představuje ParagraphFormat objekt, který je vrácen paragraph_format majetek. Tento objekt zapouzdřuje různé vlastnosti formátu odstavce dostupné v Microsoft Word. Můžete jednoduše resetovat formátování odstavce na standardní styl, vlevo zarovnaný, bez odsazení, bez rozestupu, bez hranic a bez stínování voláním clear_formatting.

Následující příklad kódu ukazuje, jak nastavit formátování odstavce:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
paragraphFormat = builder.paragraph_format
paragraphFormat.alignment = aw.ParagraphAlignment.CENTER
paragraphFormat.left_indent = 50
paragraphFormat.right_indent = 50
paragraphFormat.space_after = 25
builder.writeln(
"I'm a very nice formatted paragraph. I'm intended to demonstrate how the left and right indents affect word wrapping.")
builder.writeln(
"I'm another nice formatted paragraph. I'm intended to demonstrate how the space after paragraph looks like.")
doc.save(docs_base.artifacts_dir + "DocumentFormatting.paragraph_formatting.docx")

Použít odstavec styl

Některé formátující objekty jako Font nebo ParagraphFormat podpůrné styly. Jediný vestavěný nebo uživatelsky definovaný styl je reprezentován Style objekt, který obsahuje odpovídající styl vlastnosti, jako je název, základní styl, písmo a odstavec formátování stylu, a tak dále.

Kromě toho Style objekt poskytuje Style.style_identifier vlastnost, která vrací identifikátor locale-nezávislého stylu zastoupený StyleIdentifier hodnota výčtu. Jde o to, že názvy vestavěných stylů Microsoft Word jsou lokalizovány pro různé jazyky. Pomocí identifikátoru stylu můžete najít správný styl bez ohledu na jazyk dokumentu. Hodnoty výčtu odpovídají Microsoft Word vestavěné styly, jako je normální , okruhu 1 , okruhu 2 atd. Všechny uživatelské styly jsou přiřazeny StyleIdentifier.USER hodnota

Následující příklad kódu ukazuje, jak použít odstavec:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
builder.paragraph_format.style_identifier = aw.StyleIdentifier.TITLE
builder.write("Hello")
doc.save(docs_base.artifacts_dir + "DocumentFormatting.apply_paragraph_style.docx")

Vložit stylový oddělovač pro různé odstíny

Oddělovač stylu lze přidat na konec odstavce pomocí Ctrl + Alt + Zadejte klávesovou zkratku do MS Word. Tato funkce umožňuje dva různé odstíny používané v jednom logickém tištěném odstavci. Pokud chcete nějaký text od začátku určitého záhlaví, který se objeví v Obsahu, ale nechcete celý nadpis v Obsahu, můžete použít tuto funkci

Následující příklad kódu ukazuje, jak vložit oddělovač stylu pro různé odstíny:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
paraStyle = builder.document.styles.add(aw.StyleType.PARAGRAPH, "MyParaStyle")
paraStyle.font.bold = False
paraStyle.font.size = 8
paraStyle.font.name = "Arial"
# Append text with "Heading 1" style.
builder.paragraph_format.style_identifier = aw.StyleIdentifier.HEADING1
builder.write("Heading 1")
builder.insert_style_separator()
# Append text with another style.
builder.paragraph_format.style_name = paraStyle.name
builder.write("This is text with some other formatting ")
doc.save(docs_base.artifacts_dir + "WorkingWithStylesAndThemes.insert_style_separator.docx")

Identifikační odstavec Oddělovač stylu

Aspose.Words poskytuje veřejný majetek break_is_style_separator do Paragraph třída umožňuje identifikaci Style Separator Odstavec, jak je uvedeno v následujícím příkladu:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document(docs_base.my_dir + "Document.docx")
for paragraph in doc.get_child_nodes(aw.NodeType.PARAGRAPH, True) :
paragraph = paragraph.as_paragraph()
if (paragraph.break_is_style_separator) :
print("Separator Found!")

Použít hranice a stínění na odstavec

Hranice jsou zastoupeny BorderCollection. Tohle je sbírka Border objekty, které jsou přístupné podle indexu nebo typu hranice. Typ hranice představuje BorderType vyjmenování. Některé hodnoty výčtu se vztahují na několik nebo pouze jeden prvek dokumentu. Například: BorderType.BOTTOM se vztahuje na odstavec nebo tabulku, zatímco BorderType.DIAGONALDOWN určuje diagonální hranici pouze v buňce tabulky.

Sbírka hranic i každá samostatná hranice mají podobné vlastnosti jako barva, styl linie, šířka čáry, vzdálenost od textu a volitelný stín. Jsou reprezentovány vlastnostmi stejného jména. Můžete dosáhnout různých typů hranic kombinací hodnot nemovitostí. Kromě toho oba BorderCollection a Border objekty umožňují resetovat tyto hodnoty výchozí voláním Border.clear_formatting metoda.

Aspose.Words má také Shading třída obsahuje stínovací atributy pro prvky dokumentu. Můžete nastavit požadovanou stínovací strukturu a barvy, které jsou aplikovány na pozadí a popředí prvku.

Shading textura je nastavena na TextureIndex hodnota výčtu, která umožňuje aplikaci různých vzorů na Shading objekt. Například pro nastavení barvy pozadí prvku dokumentu použijte TextureIndex.TEXTURE_SOLID hodnota a nastavit barvu stínování popředí podle potřeby. Níže uvedený příklad ukazuje, jak uplatnit hranice a stínování na odstavec.

Následující příklad kódu ukazuje, jak použít hranice a stínování na odstavec:

# For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Python-via-.NET
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
borders = builder.paragraph_format.borders
borders.distance_from_text = 20
borders.get_by_border_type(aw.BorderType.LEFT).line_style = aw.LineStyle.DOUBLE
borders.get_by_border_type(aw.BorderType.RIGHT).line_style = aw.LineStyle.DOUBLE
borders.get_by_border_type(aw.BorderType.TOP).line_style = aw.LineStyle.DOUBLE
borders.get_by_border_type(aw.BorderType.BOTTOM).line_style = aw.LineStyle.DOUBLE
shading = builder.paragraph_format.shading
shading.texture = aw.TextureIndex.TEXTURE_DIAGONAL_CROSS
shading.background_pattern_color = drawing.Color.light_coral
shading.foreground_pattern_color = drawing.Color.light_salmon
builder.write("I'm a formatted paragraph with double border and nice shading.")
doc.save(docs_base.artifacts_dir + "DocumentFormatting.apply_borders_and_shading_to_paragraph.doc")