Ako zobraziť dokument programu Word (.doct., Docx) v prehliadači pomocou JavaScriptu.

Určite ste sa s tým už mnohokrát stretli vizuálni editori, čo vám umožní celkom pohodlne vytvárať vzhľad stránok alebo niektorých správ, napríklad na fóre. A nie s BB kódy, ale okamžite získate konkrétny výsledok. Na internete je veľa týchto redaktorov. Jednou z najobľúbenejších je TinyMCE som však zástancom vlastných skriptov a verím tomu na každú úlohu musí existovať riešenie nie univerzálne. Preto vám v tomto článku poviem, ako vytvoriť vizuálny editor v JavaScripte.

Hneď na úvod dávam pomerne dobre komentovaný kód:







Na prvý pohľad sa zdá, že kód je veľmi zložitý. A je to tak, ale ak to vezmeme z hľadiska základných prvkov, potom nie je nič zložité. Existuje pravidelný tvar a skryté pole kde je uložený výsledný editor HTML kód... Samotný editor je obyčajný rám, to znamená obyčajný HTML stránka, do ktorého môžeme písať text ( designMode = "zapnuté"). A pomocou metódy sa vytvára rôzne formátovanie execCommand () ktorý vykoná príkaz uvedený v parametri. A myslím si, že pre vás nebude ťažké vytvárať nové tlačidlá a pripevňovať k nim podobné ovládače.

V tomto skripte nie je nič nadbytočné, iba to najdôležitejšie a najzákladnejšie, a dá sa to brať ako základ vytvorenie vlastného vizuálneho editora v JavaScripte, v ktorom nebude nič nadbytočné, ale iba to, čo potrebujete.

Úspešne som vytvoril kód na zobrazenie PDF v prehliadači namiesto dialógového okna otvorenia / uloženia. Teraz som uviazol pri pokuse o zobrazenie Dokument Word v prehliadači. Chcem zobraziť dokument programu Word vo Firefoxe, IE7 +, Chrome atď.

môže niekto pomôcť? Pri zobrazení slova doc v prehliadači vždy dostanem dialógové okno otvoriť / uložiť. Chcem implementovať túto funkciu pomocou JavaScriptu.

6 odpovedí

Ak však uprednostňujete vstavanú podporu, vo väčšine, ak nie vo všetkých prehliadačoch, by som odporučil uložiť .doc / .docx ako PDF, dajú sa tiež vykresliť nezávisle pomocou formátu Mozilla PDF.js.

Odpovede Brandona a fatbotdesignu sú správne, ale implementačné Náhľad google docs, našli sme niekoľko súborov .docx, ktoré nebolo možné spracovať systémom google. Prepnuté na online ukážku MS Office a funguje ako kúzlo.

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

Zdá sa, že existuje niekoľko knižníc js, ktoré dokážu spracovať .docx (bez .doc) na konverziu html na strane klienta (v konkrétnom poradí):

    https://github.com/lalalic/docx2html - docx v html, väčšina prvkov je podporovaná

    https://github.com/mwilliamson/mammoth.js - podporuje hlavičky, zoznamy, tabuľky, poznámky pod čiarou, poznámky pod čiarou, obrázky a text poľa! - 1 ->

    https://www.npmjs.com/package/docx2html - prevod dokumentov HTML do formátu DOCX v prehliadači

    https://github.com/artburkart/docx2html - zrejme funguje v prehliadači

Poznámka: Ak hľadáte lepší spôsob prevodu súboru doc ​​/ docx na strane klienta, odpoveď je pravdepodobne netreba... Ak to skutočne potrebujete, urobte to. na strane servera, tj. s libreoffice v bezhlavom režime, apache-poi alebo akoukoľvek knižnicou, ktorá je pre vás najlepšia.

ViewerJS je užitočný na prezeranie / vkladanie formátu openoffice ako odt, odp, ods a pdf.

na vloženie dokumentu openoffice / pdf

/ ViewerJS / je cesta ViewerJS

# .. / demo / ohm2013 - pridajte cestu k svojmu súboru

Odstránia sa tým všetky runtime závislosti od služieb Google a Microsoft (napríklad ak existovali alebo ste na ne boli obmedzení).

Má tiež výhodu, že sa dá rozšíriť na iné typy súborov, ak chcete (PPTX, XLS, DOC atď.)

