Javascript-də sənəd redaktoru (doc, docx) varmı?

Hər kəs mənə javascript (müştəri sonu) Document Redaktorunda hər hansı bir kitabxana təklif edə bilər, burada istifadəçi doc, docx, odf və s. kimi sənədlərə baxa və redaktə edə bilər.

1 Cavab


1

Ən yaxşı seçiminiz çeviriciləri axtarmaq və sonra çevrilmiş məzmunu redaktə etməkdir.

Mən artıq bir neçə həftədir işlək həll axtarıram və indiyə qədər tapdığım ən yaxşısı docx2html-dir.

İnkişaf platformanızdan asılı olaraq, siz həmçinin Google-un "ONLYOFFICE Document Server Community Edition"-dan da istifadə edə bilərsiniz. Onların Word, Excel və Powerpoint üçün səhifə redaktorları var, lakin onlar asp. Bu açıq platformadır mənbə kodu və Github-da mövcuddur. Baxmayaraq ki, baxmağa dəyər.


jquery/javascript istifadə edərək doc/docx-i html-ə çevirmək mümkündürmü?

Mən doc/docx-i html-ə çevirməliyəm. Amazon s3-də saxlanan fayllarım var. Mən ona brauzerdə baxmaq və redaktə etməliyəm. Hazırda mən Apache POI-dən istifadə edirəm...


docx javascript şablonundan docx sənədlərinin yaradılması

Mən javascript-də docx şablonundan docx sənədləri yarada bilən və teqləri öz dəyərləri ilə əvəz edə bilən və şəkilləri digər şəkillərlə əvəz edə bilən kitabxana axtarıram, kitabxananın adını tapdım...


POI-də faylın doc və ya docx olduğunu necə mühakimə etmək olar

Başlıq bir az qarışıq ola bilər. Ən sadə üsul genişləndirmə adına əsaslanmalıdır: // if (filePath.endsWith(doc)) InputStream-i təmsil edir ( WordExtractor ex = new...


doc və ya docx: python3-də "istəklərdən" növü müəyyən etmək üçün təhlükəsiz yol varmı?

1) Doc və docx fayllarını sorğulardan necə fərqləndirə bilərəm? a) məsələn, əgər məndə url="https://www.iadb.org/Document.cfm?id=36943997" r = requests.get(url,timeout=15) varsa...


doc və docx fayllarını .Net və C#-a idxal edin

Mən yazıram mətn redaktoru və mən .doc və .docx fayllarını idxal etmək imkanı əlavə etmək istəyirəm. Bilirəm ki, OLE Avtomatlaşdırmasından istifadə edə bilərəm, lakin yeni OLE kitabxanasından istifadə etsəm, o...


Veb formalarında sənədlərin redaktə edilməsi (DOC, DOCX, RTF, TXT).

Mən asp.net 3.5 istifadə edərək veb proqram hazırlayıram. Bu proqramda .doc, .docx, .rtf, .pdf, .txt və s... kimi bir çox sənədlər var və bəzən usar bu sənədləri redaktə etməlidir. İÇİNDE...


DOC/DOCX-i semantik HTML-yə çevirin

Mən doc/docx sənədlərini semantik HTML-yə çevirmək istərdim. Bəzi istəklər/tələblər: Semantik HTML belə ki, sənəddəki başlıqlar , və s., cədvəllər -...


Doc-u docx və docx-i pdf-ə çevirmək üçün Golang paketləri?

Mən Golanqda istifadəçinin doc və ya docx faylını yükləyə biləcəyi veb proqram yazıram. Faylın bəzi məzmunları əvvəlcədən təyin edilmiş formata uyğun olaraq dəyişdiriləcək. Daha sonra istifadəçi...


Rich Word sənədini RichText redaktoru telerik redaktoruna yükləyin

Mənim bəzi Word sənədini yüklədiyim və DB-də saxladığım bəzi formalarım var. Daha sonra bu sənədlərin üzərində müəyyən işarələmə etməliyəm. Hazırda heç nə tapmamışam...


doc faylının docx formatına çevrilməsi

docx faylı Zip formatında olduğu üçün onu html-ə çevirdim. amma doc fayllarını da çevirməliyəm. Koddan istifadə edərək DOC faylını docx faylına dəyişməyin bir yolu varmı (javaya üstünlük verin). Zəhmət olmasa...

Kod redaktoru hər bir proqramçı üçün lazımlı bir vasitədir. Və hər kəs özü üçün seçir: bəzi dəyərli funksionallıq, bəzi dəyər mobillik, digərləri üçün əsas şey dizayn və rahatlıqdır. Bəzi insanlar hətta Notepad-da kod yazmağı xoşlayır, lakin bu, çəkiclə ev tikməyə çalışmaq kimidir.

