Utilisation de modèles, remplacement de texte et conversion au format PDF

Maintenant que nous avons couvert la plupart des éléments pouvant être ajoutés à un document, nous allons voir comment utiliser des modèles et remplacer automatiquement du texte, ainsi que comment convertir un document en PDF.

En savoir plus sur Xceed Words pour .NET

Maintenant que nous avons couvert la plupart des éléments pouvant être ajoutés à un document, nous allons voir comment utiliser des modèles et remplacer automatiquement du texte, ainsi que comment convertir un document en PDF.

Modèles

L'application d'un modèle à un document se fait en appelant la fonction Appliquer un modèle sur le document.

Le Appliquer un modèle prend en charge 4 surcharges, selon que vous passez un chemin de fichier ou un flux, et que vous incluez le paramètre facultatif indiquant si le contenu textuel du modèle de document doit être copié dans le document (vrai par défaut).

Exemple lors de l'utilisation d'un chemin d'accès à un fichier :

// Get the path to a template document
var templatePath = MyResourcesDirectory + @"Template.docx";

// Apply the template to a document
document1.ApplyTemplate( templatePath );

// Apply the template to a document, but do not copy the content of the template to the document
document2.ApplyTemplate( templatePath, false );

Remplacement du texte

Le ReplaceText est disponible à la fois au niveau du document et du paragraphe, ce qui permet de remplacer le texte uniquement dans un paragraphe spécifique ou dans l'ensemble du document.

Le ReplaceText prend en charge deux surcharges, l'une pour fournir une nouvelle valeur de chaîne et l'autre pour fournir une fonction à utiliser en tant que gestionnaire de correspondance d'expressions rationnelles.

Dans les deux surcharges, une valeur de recherche (chaîne) doit être fournie, ainsi que la nouvelle valeur correspondante en fonction de la surcharge utilisée. Plusieurs paramètres facultatifs sont également disponibles, notamment la possibilité de suivre les modifications ou non, les RegexOptions, le nouveau formatage, le formatage de correspondance, les MatchFormattingOptions et la suppression ou non des paragraphes vides.

// Simple text replacement in a paragraph
p.ReplaceText("<FIRST_NAME>", "John");
p.ReplaceText("<LAST_NAME>", "Doe");

// Simple text replacement in a document
document.ReplaceText("<CODE>", "A3124x");

Un exemple plus complexe est également disponible dans la documentation ici.

Remplacer le texte par des objets

Il est également possible de remplacer le texte par des objets en utilisant la fonction ReplaceTextWithObject également disponible pour les documents et les paragraphes.

Le ReplaceTextWithObject attend la valeur de la recherche et l'objet à ajouter comme paramètres obligatoires et dispose de plusieurs paramètres optionnels similaires à ceux de la méthode ReplaceText méthode.

// Replace text with an Image
document.ReplaceTextWithObject( "<YEAR_IMAGE>", picture, false, RegexOptions.IgnoreCase );

// Replace text with a Hyperlink
document.ReplaceTextWithObject( "<YEAR_LINK>", hyperlink );

// Replace text with a Table
document.ReplaceTextWithObject( "<YEAR_TABLE>", table );

Conversion en PDF

Pour convertir un document au format PDF, la fonction ConvertToPdf est appelée.

Le ConvertToPdf possède deux surcharges pour prendre en charge deux sorties possibles, l'une pour un nom de fichier, l'autre pour un flux. Dans les deux cas, elle attend le document à convertir comme premier paramètre.

Exemple d'utilisation d'un nom de fichier comme sortie :

using( var document = DocX.Load( "DocumentToConvert.docx" ) )
{
	// Convert the Document to PDF and output to a pdf file
	DocX.ConvertToPdf( document, "ConvertedDocument.pdf" );
}

Notes :

  • Vous avez besoin de la référence Xceed.Pdf.dll pour convertir en PDF.
  • Pour convertir un document avec une police spécifique en PDF, la police (un fichier ttf) doit être installée dans "Panneau de configurationTous les éléments du panneau de configurationPolices", sinon la police par défaut Arial sera utilisée pour générer le document PDF.

Bien que la plupart des éléments docx soient convertis en PDF, il se peut que certains éléments ne soient pas correctement convertis. Si vous rencontrez une situation où des éléments ne sont pas correctement convertis en PDF, veuillez nous en informer et nous envisagerons d'ajouter cette fonctionnalité.

Pour plus d'informations, veuillez vous référer à la la documentation.