Kód JavaScript môžete napísať do bežného „Poznámkového bloku“ - výsledok jednoducho uložte s príponou .js a nielenže sa pripojí k webu, ale dokonca bude fungovať. Použitie tak obmedzeného editora by však vývoj veľmi spomalilo. Preto je lepšie vziať si niečo špecializované. Existuje niekoľko hlavných kritérií, podľa ktorých si vyberiete editor pre prácu s kódom JavaScript.

Najprv musíme zvýrazniť syntax: mená, operátory a Špeciálne symboly by sa mali zobrazovať inak, aby bolo možné kód rýchlo prečítať.

Zvýraznenie syntaxe v programe Poznámkový blok ++

Za druhé, potrebujete automatické dokončovanie: keď zadáte názov funkcie alebo premennej, editor by mal ponúknuť niekoľko možností pre príkazy, ktoré pravdepodobne chcete zadať. Je žiaduce, aby tiež ukazovalo na vybraný komponent - napríklad požadované argumenty, typ premennej, Stručný opis atď.

Automatické dopĺňanie v programe Poznámkový blok ++

Po tretie, potrebujete schopnosť skryť jednotlivé bloky. Pri práci na veľkých projektoch je to užitočné, pretože nemusíte posúvať obrovské kusy kódu, aby ste našli ten, ktorý potrebujete.

Skrytie blokov v kóde Visual Studio

Je žiaduce, aby boli chyby zvýraznené - potom si ich môžete okamžite všimnúť a opraviť:

Zobrazovanie chýb v kóde Visual Studio

Dobrými bonusmi bude možnosť pracovať s niekoľkými súbormi v jednom okne, projektový manažér, výber tém, inštalácia doplnkov a podobne.

Existuje veľké množstvo editorov, ktoré tieto požiadavky spĺňajú a sú vhodné na prácu s jazykom JavaScript. Na čo si napísať kód je súkromná vec každého, ale mnohí majú problémy s výberom správneho programu, a preto sme zostavili zoznam 6 dobrých nástrojov.

Poznámkový blok ++

Notepad ++ je jednoduchý a ľahko použiteľný editor s otvoreným zdrojovým kódom zdrojový kód... Má zvýraznenie syntaxe pre niekoľko jazykov, vrátane JS, automatického formátovania a automatického dokončovania. K dispozícii je navigácia vo forme záložiek, Správca súborov a kódové mapy.

Môžete pracovať s rôznymi kódovaniami, pripájať kompilátory, používať doplnky a ďalšie užitočné funkcie. Napríklad pridanie QuickTextu zlepší vstavané automatické dokončovanie.

Poznámkový blok ++ je pravidelne aktualizovaný, takže rýchlo opravuje chyby a pridáva nové funkcie. Bohužiaľ to funguje iba v systéme Windows.

Vim

Editor Vim je už dlho klasikou. Mnoho ľudí hovorí, že je ťažké to pochopiť, ale ak tomu budete venovať dostatok času, nebudete chcieť použiť niečo iné.

Okrem toho, že Vim spĺňa všetky kritériá, ktoré sme vybrali, je tiež plne prispôsobiteľný, takže môžete:

  • nainštalovať doplnky;
  • zmeniť témy;
  • priradiť klávesové skratky a podobne.

Vim je úplne zadarmo a beží na všetkých platformách od Windows, MacOS a Linux po MS DOS a OS / 2.

Microsoft Visual Studio

Microsoft Visual Studio je IDE, ktoré má všetko, čo potrebujete na prácu s JS. Okrem zvyčajného zvýrazňovania syntaxe a automatického dopĺňania môžete použiť aj debugger a vytvárať Unit testy.

Program však veľa váži a zaťažuje systém, takže nie je príliš vhodný na prácu na slabých počítačoch.

Mesačné predplatné môže stáť od 45 do 250 dolárov mesačne, ale existujú aj také bezplatná verzia pre začínajúcich vývojárov a tých, ktorí vytvárajú softvér s otvoreným zdrojovým kódom. IDE je k dispozícii pre Windows a MacOS a na Linux je možné ho nainštalovať pomocou programu Wine.

Kód Visual Studio

Visual Studio Code je odľahčená (~ 170 MB oproti 30 GB), multiplatformová a bezplatná verzia Visual Studio. Tento editor je predinštalovaný s podporou jazykov JavaScript, TypeScript a Node.JS.

Rozšírenia o ďalšie jazyky je možné stiahnuť priamo z kódu Visual Studio.

Vstavaný debugger a príkazy Git pre prácu so systémom správy verzií GitHub vám umožňujú urýchliť testovanie a publikovanie aplikácií.

Vznešený text

