Çok sütunlu PDF’ler, dergiler, gazeteler, araştırma makaleleri vb. çeşitli yayın türleri için kullanılır. PDF otomasyonu ile çalışırken, programlı olarak çok sütunlu bir PDF oluşturmanız gereken senaryo ile karşılaşabilirsiniz. Buna uygun olarak, bu makale C# kullanarak çok sütunlu PDF dosyalarının nasıl oluşturulacağını kapsar.
Çok Sütunlu PDF’ler Oluşturmak için C# API’si
Aspose.PDF for .NET, PDF belgeleri oluşturmak ve işlemek için güçlü ve zengin özelliklere sahip bir API’dir. C# kullanarak çok sütunlu PDF dosyaları oluşturmak için bu API’yi kullanacağız. API’yi indirebilir veya NuGet kullanarak yükleyebilirsiniz.
PM> Install-Package Aspose.PDF
C# kullanarak Çok Sütunlu PDF oluşturun
Aspose.PDF for .NET, çok sütunlu bir PDF dosyası oluşturmanızı oldukça kolaylaştırır. Aşağıdaki adımlar sıfırdan çok sütunlu bir PDF oluşturur.
- Yeni bir Belge nesnesi oluşturun.
- Document.PageInfo.Margin.Left ve Document.PageInfo.Margin.Right özelliklerini kullanarak sayfa kenar boşluklarını ayarlayın.
- Documents.Pages.Add() yöntemini kullanarak PDF’ye yeni bir sayfa ekleyin ve referansını bir Page nesnesine alın.
- Yeni bir Graph nesnesi oluşturun ve Page.Paragraphs.Add() yöntemini kullanarak paragrafa ekleyin.
- Yeni bir Line oluşturun ve onu Graph.Shapes koleksiyonuna ekleyin.
- Page.Paragraphs.Add() yöntemini kullanarak sayfaya başlık metni ekleyin.
- Yeni bir FloatingBox oluşturun ve sütun sayısını, sütun aralığını ve sütun genişliğini belirtin.
- Başka bir Grafik nesnesi oluşturun.
- Graph.Shapes koleksiyonuna yeni bir Satır ekleyin.
- Graph’ı FloatingBox.Paragraphs koleksiyonuna ekleyin.
- Yeni bir TextFragment oluşturun ve onu FloatingBox.Paragraphs koleksiyonuna ekleyin.
- Page.Paragraphs.Add() yöntemini kullanarak Sayfaya FloatingBox ekleyin.
- Document.Save(string) yöntemini kullanarak PDF dosyasını kaydedin.
Aşağıdaki kod örneği, C# kullanarak iki sütunlu bir PDF’nin nasıl oluşturulacağını gösterir.
// Eksiksiz örnekler ve veri dosyaları için lütfen https://github.com/aspose-pdf/Aspose.PDF-for-.NET adresine gidin.
// Belge oluştur
Document doc = new Document();
// PDF dosyası için sol kenar boşluğu bilgisini belirtin
doc.PageInfo.Margin.Left = 40;
// PDF dosyası için Sağ kenar boşluğu bilgisini belirtin
doc.PageInfo.Margin.Right = 40;
// Sayfa ekle
Page page = doc.Pages.Add();
// Bir grafik nesnesi oluşturun
Aspose.Pdf.Drawing.Graph graph1 = new Aspose.Pdf.Drawing.Graph(500, 2);
// Grafiği, bölüm nesnesinin açıklama koleksiyonuna ekleyin
page.Paragraphs.Add(graph1);
// Hat için koordinatları belirtin
float[] posArr = new float[] { 1, 2, 500, 2 };
Aspose.Pdf.Drawing.Line l1 = new Aspose.Pdf.Drawing.Line(posArr);
graph1.Shapes.Add(l1);
// HTML etiketlerini içeren metinle dize değişkeni oluşturun
string s = "<font face=\"Times New Roman\" size=4>" +
"<strong> How to Steer Clear of money scams</<strong> "
+ "</font>";
// Metin parçası oluştur ve başlat
HtmlFragment heading_text = new HtmlFragment(s);
page.Paragraphs.Add(heading_text);
// Kayan bir kutu oluşturun
Aspose.Pdf.FloatingBox box = new Aspose.Pdf.FloatingBox();
// Bölüme dört sütun ekleyin
box.ColumnInfo.ColumnCount = 2;
// Sütunlar arasındaki boşluğu ayarlayın
box.ColumnInfo.ColumnSpacing = "5";
// Sütun genişliklerini ayarla
box.ColumnInfo.ColumnWidths = "250 250";
// Yeni bir metin parçası oluştur
TextFragment text1 = new TextFragment("By A Googler (The Official Google Blog)");
text1.TextState.FontSize = 8;
text1.TextState.LineSpacing = 2;
box.Paragraphs.Add(text1);
text1.TextState.FontSize = 10;
text1.TextState.FontStyle = FontStyles.Italic;
// Bir grafik nesnesi oluşturun to draw a line
Aspose.Pdf.Drawing.Graph graph2 = new Aspose.Pdf.Drawing.Graph(50, 10);
// Hat için koordinatları belirtin
float[] posArr2 = new float[] { 1, 10, 100, 10 };
Aspose.Pdf.Drawing.Line l2 = new Aspose.Pdf.Drawing.Line(posArr2);
graph2.Shapes.Add(l2);
// Satırı bölüm nesnesinin paragraf koleksiyonuna ekleyin
box.Paragraphs.Add(graph2);
// Yeni bir metin parçası oluştur
TextFragment text2 = new TextFragment(@"Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.");
box.Paragraphs.Add(text2);
// Sayfaya kayan kutu ekle
page.Paragraphs.Add(box);
// PDF dosyasını kaydet
doc.Save("multi-column.pdf");
Aspose.PDF for .NET tarafından oluşturulan çok sütunlu PDF’nin ekran görüntüsü aşağıdadır.
Ücretsiz Lisans Alın
Aspose.PDF for .NET’i geçici lisans kullanarak değerlendirme sınırlamaları olmaksızın kullanabilirsiniz.
Çözüm
Bu gönderide, C# kullanarak sıfırdan çok sütunlu PDF dosyalarının nasıl oluşturulacağını öğrendiniz. API’yi yükleyebilir ve sağlanan kodu .NET uygulamalarınıza entegre edebilirsiniz. Ayrıca belgeleri kullanarak .NET PDF API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir sorunuz olması durumunda, forumumuz aracılığıyla sormaktan çekinmeyin.