Pertanyaan Bagaimana saya merender dokumen Word (.doc, .docx) di browser menggunakan JavaScript?


Saya telah berhasil melakukan kode untuk menampilkan file PDF di browser, bukan dialog "Buka / Simpan". Sekarang, saya terjebak mencoba menampilkan dokumen Word di browser. Saya ingin menampilkan dokumen Word di Firefox, IE7 +, Chrome dll.

Bisakah ada yang membantu? Saya selalu mendapatkan dialog "Buka / Simpan" saat menampilkan dokumen Word di browser. Saya ingin mengimplementasikan fungsi ini menggunakan JavaScript.


75
2018-01-15 06:18


asal


Jawaban:


Tidak ada browser yang saat ini memiliki kode yang diperlukan untuk merender Dokumen Word, dan sejauh yang saya tahu, tidak ada pustaka sisi klien yang saat ini ada untuk menampilkannya.

Namun, jika Anda hanya perlu menampilkan Dokumen Word, tetapi tidak perlu mengeditnya, Anda dapat menggunakan Google Documents 'Viewer melalui <iframe> untuk menampilkan yang dihosting dari jarak jauh .doc/.docx.

<iframe src="http://docs.google.com/gview?url=http://remote.url.tld/path/to/document.doc&embedded=true"></iframe>

Solusi diadaptasi dari "Cara menampilkan dokumen kata menggunakan fancybox".

Contoh:

JSFiddle

Namun, jika Anda lebih suka memiliki dukungan asli, di sebagian besar, jika tidak semua browser, saya akan merekomendasikan .doc/.docx sebagai file PDF Mereka juga bisa digunakan secara independen PDF.js oleh Mozilla.

Edit:

Terima kasih banyak fatbotdesigns untuk memposting penampil Microsoft Office 365 di komentar.

<iframe src='https://view.officeapps.live.com/op/embed.aspx?src=http://remote.url.tld/path/to/document.doc' width='1366px' height='623px' frameborder='0'>This is an embedded <a target='_blank' href='http://office.com'>Microsoft Office</a> document, powered by <a target='_blank' href='http://office.com/webapps'>Office Online</a>.</iframe>

Satu peringatan penting yang perlu diingat, seperti yang ditunjukkan oleh lightswitch05, apakah ini akan mengunggah dokumen Anda ke server pihak ketiga. Jika ini tidak dapat diterima, maka metode tampilan ini bukanlah tindakan yang tepat.

Contoh Langsung:

Google Docs Viewer

Microsoft Office Viewer


130
2018-01-15 06:56



Jawaban oleh Brandon dan fatbotdesigns keduanya benar, tetapi setelah menerapkan pratinjau dokumen Google, kami menemukan beberapa file .docx yang tidak dapat ditangani oleh Google. Beralih ke pratinjau MS Office Online dan berfungsi seperti pesona.

Rekomendasi saya adalah menggunakan URL Pratinjau Office MS melalui Google.

https://view.officeapps.live.com/op/embed.aspx?src=http://remote.url.tld/path/to/document.doc' 

18
2018-03-17 12:25



Sepertinya ada beberapa pustaka js yang dapat menangani .docx (bukan .doc) ke html konversi sisi-klien (tanpa urutan tertentu):

Catatan: Jika Anda mencari cara terbaik untuk mengonversi file doc / docx di sisi klien, mungkin jawabannya jangan lakukan itu. Jika Anda benar-benar perlu melakukannya, lakukan di sisi server, yaitu dengan libreoffice dalam mode tanpa kepala, apache-poi, atau perpustakaan lain apa pun yang terbaik untuk Anda.


4
2017-09-20 07:31



ViewerJS sangat membantu untuk melihat / menanamkan format openoffice seperti odt, odp, ods dan juga pdf.

Untuk menanamkan dokumen openoffice / pdf

<iframe src = "/ViewerJS/#../demo/ohm2013.odp" width='700' height='550' allowfullscreen webkitallowfullscreen></iframe>

/ViewerJS/adalah jalur dari ViewerJS

#../demo/ohm2013 adalah jalur file Anda ingin disematkan


1
2017-09-21 09:54



Saya pikir saya punya ide. Ini telah dilakukan kacang saya juga dan saya masih kesulitan menampilkannya di Chrome.

Simpan dokumen (name.docx) dalam kata sebagai halaman web file tunggal (nama.mht) Dalam penggunaan html Anda

<iframe src= "name.mht" width="100%" height="800"> </iframe>

Ubah ketinggian dan lebar sesuai keinginan Anda.


0
2017-11-13 10:21



Jika Anda ingin melakukan pra-pemrosesan file DOCX Anda, daripada menunggu hingga waktu proses, Anda dapat mengonversinya menjadi HTML terlebih dahulu dengan menggunakan API konversi file seperti Zamzar. Anda dapat menggunakan API untuk mengubah programatik dari DOCX ke HMTL, menyimpan hasilnya ke server Anda dan kemudian melayani HTML tersebut hingga ke pengguna akhir Anda.

Konversi cukup mudah:

curl https://api.zamzar.com/v1/jobs \
-u API_KEY: \
-X POST \
-F "source_file=@my.docx" \
-F "target_format=html5"

Ini akan menghapus semua dependensi runtime pada layanan Google & Microsoft (misalnya jika mereka turun, atau Anda dibatasi oleh mereka).

Ini juga memiliki manfaat yang dapat Anda berikan tipe file lainnya jika Anda ingin (PPTX, XLS, DOC dll)


0
2017-11-10 11:19