Sublime Text je jednoduchý multiplatformový editor. Jeho rozhranie je prispôsobiteľné a niektoré akcie je možné vykonať pomocou klávesových skratiek.

Má tiež podporu úryvkov, automatické dokončovanie, zvýraznenie syntaxe a navigáciu. Skvelým bonusom je automatické ukladanie. Je to však viac potrebné pre začiatočníkov - koniec koncov profesionálni programátori v priebehu rokov si vypestujte zvyk vytrvať po každom príkaze.

Hlavnou nevýhodou Sublime Text je, že plná verzia stojí 80 dolárov (licencia je vydaná pre jedného používateľa, ktorý môže editor použiť na akomkoľvek počítači). Inak to dobre sedí
Vývojári JS.

Vie mi niekto navrhnúť nejakú knižnicu v javascriptovom editore dokumentov (na konci klienta), kde by si užívateľ mohol prezerať a upravovať dokumenty ako doc, docx, odf atď.

1 odpoveď


1

Najlepšie je vyhľadať konvertorov a potom upravený obsah upraviť.

hľadal som pracovné riešenie už niekoľko týždňov a to najlepšie, čo som doteraz našiel, je docx2html.

V závislosti od vašej vývojovej platformy môžete použiť aj Google „ONLYOFFICE Document Server Community Edition“. Majú editory stránok pre Word, Excel a Powerpoint - ale sú asp. Je to open source platforma a je k dispozícii na Github. Možno to však stojí za pozretie.


Je možné previesť doc / docx na html pomocou jquery / javascript?

Potrebujem previesť doc / docx na html. Mám súbory uložené v Amazon s3. Potrebujem to zobraziť a upraviť v prehliadači. Práve teraz používam Apache POI na ...


Generovanie dokumentov docx zo šablóny javascript docx

Hľadám knižnicu v JavaScripte, ktorá môže generovať dokumenty docx zo šablóny docx a môže nahradiť značky svojimi hodnotami a nahradiť obrázky inými obrázkami. Našiel som názov knižnice ...


ako posúdiť, či je dokument doc alebo docx v BZ

Názov môže byť trochu mätúci. Najjednoduchšia metóda by mala byť založená na názve rozšírenia, rovnako ako: // predstavuje InputStream if (filePath.endsWith (doc)) (WordExtractor ex = new ...


doc alebo docx: existuje bezpečný spôsob identifikácie typu z „požiadaviek“ v python3?

1) Ako môžem rozlíšiť súbory doc a docx od požiadaviek? a) napríklad, ak mám url = "https://www.iadb.org/Document.cfm?id=36943997" r = requests.get (url, timeout = 15) ...


Import súborov doc a docx do .NET a C #

ja píšem textový editor a chcem pridať možnosť importovať súbory .doc a.docx. Viem, že môžem používať automatizáciu OLE, ale ak použijem najnovšiu knižnicu OLE, nebude ...


Úprava dokumentov (DOC, DOCX, RTF, TXT) vo webových formulároch

Vyvíjam webovú aplikáciu pomocou asp.net 3.5. Táto aplikácia má veľa dokumentov ako .doc, .docx, .rtf, .pdf, .txt, atď ... a niekedy usar potrebuje tieto dokumenty upraviť. V ...


Previesť DOC / DOCX na sémantický HTML

Chcel by som previesť dokumenty doc / docx do sémantického HTML. Niektoré priania / požiadavky: Sémantický HTML taký, že hlavičky v dokumente sú

,

atď., tabuľky -...


Balíky Golang na konverziu doc ​​na docx a docx na pdf?

Píšem webovú aplikáciu v Golangu, kde používateľ môže nahrať súbor doc alebo docx. Časť obsahu súboru sa zmení podľa vopred definovaného formátu. Neskorší užívateľ ...


Načítajte dokument Rich Word do editora teleriku editora RichText

Mám nejaký formulár, kde načítam nejaký dokument programu Word a uložím ho do DB. Neskôr budem musieť tieto dokumenty označiť. V súčasnej dobe som nenašiel nič pre ...


Previesť súbor doc do formátu docx

Súbor docx som skonvertoval na html tak, ako je vo formáte Zip. ale musím tiež previesť súbory doc. Existuje spôsob, ako zmeniť súbor doc v dokumente docx pomocou kódu (preferujem java) Prosím ...

Editor kódu je užitočný nástroj pre každého programátora. A každý si vyberie sám: niekto oceňuje funkčnosť, niekoho mobilitu, pre niekoho je hlavnou vecou dizajn a pohodlie. Niektorí ľudia dokonca radi píšu kód do programu Poznámkový blok, ale je to ako pokúšať sa postaviť dom pomocou kladiva.

