Fidélité de la mise en page
La pagination, les en-têtes et pieds de page, les colonnes, les tableaux et les images intégrées sont mis en page comme le ferait Word, car la sortie est une image de page plutôt qu'une approximation HTML.
L'interop Office sur un serveur web est une décision que les équipes regrettent à un rythme prévisible : elle nécessite une licence de bureau, elle fuit des processus, elle bloque en cas de concurrence, et Microsoft dit depuis des années de ne pas le faire. Doconut rend les fichiers DOC, DOCX, RTF et ODT nativement — pas d'Office, pas de COM, pas de WINWORD.EXE orphelin à 4h du matin.
Le problème
L'automatisation Office a été conçue pour un poste de travail avec un utilisateur connecté, pas pour un service traitant vingt requêtes simultanées. Sous charge, elle se bloque, des dialogues apparaissent que personne ne peut fermer, et les processus survivent à leurs requêtes jusqu'à ce que la machine manque de mémoire.
L'histoire des licences n'est pas meilleure : un serveur qui rend des documents pour de nombreux utilisateurs a besoin de licences de bureau qui n'étaient jamais prévues.
Le rendu natif contourne tout cela. Doconut ouvre le fichier, le met en page et produit des images de pages en processus. Il n'y a aucune seconde application à installer, superviser ou licencier.
Capacités
La pagination, les en-têtes et pieds de page, les colonnes, les tableaux et les images intégrées sont mis en page comme le ferait Word, car la sortie est une image de page plutôt qu'une approximation HTML.
.doc, .docx, .docm, .dot, .dotx, .dotm, .rtf, .odt, .ott et .xml s'ouvrent tous via le même appel.
Le rendu utilise les polices installées sur votre serveur, ainsi l'apparence du document dépend de votre déploiement plutôt que de la machine que le lecteur utilise.
Une image de page ne contient pas les modifications suivies, le texte supprimé, les commentaires ou les métadonnées d'auteur. Envoyer des images au lieu du DOCX réduit de façon significative les fuites.
Avec le plugin AdvancedSearch, la recherche s'effectue sur le texte du document, pas sur une image de celui-ci.
Avec le plugin Converter, DocumentConverter.ConvertAsync() produit du PDF ou d'autres cibles dans le même processus — utile lorsque le besoin est d'archiver plutôt que de visualiser.
Intégration
Notez que le .xml est géré par le moteur Word et WordConfig. Ce n'est pas un visualiseur XML à usage général — il est présent parce que le format XML propre à Word passe par ce pipeline.
Extensions prises en charge
// Identical to every other format — the family is detected from the document
string token = await viewer.OpenDocumentAsync("wwwroot/files/Agreement.docx");
// With the Converter plugin, when the requirement is a PDF for the archive
await DocumentConverter.ConvertAsync(
"wwwroot/files/Agreement.docx",
"wwwroot/archive/Agreement.pdf");Détails
Non. Le rendu est natif. Il n'y a aucune installation d'Office, aucun assembly d'interop et aucun processus d'automatisation à superviser.
La pagination et la mise en page sont reproduites côté serveur, ainsi le résultat correspond étroitement à condition que les polices référencées par le document soient installées sur l'hôte de rendu. Les polices manquantes sont substituées, et la substitution est ce qui modifie la mise en page.
La page rendue montre le document tel qu'il est mis en page, pas les métadonnées de révision qui le sous-tendent. En fait, c'est une fonctionnalité — les relecteurs transmettent régulièrement des fichiers DOCX contenant du texte supprimé qu'ils pensaient disparu.
Excel
Rendu côté serveur de XLS/XLSX/ODS/CSV avec le formatage préservé et les feuilles cachées laissées de côté.
ExcelRendu PDF côté serveur en images de pages — l'utilisateur lit le document sans jamais recevoir le fichier.
PDFUne licence temporaire prend quelques minutes à demander et s'exécute entièrement sur votre propre machine. Les fichiers qui comptent sont ceux qui posent déjà problème à votre visionneuse actuelle.