Élément de tableau de style
Introduction
Dans cet article, nous allons découvrir comment créer et styliser un élément de tableau à l’aide d’Aspose.PDF pour .NET. Vous apprendrez à structurer un tableau, à appliquer des styles personnalisés et à valider la conformité PDF/UA de votre document. À la fin de ce didacticiel, vous serez en mesure de créer facilement des tableaux d’aspect professionnel dans vos PDF !
Prérequis
Avant de commencer le didacticiel, vous devez vous assurer que vous disposez des éléments suivants :
- Visual Studio ou un IDE similaire installé sur votre machine.
- .NET Framework ou .NET Core SDK pour exécuter l’application.
- Bibliothèque Aspose.PDF pour .NET téléchargée et référencée dans votre projet. Vous pouvez récupérer la dernière version à partir deici.
- Une licence Aspose valide ou unpermis temporaire pour déverrouiller toutes les fonctionnalités de la bibliothèque.
Paquets d’importation
Pour commencer, importez les espaces de noms nécessaires dans votre projet :
using Aspose.Pdf.LogicalStructure;
using Aspose.Pdf.Tagged;
using Aspose.Pdf.Text;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
Ces espaces de noms couvrent les opérations PDF de base, le contenu balisé, les tableaux et la mise en forme du texte.
Décomposons maintenant le processus de création et de style d’un tableau dans Aspose.PDF. Nous allons parcourir chaque section en détail afin que vous puissiez suivre.
Étape 1 : créer un nouveau document PDF et configurer le contenu balisé
Dans cette première étape, nous allons créer un document PDF vierge et configurer son contenu balisé.
// Le chemin vers le répertoire des documents.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Créer un nouveau document PDF
Document document = new Document();
// Configurer le contenu balisé
ITaggedContent taggedContent = document.TaggedContent;
taggedContent.SetTitle("Example table style");
taggedContent.SetLanguage("en-US");
Nous commençons par créer un nouveauDocument
objet, représentant notre PDF.TaggedContent
L’objet est utilisé pour gérer la structure du document, en garantissant le respect des normes d’accessibilité. Nous définissons le titre et la langue du document pour un balisage approprié.
Étape 2 : Définir l’élément racine
Ensuite, nous allons créer l’élément de structure racine, qui agit comme conteneur pour tout le contenu de notre PDF.
// Obtenir l'élément de structure racine
StructureElement rootElement = taggedContent.RootElement;
LeRootElement
sert de conteneur de base pour tous les éléments structurés, y compris notre tableau. Il permet de maintenir la hiérarchie structurelle du document, ce qui est important à la fois pour l’organisation et l’accessibilité.
Étape 3 : Créer et styliser l’élément de tableau
Maintenant que l’élément racine est configuré, nous allons créer unTableElement
et appliquez des styles tels que la couleur d’arrière-plan, les bordures et l’alignement.
// Créer un élément de structure de table
TableElement tableElement = taggedContent.CreateTableElement();
rootElement.AppendChild(tableElement);
// Styliser la table
tableElement.BackgroundColor = Color.Beige;
tableElement.Border = new BorderInfo(BorderSide.All, 0.80F, Color.Gray);
tableElement.Alignment = HorizontalAlignment.Center;
tableElement.Broken = TableBroken.Vertical;
tableElement.ColumnAdjustment = ColumnAdjustment.AutoFitToWindow;
Nous créons unTableElement
, qui définit la structure de notre table.BackgroundColor
, Border
, etAlignment
Les propriétés nous permettent de personnaliser l’apparence du tableau.Broken
la propriété garantit que si le tableau est divisé en plusieurs pages, il est divisé verticalement.
Étape 4 : définir les dimensions du tableau et les styles de cellule
Dans cette étape, nous allons définir le nombre de colonnes, le remplissage des cellules et d’autres propriétés importantes du tableau.
tableElement.ColumnWidths = "80 80 80 80 80";
tableElement.DefaultCellBorder = new BorderInfo(BorderSide.All, 0.50F, Color.DarkBlue);
tableElement.DefaultCellPadding = new MarginInfo(16.0, 2.0, 8.0, 2.0);
tableElement.DefaultCellTextState.ForegroundColor = Color.DarkCyan;
tableElement.DefaultCellTextState.FontSize = 8F;
Nous spécifions les largeurs de colonne pour garantir que chaque colonne du tableau est uniformément espacée.DefaultCellBorder
, DefaultCellPadding
, etDefaultCellTextState
définir les styles par défaut des cellules, y compris les bordures, le remplissage, la couleur du texte et la taille de la police.
Étape 5 : ajouter des lignes répétitives et des styles personnalisés
Nous pouvons également définir des styles pour les lignes répétées et d’autres éléments de tableau spécifiques comme les en-têtes et les pieds de page.
tableElement.RepeatingRowsCount = 3;
TextState rowStyle = new TextState();
rowStyle.BackgroundColor = Color.LightCoral;
tableElement.RepeatingRowsStyle = rowStyle;
LeRepeatingRowsCount
garantit que les trois premières lignes se répètent si le tableau s’étend sur plusieurs pages. Nous définissons leRepeatingRowsStyle
pour appliquer une couleur d’arrière-plan personnalisée à ces lignes.
Étape 6 : ajouter des éléments d’en-tête, de corps et de pied de tableau
Maintenant, créons les sections d’en-tête, de corps et de pied de page du tableau et remplissons-les avec du contenu.
TableTHeadElement tableTHeadElement = tableElement.CreateTHead();
TableTBodyElement tableTBodyElement = tableElement.CreateTBody();
TableTFootElement tableTFootElement = tableElement.CreateTFoot();
// Créer une ligne d'en-tête
TableTRElement headTrElement = tableTHeadElement.CreateTR();
headTrElement.AlternativeText = "Head Row";
for (int colIndex = 0; colIndex < 5; colIndex++)
{
TableTHElement thElement = headTrElement.CreateTH();
thElement.SetText($"Head {colIndex}");
}
// Remplir le corps du tableau
for (int rowIndex = 0; rowIndex < 10; rowIndex++)
{
TableTRElement trElement = tableTBodyElement.CreateTR();
for (int colIndex = 0; colIndex < 5; colIndex++)
{
TableTDElement tdElement = trElement.CreateTD();
tdElement.SetText($"Cell [{rowIndex}, {colIndex}]");
}
}
Le tableau est divisé en trois parties : l’en-tête, le corps et le pied. Nous créons d’abord la ligne d’en-tête à l’aide deTableTHElement
et ajouter des en-têtes de colonnes. Ensuite, nous remplissons le corps du tableau avecTableTDElement
, en remplissant chaque cellule avec une étiquette qui inclut sa position.
Étape 7 : Enregistrer le document
Enfin, nous enregistrons le document PDF dans le répertoire spécifié.
// Enregistrer le document PDF balisé
document.Save(dataDir + "StyleTableElement.pdf");
Cette étape finalise le processus de création du document en enregistrant le fichier PDF avec le tableau stylisé.
Étape 8 : Valider la conformité PDF/UA
Après avoir enregistré le document, il est essentiel de s’assurer qu’il est conforme aux normes PDF/UA (Universal Accessibility).
// Vérifier la conformité PDF/UA
document = new Document(dataDir + "StyleTableElement.pdf");
bool isPdfUaCompliance = document.Validate(dataDir + "StyleTableElement.xml", PdfFormat.PDF_UA_1);
Console.WriteLine($"PDF/UA compliance: {isPdfUaCompliance}");
Ici, nous rechargeons le document et le validons par rapport aux normes PDF/UA. La conformité garantit que votre PDF répond aux exigences d’accessibilité, ce qui le rend adapté à un large éventail d’utilisateurs.
Conclusion
Avec Aspose.PDF pour .NET, la création et la mise en forme de tableaux dans vos documents PDF sont simples et intuitives. En suivant les étapes décrites dans ce didacticiel, vous pouvez créer des tableaux avec des styles personnalisés et garantir que vos PDF respectent les normes d’accessibilité. Que vous génériez des rapports ou créiez des documents structurés, les tableaux sont un outil puissant pour présenter clairement les données.
FAQ
Puis-je ajouter des images à l’intérieur des cellules d’un tableau ?
Oui, vous pouvez insérer des images dans des cellules de tableau à l’aide de laImage
élément.
Comment ajuster la largeur des colonnes de manière dynamique ?
Vous pouvez définir leColumnAdjustment
propriété àAutoFitToWindow
pour ajuster automatiquement la largeur des colonnes en fonction du contenu.
La conformité PDF/UA est-elle obligatoire pour tous les documents ?
Bien que cela ne soit pas obligatoire, cela est recommandé pour les documents qui nécessitent des normes d’accessibilité élevées.
Puis-je appliquer des styles différents à des lignes spécifiques ?
Oui, vous pouvez personnaliser des lignes ou des cellules individuelles en ajustant leurTextState
ouBackgroundColor
.
Quel est l’avantage d’utiliser du contenu balisé ?
Le contenu balisé améliore l’accessibilité des documents et contribue à garantir la conformité avec des normes telles que PDF/UA.