JavaScript güclü və şıltaq bir dildir. Bir tərəfdən çoxlu çərçivələr və kitabxanalar var, digər tərəfdən isə "dinamika" ilə əlaqəli ən sadə sintaksis və təhlükələr deyil. Buna görə də onunla işləmək üçün redaktor seçmək vacibdir. Düzgün seçim sizə təmiz kod, yüksək inkişaf sürəti, minimum səhvlər və işdən həzz verəcəkdir. Mövcud olan yüzlərlə redaktordan birini seçmək çox vaxt apara bilər, ona görə də işin bir hissəsini sizin üçün etdik. Budur ən yaxşı 5.

WebStorm

JetBrains-dən WebStorm hər iki formada gözəldir: IDE olaraq versiyaya nəzarət sistemləri ilə işləməyi dəstəkləyir, kodu uzaqdan yerləşdirməyə imkan verir və redaktor kimi - sintaksis işıqlandırma, avtomatik tamamlama, naviqasiya kimi standart imkanlar.

Üstünlüklər:

  • LiveEdit - koda edilmiş dəyişiklikləri yadda saxlamadan görmək;
  • React, Angular, Meteor kimi çərçivələrlə qarşılıqlı əlaqə;
  • səhvləri aşkar etmək üçün yüzdən çox daxili test;
  • vahid testləri üçün Mocha, Protractor, Jest, Karma ilə inteqrasiya;
  • server və müştəri tərəflərində kodun düzəldilməsi üçün tam miqyaslı sazlayıcı;
  • bir neçə fayl ilə eyni vaxtda işləmək üçün naviqasiya;
  • kodun tamamlanması, sintaksisin vurğulanması.

Qüsurlar:

  • əməliyyatın ilk ili üçün 129 dollara başa gəlir;
  • Başlayan kodlayıcılar üçün funksionallıq lazımsızdır.
Visual Studio kodu

Kodla işləməyə yönəlmiş Visual Studio IDE-nin çəngəlidir. Öyrənmək asandır, istifadəsi asandır və eyni zamanda funksionaldır.

Üstünlüklər:

  • həm sintaksis, həm də istifadə olunan dəyişənlərin, modulların, funksiyaların və s. kontekst üzrə tamamlanması;
  • kəsilmə nöqtələri, zəng yığını, interaktiv konsol ilə sazlayıcı;
  • fraqmentlər və şablonlar üçün dəstək;
  • Git inteqrasiyası;
  • rahat və sadə interfeys;
  • pulsuz redaktor.

Qüsurlar:

  • bir neçə plagin.
Möhtəşəm Mətn

Fərdiləşdirilə bilən interfeys və isti düymələrdən istifadə edərək əhəmiyyətsiz hərəkətləri yerinə yetirmək imkanı olan rahat və vaxtla sınaqdan keçirilmiş çarpaz platforma redaktoru.

Üstünlüklər:

  • isti düymələr;
  • mini xəritə şəklində kod naviqasiyası;
  • vizual mövzunu dəyişdirmək bacarığı;
  • snippet dəstəyi;
  • işıqlandırma, dəyişənlərin avtomatik tamamlanması və sintaksis;
  • göstəricilərin istifadəsi sayəsində çoxsaylı redaktə;
  • sistem dəstəyi qurmaq;
  • yazdığınız zaman sintaksis yoxlaması;
  • avtomatik saxla.

Qüsurlar:

  • Tam versiyası 70 dollara başa gəlir;
  • keçidlərin yerləşdirilməsi üçün kod analizatorunun olmaması.
Atom redaktoru

2015-ci ildə ortaya çıxdı, Git-dən bir kod redaktoru, Sublime Text dizaynını kopyalayan və Chromium-a bükülmüş.

Üstünlüklər:

  • 50-dən çox açıq modul;
  • rahat və xoş interfeys;
  • pulsuz;
  • kodun tamamlanması və vurğulanması;
  • paket meneceri, onlardan artıq 3,5 mindən çoxu var;
  • redaktor, plug-in paketləri və interfeys mövzuları üçün çevik parametrlər;
  • isti düymələrdən istifadə edərək redaktə və naviqasiya.

Qüsurlar:

  • aşağı məhsuldarlıq;
  • boş dəst "qutudan çıxdı".
Mötərizələr

