Paragraflarla Çalışmak
Bir paragraf, mantıksal bir blok oluşturan karakterlerin bir kümesidir ve özel bir karakterle sona erer – paragraf değişikliği. Bir Aspose.Words paragrafa Paragraph sınıfı ile temsil edilir.
Bir Paragraf Ekleme
Bir belgeye yeni bir paragraf eklemek aslında onu bir paragraf kırma karakteriyle birlikte eklemeniz gerekir. DocumentBuilder.Writeln sadece bir metin dizisini belgeden ekler aynı zamanda bir paragraf kırma da ekler.
Geçerli yazı tipinin biçimlendirilmesi ayrıca Font özelliğinde belirtilir ve geçerli paragraf biçimi ParagraphFormat özelliğinde belirlenir. Gelecek bölümde paragraf biçimlendirmesi hakkında daha ayrıntılı bilgi vereceğiz.
Aşağıdaki kod örneği bir belgenin içine paragraf eklemenin nasıl yapılacağını göstermektedir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Open the document. | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Font font = builder.getFont(); | |
font.setSize(16); | |
font.setColor(Color.DARK_GRAY); | |
font.setBold(true); | |
font.setName("Algerian"); | |
font.setUnderline(2); | |
ParagraphFormat paragraphFormat = builder.getParagraphFormat(); | |
paragraphFormat.setFirstLineIndent(12); | |
paragraphFormat.setAlignment(1); | |
paragraphFormat.setKeepTogether(true); | |
builder.write("This is a sample Paragraph"); | |
doc.save(dataDir + "InsertParagraph_out.doc"); |
Biçim Paragrafa
Geçerli paragraf biçimlendirme ParagraphFormat nesnesi tarafından temsil edilir ve bu nesne ParagraphFormat özelliğinden döndürülür. Bu nesne çeşitli paragraf biçimlendirme özellikleri içeren Microsoft Word’ü kapsüller. Bir paragrafın varsayılan – Normal tarzı, sol hizalı, girintili değil, boşluk yok, kenarlıklar yok, gölgeleme yok – biçimlendirmesini kolayca sıfırlamak için ClearFormatting ‘ı çağırın.
Aşağıdaki kod örneği paragraf biçimlendirmesi ayarlamayı gösterir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Open the document. | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
ParagraphFormat paragraphFormat = builder.getParagraphFormat(); | |
paragraphFormat.setAlignment(ParagraphAlignment.CENTER); | |
paragraphFormat.setLeftIndent(50); | |
paragraphFormat.setRightIndent(50); | |
paragraphFormat.setSpaceAfter(25); | |
paragraphFormat.setKeepTogether(true); | |
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(dataDir + "SetParagraphFormatting_out.doc"); |
Paragraf Biçimini Uygula
Font veya ParagrafBiçimlendir gibi bazı biçimlendirme nesneleri stilleri destekler. Tek bir yerleşik veya kullanıcı tanımlı stil, adı, temel stil, yazı tipi ve paragraf biçimlendirmesi gibi ilgili stil özelliklerini içeren Style nesnesi tarafından temsil edilir ve benzeri.
Ayrıca, bir Style nesnesi StyleIdentifier özelliğini sağlar ve bu özellik ayrıcalıklı olmayan bir stil tanımlayıcısını temsil eden bir StyleIdentifier değerini döndürür. Önemli olan nokta, Microsoft Word yerleşik stillerin adlarının farklı dillerde yerelleştirildiği noktasıdır. Bir stil tanımlayıcısı kullanarak, belge dilinden bağımsız olarak doğru stili bulabilirsiniz. Değerler Microsoft Word yerleşik stillerine karşılık gelir, örneğin Normal, Başlık 1, Başlık 2 vb. Tüm kullanıcı tanımlı stillere StyleIdentifier.User değeri atanır.
Aşağıdaki kod örneği bir paragraf stilini nasıl uygulayacağınızı gösterir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Open the document. | |
Document doc = new Document(); | |
// Set paragraph style | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
builder.getParagraphFormat().setStyleIdentifier(StyleIdentifier.TITLE); | |
builder.write("Hello"); | |
doc.save(dataDir + "ApplyParagraphStyle_out.doc"); |
Farklı Paragraf stillerini koymak için Stil Ayırıcısı ekle
Stil ayırıcı, MS Word’de kontrol + alt + enter kısayolunu kullanarak bir paragrafın sonuna eklenebilir. Bu özellik, tek mantıksal basılı paragrafta kullanılan iki farklı paragraf stilini destekler. Bir başlığın başına gelen bazı metni İçindekiler tablosunda görmek istiyorsanız ancak İçindekiler tablosunda tüm başlık görmek istemiyorsanız bu özelliği kullanabilirsiniz.
Aşağıdaki kod örneğinde farklı paragraf stillerine uyum sağlamak için bir stil ayırıcı eklemeyi gösterir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Style paraStyle = builder.getDocument().getStyles().add(StyleType.PARAGRAPH, "MyParaStyle"); | |
paraStyle.getFont().setBold(false); | |
paraStyle.getFont().setSize(8); | |
paraStyle.getFont().setName("Arial"); | |
// Append text with "Heading 1" style. | |
builder.getParagraphFormat().setStyleIdentifier(StyleIdentifier.HEADING_1); | |
builder.write("Heading 1"); | |
builder.insertStyleSeparator(); | |
// Append text with another style. | |
builder.getParagraphFormat().setStyleName(paraStyle.getName()); | |
builder.write("This is text with some other formatting "); | |
dataDir = dataDir + "InsertStyleSeparator_out.doc"; | |
doc.save(dataDir); |
Bir Paragrafın Kenarlık ve Gölgelendirme Uygulamak
Sınırlar Aspose.Words içinde BorderCollection sınıfı temsil edilir – bu bir Border nesne koleksiyonudur ve dizin veya sınır türü tarafından erişilir. Border
türü BorderType türeviyle temsil edilir. Türevinin bazı değerleri birkaç veya yalnızca bir belge öğesine uygulanabilir. Örneğin, BorderType.Bottom, bir paragraf veya tablo hücresine uygulanırken, BorderType.DiagonalDown yalnızca bir tablo hücresindeki çapraz sınıra belirtir.
Hem sınır koleksiyonu hem de her ayrı sınır benzer öznitelikler gibi renk, çizgi stili, çizgi kalınlığı, metinden uzaklık ve isteğe bağlı gölge. Onlar aynı isimdeki özellikleri ile temsil edilirler. Farklı sınır türlerine ulaşmak için özellik değerlerini birleştirirsiniz. Buna ek olarak, hem BorderCollection hem de Border nesneleri bu değerleri varsayılana sıfırlayarak çağırdığınız ClearFormatting yöntemini kullanarak bunları sıfırlamaya izin verir.
Aspose.Words da belge öğeleri için gölgelendirme özniteliklerini içeren ' Shading’ sınıfına sahiptir. İstediğiniz gölgelendirme dokusunu ve öğenin arka planına ve ön plana uygulanan renkleri ayarlayabilirsiniz.
Gölgelendirme dokusu TextureIndex numaralandırma değeriyle ayarlanır ki bu da çeşitli desenlerin Shading nesnesine uygulanmasını sağlar. Örneğin, bir belge öğesi için arka plan rengini ayarlamak istiyorsanız, TextureIndex.TextureSolid
değerini kullanın ve ön plana gölgelendirme rengini uygun şekilde ayarlayın. Aşağıdaki kod örneğinde, paragraflara sınır ve gölgeleme nasıl uygulanacağını gösterilmektedir.
Aşağıdaki kod örneği bir paragrafın kenarlık ve gölgelendirme uygulamak için nasıl uygulanacağını gösterir:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java | |
// Open the document. | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Set paragraph borders | |
BorderCollection borders = builder.getParagraphFormat().getBorders(); | |
borders.setDistanceFromText(20); | |
borders.getByBorderType(BorderType.LEFT).setLineStyle(LineStyle.DOUBLE); | |
borders.getByBorderType(BorderType.RIGHT).setLineStyle(LineStyle.DOUBLE); | |
borders.getByBorderType(BorderType.TOP).setLineStyle(LineStyle.DOUBLE); | |
borders.getByBorderType(BorderType.BOTTOM).setLineStyle(LineStyle.DOUBLE); | |
// Set paragraph shading | |
Shading shading = builder.getParagraphFormat().getShading(); | |
shading.setTexture(TextureIndex.TEXTURE_DIAGONAL_CROSS); | |
shading.setBackgroundPatternColor(Color.YELLOW); | |
shading.setForegroundPatternColor(Color.GREEN); | |
builder.write("I'm a formatted paragraph with double border and nice shading."); | |
doc.save(dataDir + "ApplyBordersAndShading_out.doc"); |