J'ai réussi à coder pour afficher un fichier PDF dans le navigateur au lieu de la boîte de dialogue "Ouvrir / Enregistrer". Maintenant, je suis bloqué en essayant d'afficher un document Word dans le navigateur. Je souhaite afficher un document Word dans Firefox, IE7 +, Chrome, etc.
Quelqu'un peut-il aider? J'obtiens toujours la boîte de dialogue "Ouvrir / Enregistrer" lors de l'affichage du document Word dans le navigateur. Je souhaite implémenter cette fonctionnalité à l'aide de JavaScript.
javascript
browser
ms-word
Pankaj
la source
la source
Réponses:
Aucun navigateur n'a actuellement le code nécessaire pour rendre les documents Word, et pour autant que je sache, il n'y a pas non plus de bibliothèques côté client qui existent actuellement pour les rendre.
Cependant, si vous avez seulement besoin d'afficher le document Word, mais que vous n'avez pas besoin de le modifier, vous pouvez utiliser la visionneuse de Google Documents via un
<iframe>
pour afficher un fichier.doc
/.docx
.Solution adaptée de " Comment afficher un document Word en utilisant fancybox ".
Exemple:
JSFiddle
Cependant, si vous préférez avoir un support natif, dans la plupart, sinon tous les navigateurs, je vous recommande de réenregistrer le
.doc
/ en.docx
tant que fichier PDF.Ceux- ci peuvent également être rendus indépendamment à l'aide de PDF.js par Mozilla.Éditer:
Un grand merci à fatbotdesigns pour avoir publié la visionneuse Microsoft Office 365 dans les commentaires.
Une autre mise en garde importante à garder à l'esprit, comme indiqué par lightswitch05 , est que cela téléchargera votre document sur un serveur tiers. Si cela n'est pas acceptable, cette méthode d'affichage n'est pas la bonne marche à suivre.
Exemples en direct:
Visionneuse Google Docs
Visionneuse Microsoft Office
la source
url
paramètre en l'URL complète du fichier .doc, soit hébergé sur votre serveur, soit partout où il peut être directement lié. Google Docs gère la conversion vers un format qui peut être géré par le navigateur à la volée, et ne nécessite pas de téléchargement ou de stockage sur Google Docs, mais exécute plutôt une demande côté serveur pour récupérer le fichier.localhost
. Il a besoin d'une URL accessible au public. Vous pouvez utiliser un service de transfert de base comme Finch .Les réponses de Brandon et de fatbotdesigns sont toutes deux correctes, mais après avoir implémenté l'aperçu de Google docs, nous avons trouvé plusieurs fichiers .docx qui ne pouvaient pas être gérés par Google. Passé à l'aperçu de MS Office Online et fonctionne comme un charme.
Ma recommandation serait d'utiliser l'URL de prévisualisation de MS Office sur celle de Google.
la source
Il semble y avoir des bibliothèques js qui peuvent gérer .docx (pas .doc) vers la conversion html côté client (sans ordre particulier):
https://github.com/lalalic/docx2html - docx en html, la plupart des éléments sont pris en charge
https://github.com/mwilliamson/mammoth.js - prend en charge les en-têtes, listes, tableaux, notes de fin, notes de bas de page, images et zones de texte
https://www.npmjs.com/package/docx2html - Convertit les documents DOCX en HTML dans le navigateur ou nodejs
https://github.com/artburkart/docx2html - apparemment, fonctionne dans le navigateur
Remarque: Si vous recherchez le meilleur moyen de convertir un fichier doc / docx côté client, la réponse est probablement de ne pas le faire . Si vous avez vraiment besoin de le faire, faites-le côté serveur, c'est-à-dire avec libreoffice en mode sans tête , apache-poi (java) , pandoc ou toute autre bibliothèque qui vous convient le mieux.
la source
Je pense que j'ai une idée. Cela a également fait mon boulot et j'ai toujours du mal à l'afficher dans Chrome.
Enregistrer le document (nom.docx) dans Word en tant que page Web à fichier unique (nom.mht) Dans votre utilisation html
Modifiez les hauteurs et les largeurs comme bon vous semble.
la source
ViewerJS est utile pour afficher / intégrer le format openoffice comme odt, odp, ods et aussi pdf.
Pour intégrer un document openoffice / pdf
/ViewerJS/
est le chemin de ViewerJS#../demo/ohm2013
est le chemin de votre fichier que vous souhaitez intégrerla source
Native Documents (qui m'intéresse) crée une visionneuse (et un éditeur) spécifiquement pour les documents Word (à la fois les formats binaires .doc hérités et docx modernes). Il le fait sans conversion avec perte en HTML. Voici comment démarrer https://github.com/NativeDocuments/nd-WordFileEditor/blob/master/README.md
la source
Si vous souhaitez pré-traiter vos fichiers DOCX, plutôt que d'attendre l'exécution, vous pouvez d'abord les convertir en HTML en utilisant une API de conversion de fichiers telle que Zamzar . Vous pouvez utiliser l'API pour convertir par programme de DOCX en HMTL, enregistrer la sortie sur votre serveur, puis diffuser ce code HTML à vos utilisateurs finaux.
La conversion est assez simple:
Cela supprimerait toutes les dépendances d'exécution sur les services de Google et Microsoft (par exemple, s'ils étaient en panne ou si vous étiez limité par eux).
Il a également l'avantage que vous pouvez étendre à d' autres types de fichiers si vous le souhaitez (PPTX, XLS, DOC, etc.)
la source