2014-cü ildə Brackets proqramçıları səhvləri və çatışmazlıqları ilə qorxutdu, lakin indi o, yeni yüksək keyfiyyətli funksionallıqla tədricən etibarı bərpa edir.

Üstünlüklər:

  • zəngin avadanlıq "qutudan kənarda";
  • Live Preview rejimi - real vaxt rejimində brauzerdə redaktələrin önizlənməsi;
  • paket meneceri;
  • kodda istifadə olunan şəkillərin və rənglərin göstərilməsi;
  • avtomatik tamamlama və sintaksisin vurğulanması;
  • kod analizatoru;
  • pulsuz.

Qüsurlar:

  • internetə və HTML+CSS+JavaScript-ə ciddi diqqət;
  • yavaş inkişaf;
  • önizləmə funksiyaları səbəbindən yavaş performans.

"Açıq/saxla" dialoq qutusu əvəzinə brauzerdə PDF faylını göstərmək üçün kodu uğurla hazırladım. İndi nümayiş etdirməyə çalışıram Word sənədi brauzerdə. Mən Firefox, IE7+, Chrome və s.-də Word sənədini göstərmək istəyirəm.

kimsə kömək edə bilər? Brauzerdə doc sözünü göstərəndə həmişə “aç/saxla” dialoqu alıram. Mən JavaScript istifadə edərək bu funksiyanı həyata keçirmək istəyirəm.

6 cavab

lakin, əgər siz bütün brauzerlərdə olmasa da, əksər brauzerlərdə yerli dəstəyə sahib olmağı üstün tutursunuzsa, mən .doc/.docx faylını PDF olaraq yenidən saxlamağı tövsiyə edərdim; onlar Mozilla-nın PDF.js-dən istifadə etməklə müstəqil şəkildə göstərilə bilər.

Brandon və fatbotdesigns-ın cavabları düzgündür, lakin Google Sənədlərin Önizləməsini tətbiq etməklə biz Google tərəfindən emal edilə bilməyən bir neçə .docx faylı tapdıq. MS Office onlayn önizləməsinə keçildi və o, cazibədar kimi işləyir.

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

Görünür, html-ni müştəri tərəfində (müəyyən ardıcıllıqla) çevirmək üçün .docx (no.doc) ilə işləyə bilən bəzi js kitabxanaları var:

    https://github.com/lalalic/docx2html - docx to html, əksər elementlər dəstəklənir

    https://github.com/mwilliamson/mammoth.js - başlıqları, siyahıları, cədvəlləri, alt qeydləri, alt qeydləri, şəkilləri və qutu mətnini dəstəkləyir!--1-->

    https://www.npmjs.com/package/docx2html - HTML sənədlərini brauzerdə DOCX-ə çevirin

    https://github.com/artburkart/docx2html - görünür brauzerdə işləyir

Qeyd: Əgər axtarırsınızsa Ən yaxşı yol doc/docx faylını müştəri tərəfinə çevirin, sonra yəqin ki, cavab Ehtiyac yoxdur. Əgər həqiqətən etmək lazımdırsa, bunu edin. server tərəfi, yəni başsız rejimdə libreoffice ilə, apache-poi və ya hər hansı digər kitabxana sizin üçün ən yaxşısıdır.

ViewerJS odt, odp, ods və pdf kimi openoffice formatına baxmaq/yerləşdirmək üçün faydalıdır.

openoffice/pdf sənədini yerləşdirmək üçün

/ViewerJS/ ViewerJS yoludur

#../demo/ohm2013 - faylınıza yol əlavə edin

Bu, Google və Microsoft xidmətlərindəki istənilən iş vaxtından asılılıqları aradan qaldıracaq (məsələn, əgər varsa və ya siz onlarla məhdudlaşmısınızsa).

İstədiyiniz təqdirdə digər fayl növlərinə (PPTX, XLS, DOC və s.)

Şübhəsiz ki, siz dəfələrlə vizual redaktorlarla qarşılaşmısınız ki, bu da səhifələrin və ya bəzi mesajların görünüşünü, məsələn, bir forumda olduqca rahat şəkildə formalaşdırmağa imkan verir. Və BB kodları ilə deyil, dərhal müəyyən bir nəticə əldə edin. İnternetdə bu redaktorların kifayət qədər çoxu var. Ən populyarlarından biri TinyMCE-dir, lakin mən öz skriptlərimin tərəfdarıyam və inanıram ki, hər bir tapşırıq üçün universal deyil, öz həlli olmalıdır. Buna görə də, bu məqalədə sizə JavaScript-də vizual redaktoru necə yaratmağı izah edəcəyəm.

