Convertitore di documenti Aspose.Words per .NET
Aspose.Words Document Converter pour .NET est une API légère, de haute performance axée sur la conversion de format à format. Il soutient des scénarios communs tels que Word → PDF, HTML→PDF , DOCX ↔ ODT et DOCX → Markdown ; PDF → images (JPG/PNG/TIFF); et des dizaines d’autres – sans nécessiter Microsoft Office.
Installation et configuration
- Installez le paquet NuGet
Aspose.Words
(Core API pour les conversions de puissance). - Appliquer une licence mesurée à la start-up pour éviter les limites d’évaluation: voir Licenza a consumo .
- Examiner les exigences du cadre dans le Guide d’installation .
Des plateformes soutenues
- OS : Windows, Linux et macOS
- Frameworks : .NET Frames 4.x, .NET Standard 2.0, ,NET Core 2.0–3.1, .NET 5/6/7+, Mono
- IDEs: Visual Studio 2017–2022, JetBrains Rider, MonoDevelop
Début rapide
1) Word → PDF (une ligne)
using Aspose.Words;
var doc = new Document("input.docx");
doc.Save("output.pdf");
2) HTML → PDF avec des options
using Aspose.Words;
using Aspose.Words.Saving;
var doc = new Document("input.html");
var pdf = new PdfSaveOptions
{
Compliance = PdfCompliance.PdfA1b, // archival
EmbedFullFonts = false, // reduce size
OptimizationOptions = { ImageCompression = PdfImageCompression.Jpeg }
};
doc.Save("output.pdf", pdf);
Docx et Markdown
using Aspose.Words;
using Aspose.Words.Saving;
var doc = new Document("spec.docx");
var md = new MarkdownSaveOptions
{
TableContentAlignment = MarkdownTableContentAlignment.Auto,
ListExportMode = MarkdownListExportMode.PlainText
};
doc.Save("spec.md", md);
4) PDF → images (par page)
using Aspose.Words;
using Aspose.Words.Saving;
var pdfDoc = new Document("report.pdf");
var img = new ImageSaveOptions(SaveFormat.Png) { Resolution = 200 };
for (int page = 0; page < pdfDoc.PageCount; page++)
{
img.PageSet = new PageSet(page);
pdfDoc.Save($"report_page_{page + 1}.png", img);
}
5 – Stream (sur le Web et le Service)
using (var input = httpFile.OpenReadStream())
using (var output = new MemoryStream())
{
var doc = new Aspose.Words.Document(input); // auto-detects format
doc.Save(output, SaveFormat.Pdf);
output.Position = 0;
return File(output.ToArray(), "application/pdf", "converted.pdf");
}
Caractéristiques et fonctionnalités
La couverture de format large
Entrée et sortie (selecté):
- Famille de mots : DOC, DOCX, DOT, RTF, WordML (XML)
- Layout fixe : PDF, OTT Formats / EPUB/)
Full matrix alignés avec les fonctionnalités Aspose.Words. Si un plugin **File Processor ** et ce Converter sont présents, vous pouvez d’abord charger/éditer et ensuite exporter dans le format souhaité.
Détection de format automatique
L’API détecte le format des titres de fichiers ou du contenu de courant , de sorte que vous pouvez accepter en toute sécurité les téléchargements arbitraires dans les services Web.
Fine-Tuning avec les options de sauvegarde
- PDF: PDF/A‐1b/2u, cryptage, drapeaux d’autorisation, signatures numériques, intégration des lettres, compression de l’image.
- HTML/MHTML: gestion des ressources (embed vs. extérieur), mode CSS, codage, format d’image et DPI.
- Images: DPI, profondeur de couleur, compression, gamme de pages, multi-page TIFF.
- Markdown: liste et styles de référence, alignement de table, génération de liens.
Layout de fidélité et métadonnées
Il maintient les fonctions, les styles, des tableaux, titres/footers, marques d’eau, commentaires, ruptures de section et propriétés de document (auteur, titre, champs personnalisés.
Traitement amical avec le serveur
- Stream-first APIs, faibles allocations, buffer I/O.
- Async/batch conversion et parallélisation pour la transmission.
- Configurer la mémoire et les limites de traitement des pages pour les grands docs.
Diagnostic et résilience
Exceptions claires sur les entrées corrompues / non soutenues; le logage / la télémétrie pour capturer les durées, les comptes de pages et les raisons d’échec SLA Le tracking.
Recettes de conversion populaire
- **DOCX → PDF/XPS ** pour la distribution et l’archivage (optionnellement PDF/A).
- HTML → PDF pour les factures, les déclarations et les rapports avec une page cohérente.
- DOCX ↔ ODT pour l’interopérabilité cross-suite.
- DOCX → Markdown pour publier des documents technologiques.
- PDF → PNG/JPEG/TIFF pour générer des prévisions ou des détails.
- Word/HTML → EPUB pour les flux de travail e-book.
Conseil : Utilisez **PageSet ** pour exporter des pages ou des rangs spécifiques; combiner avec ImageSaveOptions en cas de prêt ou de thumbnails.
Migliori pratiche
- Licence première : initialisez la licence mesurée avant toute conversion pour éviter les marques d’évaluation.
- Preferez les flux dans les services pour échapper au disque I/O et réduire la latence.
- Valider tôt : inspectez les bytes magiques ou essayez une charge sèche pour échouer rapidement.
- **Produite de taille droite ** : Choisissez un DPI sensible, évitez d’incorporer chaque font sauf si nécessaire; Choisir PDF/A uniquement lorsque la conformité est requise.
- Hygiene des ressources : enveloppement
Document
et les courants dansusing
Les blocs. - Concurrence : utilisation à court terme
Document
instances par demande ; employer des piscines pour les options si nécessaire. - Observabilité : numéros de page de journal, de durée et d’options; étiquette des échecs avec des identifiants de corrélation.
FAQ
**Vous avez besoin de Microsoft Office?**Il s’agit d’une API isolée.
**Puis-je convertir sans toucher le système de fichiers?**Oui, toutes les conversions peuvent être Stream → Stream.
**Comment puis-je mettre en œuvre PDF/A?**Sélection PdfSaveOptions.Compliance = PdfCompliance.PdfA1b
(ou 2u) avant le sauvetage.
**Puis-je protéger les fichiers PDF?**Oui. Configurez les drapeaux de cryptage et d’autorisation dans PdfSaveOptions
.
**Est-ce que Markdown round-trip est sûr?**Les tables, listes, titres, liens et formatage en ligne sont soutenus avec des options tunables.
**Comment puis-je convertir des pages spécifiques?**Utiliser PageSet
dans ImageSaveOptions
ou FixedPageSaveOptions
‑Les classes dérivées.