Les PDF multi-colonnes sont utilisés pour divers types de publications telles que des magazines, des journaux, des articles de recherche, etc. Lorsque vous travaillez avec l’automatisation PDF, vous pouvez rencontrer le scénario dans lequel vous devez générer un PDF multi-colonnes par programmation. Conformément à cela, cet article explique comment créer des fichiers PDF multi-colonnes à l’aide de C#.
API C# pour créer des PDF multi-colonnes
Aspose.PDF for .NET est une API puissante et riche en fonctionnalités pour créer et manipuler des documents PDF. Nous utiliserons cette API pour créer des fichiers PDF à plusieurs colonnes à l’aide de C#. Vous pouvez soit télécharger l’API ou l’installer à l’aide de NuGet.
PM> Install-Package Aspose.PDF
Créer un PDF multi-colonnes à l’aide de C#
Aspose.PDF for .NET vous permet de créer plus facilement un fichier PDF multi-colonnes. Les étapes suivantes créent un PDF multi-colonnes à partir de zéro.
- Créez un nouvel objet Document.
- Définissez les marges de la page à l’aide des propriétés Document.PageInfo.Margin.Left et Document.PageInfo.Margin.Right.
- Ajoutez une nouvelle page dans le PDF à l’aide de la méthode Documents.Pages.Add() et récupérez sa référence dans un objet Page.
- Créez un nouvel objet Graph et ajoutez-le au paragraphe à l’aide de la méthode Page.Paragraphs.Add().
- Créez une nouvelle Ligne et ajoutez-la à la collection Graph.Shapes.
- Ajoutez du texte d’en-tête à la page à l’aide de la méthode Page.Paragraphs.Add().
- Créez une nouvelle FloatingBox et spécifiez le nombre de colonnes, l’espacement des colonnes et la largeur des colonnes.
- Créez un autre objet Graph.
- Ajoutez une nouvelle ligne à la collection Graph.Shapes.
- Ajoutez Graph à la collection FloatingBox.Paragraphs.
- Créez un nouveau TextFragment et ajoutez-le à la collection FloatingBox.Paragraphs.
- Ajoutez FloatingBox à la page en utilisant la méthode Page.Paragraphs.Add().
- Enregistrez le fichier PDF à l’aide de la méthode Document.Save(string).
L’exemple de code suivant montre comment créer un PDF à deux colonnes à l’aide de C#.
// Pour des exemples complets et des fichiers de données, rendez-vous sur https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Créer un document
Document doc = new Document();
// Spécifiez les informations de marge gauche pour le fichier PDF
doc.PageInfo.Margin.Left = 40;
// Spécifiez les informations de marge droite pour le fichier PDF
doc.PageInfo.Margin.Right = 40;
// Ajouter une page
Page page = doc.Pages.Add();
// Créer un objet graphique
Aspose.Pdf.Drawing.Graph graph1 = new Aspose.Pdf.Drawing.Graph(500, 2);
// Ajouter le graphique à la collection de paraphraphes de l'objet de section
page.Paragraphs.Add(graph1);
// Spécifiez les coordonnées de la ligne
float[] posArr = new float[] { 1, 2, 500, 2 };
Aspose.Pdf.Drawing.Line l1 = new Aspose.Pdf.Drawing.Line(posArr);
graph1.Shapes.Add(l1);
// Créer une variable de chaîne avec du texte contenant des balises HTML
string s = "<font face=\"Times New Roman\" size=4>" +
"<strong> How to Steer Clear of money scams</<strong> "
+ "</font>";
// Créer un fragment de texte et l'initialiser
HtmlFragment heading_text = new HtmlFragment(s);
page.Paragraphs.Add(heading_text);
// Créer une boîte flottante
Aspose.Pdf.FloatingBox box = new Aspose.Pdf.FloatingBox();
// Ajouter quatre colonnes dans la section
box.ColumnInfo.ColumnCount = 2;
// Définir l'espacement entre les colonnes
box.ColumnInfo.ColumnSpacing = "5";
// Définir la largeur des colonnes
box.ColumnInfo.ColumnWidths = "250 250";
// Créer un nouveau fragment de texte
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;
// Créer un objet graphique to draw a line
Aspose.Pdf.Drawing.Graph graph2 = new Aspose.Pdf.Drawing.Graph(50, 10);
// Spécifiez les coordonnées de la ligne
float[] posArr2 = new float[] { 1, 10, 100, 10 };
Aspose.Pdf.Drawing.Line l2 = new Aspose.Pdf.Drawing.Line(posArr2);
graph2.Shapes.Add(l2);
// Ajouter la ligne à la collection de paragraphes de l'objet section
box.Paragraphs.Add(graph2);
// Créer un nouveau fragment de texte
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);
// Ajouter une boîte flottante à la page
page.Paragraphs.Add(box);
// Enregistrer le fichier PDF
doc.Save("multi-column.pdf");
Voici la capture d’écran du PDF multi-colonnes généré par Aspose.PDF for .NET.

Obtenez une licence gratuite
Vous pouvez utiliser Aspose.PDF for .NET sans limitation d’évaluation à l’aide d’une licence temporaire.
Conclusion
Dans cet article, vous avez appris à créer des fichiers PDF multi-colonnes à partir de zéro à l’aide de C#. Vous pouvez simplement installer l’API et intégrer le code fourni dans vos applications .NET. De plus, vous pouvez en savoir plus sur l’API PDF .NET à l’aide de la documentation. Si vous avez des questions, n’hésitez pas à les poser via notre forum.