Budur kifayət qədər yaxşı şərh edilmiş kod:





// Redaktə düymələrini göstərin
sənəd.write("");
sənəd.write("");
sənəd.yaz("
");
sənəd.write(""); // iframe əlavə edin
/* Brauzerdən asılı olaraq yaradılmış çərçivəyə giriş əldə edirik */
var isGecko = navigator.userAgent.toLowerCase().indexOf("gecko") != -1;
var iframe = (isGecko) ? document.getElementById("frameId") : çərçivələr["frameId"];
var iWin = (isGecko) ? iframe.contentWindow: iframe.window;
var iDoc = (isGecko) ? iframe.contentDocument: iframe.document;
/* Boş HTML səhifəsi üçün kod yaradın */
iHTML = "";
iDoc.open(); // Çərçivəni açın
iDoc.write(iHTML); // Yazılı kodu çərçivəyə əlavə edin
iDoc.close(); // Çərçivəni bağlayın
iDoc.designMode = "açıq"; // Çərçivə redaktə rejimini aktivləşdirin
/* Ayarlanacaq funksiyalar görünüş seçilmiş mətn
Mümkün əmrlərin tam dəsti: http://javascript.itsoft.ru/execcom/execCommands.html */
setBold() funksiyası (
iWin.focus();
iWin.document.execCommand("qalın", null, "");
}
setItal() funksiyası (
iWin.focus();
iWin.document.execCommand("italik", null, "");
}
saxlama funksiyası () (
/* HTML kodunu gizli sahədə saxlamaq ki, sonradan əldə edilən HTML kodunu skript işləyicisinə ötürə biləsiniz */
document.getElementById("məzmun").value = iDoc.body.innerHTML;
doğru qayıt;
}



İlk baxışdan kod çox mürəkkəb görünür. Və belədir, amma onun əsas elementlərinə əsaslanaraq baxsanız, mürəkkəb bir şey yoxdur. Redaktorda yaradılan HTML kodunun saxlandığı müntəzəm forma və gizli sahə var. Redaktorun özü adi çərçivədir, yəni mətn yaza biləcəyimiz adi HTML səhifəsidir (designMode = "on"). Və parametrdə göstərilən əmri yerinə yetirən execCommand() metodundan istifadə etməklə müxtəlif formatlaşdırma yaradılır. Düşünürəm ki, yeni düymələr yaratmaq və onlara oxşar işləyicilər əlavə etmək sizin üçün çətin olmayacaq.

Bu skriptdə artıq bir şey yoxdur, yalnız ən vacib və əsasdır və onu özünüz yaratmaq üçün əsas kimi istifadə edə bilərsiniz. vizual redaktor JavaScript-də, burada artıq heç nə olmayacaq, ancaq sizə lazım olanlar.

JavaScript kodunu adi Notepad-da yaza bilərsiniz - nəticəni .js genişlənməsi ilə yadda saxlamaq kifayətdir və o, nəinki sayta qoşulacaq, hətta işləyəcək. Bununla belə, belə bir məhdud redaktordan istifadə inkişafı çox yavaşlayacaq. Buna görə xüsusi bir şey götürmək daha yaxşıdır. JavaScript kodu ilə işləmək üçün redaktor seçmək üçün bir neçə əsas meyar var.

Əvvəlcə sintaksisi vurğulamalıyıq: adlar, operatorlar və Xüsusi simvollar kodun tez oxunması üçün fərqli şəkildə göstərilməlidir.

Notepad++ proqramında sintaksisin vurğulanması

İkincisi, avtomatik tamamlamaya ehtiyacınız var: funksiya və ya dəyişənin adını daxil etdiyiniz zaman redaktor daxil edəcəyiniz əmrlər üçün bir neçə variant təklif etməlidir. Məsləhətdir ki, o, həmçinin seçilmiş komponent haqqında göstərişlər göstərsin - məsələn, tələb olunan arqumentlər, dəyişən növü, Qısa Təsvir və s.

Notepad++ proqramında avtomatik tamamlama

Üçüncüsü, fərdi blokları gizlətmək qabiliyyətinə ehtiyacımız var. Böyük layihələr üzərində işləyərkən bu faydalıdır, çünki sizə lazım olanı tapmaq üçün nəhəng kod parçaları arasında vərəqləmək lazım deyil.

Visual Studio Kodunda blokların gizlədilməsi

Səhvlərin vurğulanması arzu edilir - onda siz onları dərhal fərq edə və düzəldə bilərsiniz:

Visual Studio Kodunda səhvlərin göstərilməsi

Yaxşı bonuslar bir pəncərədə bir neçə faylla işləmək imkanı, layihə meneceri, mövzuların seçilməsi, plaginlərin quraşdırılması və s.

Bu tələblərə cavab verən və JavaScript ilə işləmək üçün uyğun olan çoxlu sayda redaktorlar var. Nəyə kod yazmaq hər kəsin şəxsi işidir, lakin bir çox insanın düzgün proqramı seçməkdə problemi var, ona görə də biz 6 yaxşı alətin siyahısını tərtib etdik.

Notepad++

Notepad++ sadə və rahat açıq mənbə redaktorudur. JS, avtomatik formatlaşdırma və avtomatik tamamlama da daxil olmaqla bir neçə dil üçün sintaksisi vurğulayır. Nişanlar şəklində naviqasiya var, fayl idarəedici və kod kartları.

Siz müxtəlif kodlaşdırmalarla işləyə, kompilyatorları birləşdirə, plaginlərdən və digər faydalı funksiyalardan istifadə edə bilərsiniz. Məsələn, QuickText əlavə etmək daxili avtomatik tamamlamanı yaxşılaşdıracaq.

Notepad++ müntəzəm olaraq yenilənir, ona görə də səhvlər tez bir zamanda düzəldilir və yeni funksiyalar əlavə olunur. Təəssüf ki, yalnız Windows-da işləyir.

Vim

Vim redaktoru çoxdan klassikdir. Bir çox insan bunu başa düşməyin çətin olduğunu söyləyir, amma buna kifayət qədər vaxt ayırsanız, artıq başqa heç nə istifadə etmək istəməyəcəksiniz.

Bütün seçdiyimiz meyarlara cavab verməklə yanaşı, Vim də tam fərdiləşdirilə bilər, beləliklə:

  • plaginləri quraşdırmaq;
  • mövzuları dəyişdirmək;
  • isti düymələri təyin edin və s.

Vim tamamilə pulsuzdur və Windows, MacOS və Linux-dan MS DOS və OS/2-ə qədər bütün platformalarda işləyir.

Microsoft Visual Studio

Microsoft Visual Studio, JS ilə işləmək üçün lazım olan hər şeyə malik olan IDE-dir. Adi sintaksisin vurğulanması və avtomatik tamamlama ilə yanaşı, siz həmçinin sazlayıcıdan istifadə edə və Vahid testləri yarada bilərsiniz.

Bununla belə, proqram kifayət qədər ağırdır və sistemi çox yükləyir, buna görə də zəif kompüterlərdə işləmək üçün çox uyğun deyil.

Aylıq abunə haqqı ayda 45 dollardan 250 dollara qədər ola bilər, lakin onlar da var pulsuz versiya başlanğıc tərtibatçılar və açıq mənbə proqramları yaradanlar üçün. IDE Windows və MacOS üçün mövcuddur və Wine istifadə edərək Linux-da quraşdırıla bilər.

Visual Studio kodu

Visual Studio Code yüngül (~170 MB-a qarşı 30 GB), çarpaz platforma və Visual Studio-nun pulsuz versiyasıdır. Bu redaktor əvvəlcədən quraşdırılmış JavaScript, TypeScript və Node.JS dəstəyi ilə gəlir.

Digər dillər üçün genişləndirmələr birbaşa Visual Studio Kodundan endirilə bilər.

GitHub versiyaya nəzarət sistemi ilə işləmək üçün quraşdırılmış sazlayıcı və Git əmrləri proqramların sınaqdan keçirilməsini və nəşrini sürətləndirməyə imkan verir.

Möhtəşəm Mətn

Sublime Text sadə platformalar arası redaktordur. Onun interfeysi fərdiləşdirilə bilər və siz isti düymələrdən istifadə edərək bəzi hərəkətləri edə bilərsiniz.

O, həmçinin fraqmentlər, avtomatik tamamlama, sintaksis işıqlandırma və naviqasiya dəstəyinə malikdir. Sərin bonus - avtomatik saxlama. Bununla belə, yeni başlayanlar üçün daha çox lazımdır - axı, peşəkar proqramçılar iş illərində hər əmri daxil etdikdən sonra qənaət etmək vərdişini inkişaf etdirirlər.

Sublime Text-in əsas çatışmazlığı tam versiyanın qiymətinin 80 dollar olmasıdır (lisenziya bir istifadəçi üçün verilir, o, redaktordan istənilən kompüterdə istifadə edə bilər). Əks halda yaxşı uyğun gəlir
JS tərtibatçıları.




Üst