Comment extraire les polices et enregistrer les ressources HTML dans un dossier

Introduction

GroupDocs.Editor for .NET vous permet how to extract fonts et d’autres ressources d’un document lors de la conversion en HTML. En quelques lignes de C#, vous pouvez extraire les images, les feuilles de style et les fichiers de police, puis les stocker dans le dossier de votre choix. Ce tutoriel vous guide à travers l’ensemble du flux de travail, depuis l’initialisation de l’éditeur jusqu’à l’enregistrement de chaque ressource sur le disque.

Réponses rapides

  • Que signifie “how to extract fonts” ? C’est le processus de récupération des fichiers de police incorporés d’un document source lors de la conversion en HTML.
  • Quelle bibliothèque gère cela ? GroupDocs.Editor for .NET fournit une API dédiée à l’extraction des polices, des images et des feuilles de style.
  • Ai-je besoin d’une licence ? Un essai gratuit est disponible ; une licence commerciale est requise pour une utilisation en production.
  • Quelles versions de .NET sont prises en charge ? .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7.
  • Puis-je cibler un dossier personnalisé ? Oui, vous spécifiez n’importe quel chemin accessible en écriture lors de l’enregistrement des ressources extraites.

Qu’est-ce que “how to extract fonts” ?

How to extract fonts fait référence à la récupération des fichiers de police originaux incorporés dans un document source (par ex., DOCX, PPTX) afin qu’ils puissent être référencés par le HTML généré. Cela garantit que le texte s’affiche exactement comme prévu dans les navigateurs sans dépendre des polices système.

Pourquoi utiliser GroupDocs.Editor pour l’extraction de ressources HTML ?

GroupDocs.Editor prend en charge plus de 50 formats d’entrée et de sortie — y compris DOCX, PPTX, PDF et HTML — et peut traiter des documents contenant jusqu’à 300 pages sans charger le fichier complet en mémoire. Son API extrait les polices, les images et le CSS en une seule passe, réduisant le temps de développement jusqu’à 70 % comparé à une analyse manuelle.

Prérequis

  1. Connaissances de base en C# et .NET – La familiarité avec le langage de programmation C# et le framework .NET est essentielle pour suivre les exemples.
  2. Bibliothèque GroupDocs.Editor for .NET – Téléchargez et installez la bibliothèque GroupDocs.Editor for .NET depuis le site web.
  3. Environnement de développement – Configurez votre environnement de développement préféré tel que Visual Studio ou tout autre IDE compatible.

Importer les espaces de noms

Pour commencer, importez les espaces de noms nécessaires dans votre projet C# :

using System;
using System.Collections.Generic;
using System.IO;
using GroupDocs.Editor.HtmlCss.Resources.Fonts;
using GroupDocs.Editor.HtmlCss.Resources.Images;
using GroupDocs.Editor.HtmlCss.Resources.Textual;
using GroupDocs.Editor.Options;

Comment extraire les polices et enregistrer les ressources HTML dans un dossier ?

Chargez votre document source avec Editor editor = new Editor("sample.docx", new WordProcessingLoadOptions()); puis appelez editor.Save("output.html", SaveOptions.Html);. Après l’opération d’enregistrement, la collection Resources contient toutes les ressources extraites — y compris les polices — que vous pouvez parcourir et écrire sur le disque. Cette approche en une seule étape gère automatiquement la conversion et l’extraction des ressources.

Étape 1 : Initialiser GroupDocs.Editor

Editor est la classe principale qui orchestre le chargement, la conversion et l’extraction des ressources du document. Elle représente une session unique de document en mémoire.