JavaScript je silný a náladový jazyk. Na jednej strane existuje veľa rámcov a knižníc, na strane druhej nie je najjednoduchšia syntax a nebezpečenstvá spojené s „dynamikou“. Preto je dôležité vybrať si editora, ktorý s ním bude pracovať. Správna voľba vám poskytne čistý kód, vysokú rýchlosť vývoja, minimum chýb a radosť z práce. Výber jedného zo stoviek existujúcich editorov bude trvať veľa času, a preto sme časť práce urobili za vás. Tu je top 5.

WebStorm

JetBrains 'WebStorm je vynikajúci v oboch svojich prejavoch: ako IDE podporuje prácu so systémami správy verzií, umožňuje vám vzdialene nasadiť kód, ako editor - štandardné vymoženosti, ako je zvýraznenie syntaxe, automatické dokončovanie, navigácia.

Výhody:

  • LiveEdit - zobrazuje zmeny vykonané v kóde bez toho, aby ste ho museli uložiť;
  • interakcia s rámcami, ako sú React, Angular, Meteor;
  • viac ako sto vstavaných testov na zisťovanie chýb;
  • integrácia s Mocha, Protractor, Jest, Karma pre jednotkové testy;
  • plnohodnotný debugger na ladenie kódu na strane servera a klienta;
  • navigácia pre súčasnú prácu s niekoľkými súbormi;
  • dokončenie kódu, zvýraznenie syntaxe.

Nevýhody:

  • prvý rok prevádzky stojí 129 dolárov;
  • pre začínajúcich programátorov je funkcia nadbytočná.

Kód Visual Studio

Vidlica IDE Visual Studio zameraná na prácu s kódom. Je ľahké sa ho naučiť, ľahko sa používa a je zároveň funkčný.

Výhody:

  • kontextové automatické dopĺňanie, syntax aj použité premenné, moduly, funkcie atď .;
  • debugger s bodmi prerušenia, zásobník hovorov, interaktívna konzola;
  • podpora úryvkov a šablón;
  • integrácia s Gitom;
  • pohodlné a jednoduché rozhranie;
  • editor zadarmo.

Nevýhody:

  • niekoľko doplnkov.

Vznešený text

Pohodlný a časom testovaný multiplatformový editor s prispôsobiteľným rozhraním a schopnosťou vykonávať triviálne akcie pomocou klávesových skratiek.

Výhody:

  • Klávesové skratky;
  • navigácia v kóde vo forme mini mapy;
  • schopnosť zmeniť vizuálnu tému;
  • podpora úryvkov;
  • zvýraznenie, dokončenie premennej a syntaxe;
  • viacnásobné úpravy vďaka použitiu ukazovateľov;
  • podpora systémov stavania;
  • kontrola syntaxe hneď pri písaní;
  • automatické ukladanie.

Nevýhody:

  • plná verzia stojí 70 dolárov;
  • nedostatok analyzátora kódu na umiestňovanie odkazov.

Atómový editor

Predstavený v roku 2015, editor kódu od spoločnosti Git, ktorý kopíruje dizajn Sublime Text a je zabalený v prehliadači Chromium.

Výhody:

  • viac ako 50 otvorených modulov;
  • pohodlné a príjemné rozhranie;
  • zadarmo;
  • dokončenie a zvýraznenie kódu;
  • správca balíkov, ktorých je už viac ako 3,5 tisíc;
  • flexibilné nastavenia editor, balíčky doplnkov, témy rozhrania;
  • úpravy a navigácia pomocou klávesových skratiek.

Nevýhody:

  • nízka produktivita;
  • prázdny balík „po vybalení z krabice“.

Zátvorky

V roku 2014 Bracket odplašil programátorov chybami a chybami, ale teraz mu postupne vracia dôveru vďaka novej kvalitnej funkcii.

Výhody:

  • bohatý balík balíkov „po vybalení z krabice“;
  • Režim živého náhľadu - náhľad úprav v prehliadači v reálnom čase;
  • správca balíkov;
  • zobrazovanie obrázkov a farieb použitých v kóde;
  • automatické dopĺňanie a zvýrazňovanie syntaxe;
  • analyzátor kódu;
  • zadarmo.

Nevýhody:

  • prísne zameranie na web a HTML + CSS + JavaScript;
  • pomalý vývoj;
  • pomalý výkon vďaka funkciám ukážky.