using (Editor editor = new Editor("Your Sample Document", delegate { return new WordProcessingLoadOptions(); }))
{

Tout d’abord, initialisez l’objet Editor en fournissant le chemin de votre document d’exemple. Dans cet exemple, nous utilisons un document Word, donc nous spécifions WordProcessingLoadOptions comme type de document.

Étape 2 : Modifier le document

EditableDocument est la représentation modifiable renvoyée par la méthode Edit, vous permettant de manipuler le document avant de l’enregistrer.

	using (EditableDocument document = editor.Edit(new WordProcessingEditOptions()))
	{

Ensuite, créez un objet EditableDocument en appelant la méthode Edit de l’objet Editor. Cela vous permet d’effectuer des opérations d’édition sur le document.

Étape 3 : Extraire les ressources

Resources est une collection qui regroupe les ressources extraites — images, polices et feuilles de style — en listes séparées pour une manipulation facile.

		List<IImageResource> images = document.Images;
		List<FontResourceBase> fonts = document.Fonts;
		List<CssText> stylesheets = document.Css;

Extrayez les ressources telles que les images, les polices et les feuilles de style du document et stockez-les dans les listes respectives.

Étape 4 : Spécifier le dossier de sortie

outputFolder est une chaîne qui définit où les fichiers extraits seront écrits. Vous pouvez le pointer vers n’importe quel répertoire accessible en écriture sur le serveur ou la machine locale.

		string outputFolder = Constants.GetOutputDirectoryPath("Your Sample Document");

Définissez le dossier de sortie où les ressources extraites seront enregistrées. Vous pouvez personnaliser le chemin du dossier selon vos besoins.

Étape 5 : Enregistrer les ressources

SaveResource est une routine d’aide qui écrit une ressource binaire unique (image, police ou feuille de style) sur le système de fichiers.

		foreach (IImageResource oneImage in images)
		{
			Console.WriteLine("Saving {0} of {1} type and {2} dimensions",
				oneImage.FilenameWithExtension, oneImage.Type.FormalName, oneImage.LinearDimensions);
			oneImage.Save(Path.Combine(outputFolder, oneImage.FilenameWithExtension));
		}

Parcourez chaque ressource image, enregistrez‑la dans le dossier de sortie et affichez les informations pertinentes telles que le nom de fichier, le type et les dimensions.

		foreach (FontResourceBase oneFont in fonts)
		{
			Console.WriteLine("Saving {0} of {1} type",
				oneFont.FilenameWithExtension, oneFont.Type.FormalName);
			oneFont.Save(Path.Combine(outputFolder, oneFont.FilenameWithExtension));
		}

De même, enregistrez chaque ressource de police dans le dossier de sortie.

		foreach (CssText oneStylesheet in stylesheets)
		{
			Console.WriteLine("Saving {0} of {1} type and {2} encoding",
				oneStylesheet.FilenameWithExtension, oneStylesheet.Type.FormalName, oneStylesheet.Encoding);
			oneStylesheet.Save(Path.Combine(outputFolder, oneStylesheet.FilenameWithExtension));
		}
	}
}

Enfin, enregistrez chaque feuille de style dans le dossier de sortie et terminez le processus d’édition.

Problèmes courants et solutions

  • Polices manquantes après la conversion – Assurez‑vous que le document source intègre réellement les polices ; sinon, GroupDocs.Editor ne peut référencer que les polices système.
  • Erreurs d’accès refusé – Vérifiez que le processus de l’application possède les permissions d’écriture sur le dossier de sortie cible.
  • Les documents volumineux entraînent une forte consommation de mémoire – Utilisez LoadOptions avec LoadMode = LoadMode.Stream pour diffuser les gros fichiers au lieu de les charger entièrement en mémoire.

Questions fréquentes

Q : GroupDocs.Editor est‑il compatible avec d’autres formats de documents que Word ?
A : Oui, il prend en charge Excel, PowerPoint, PDF, HTML et plus de 50 formats supplémentaires pour l’édition et l’extraction des ressources.

Q : Puis‑je intégrer GroupDocs.Editor dans une application web ?
A : Absolument. L’API fonctionne parfaitement avec les projets ASP.NET Core, MVC et Web API, vous permettant de traiter les documents côté serveur.

Q : GroupDocs.Editor propose‑t‑il une intégration avec le stockage cloud ?
A : Oui, il inclut des connecteurs intégrés pour Google Drive, Dropbox, OneDrive et Amazon S3, permettant le chargement et l’enregistrement directs des documents dans le cloud.

Q : Existe‑t‑il un essai gratuit disponible pour GroupDocs.Editor ?
A : Un essai complet de 30 jours peut être téléchargé depuis le site Web de GroupDocs sans aucune exigence de carte de crédit.

Q : Comment obtenir une assistance technique pour les problèmes d’extraction ?
A : Vous pouvez contacter l’équipe de support de GroupDocs via le forum officiel, soumettre un ticket via le portail client, ou consulter la documentation détaillée de l’API.


Dernière mise à jour : 2026-05-12
Testé avec : GroupDocs.Editor 23.11 for .NET
Auteur : GroupDocs

Tutoriels associés