Üldine dokument

Tarkvara on loodud selleks, et pakkuda kaasaskantavat, tõhusat ja laiendatavat dokumenditöötlusraamistikku, millele lisanduvad hoolikalt projekteeritud tööriistade ja vahendite komplektid. Tänu sellele on tarkvara võimeline toetama erinevate dokumentide töötlemist ja haldamist, samuti pakub see kasutajatele paindlikkust ja kohandatavust nende vajaduste rahuldamiseks. Ühte dokumendimalli saab töödelda mitmel platvormil, eksportida erinevatesse väljundformaatidesse ja arhiveerida. Impordi- ja ekspordimooduleid saab hõlpsasti lisada APIde kaudu või kasutades lihtsat ja avatud XML-põhist dokumendivormingut5. JavaScripti saab kasutada kohandatud funktsioonide rakendamiseks.

Redaktor töötab dokumendi kahe peamise aspektiga – kujunduse ja andmemudeliga. Kujundus on ehitatud üksteise sisseehitatud fragmentidest, mis on dokumendi loogilised allüksused. Lihtsas staatilises kasutusstsenaariumis võrdub fragment leheküljega. On fikseeritud mõõtmed ja sisu sisaldab tekstimärgiseid, jooni, kõveraid, pilte, vöötkoode ja muid sarnaseid elemente. Dünaamiline dokument võib olla üles ehitatud suvalise tasemega sisseehitatud elementide abil. Näiteks on tüüpilises arvel päised, jalused ja dünaamilised konteinerid arveridade jaoks9. Arve rea fragment seotakse andmemudeli invoice_rows kollektsiooniga projekteerimise ajal ja konteineri fragment täidetakse jooksuajal ridade korduvate eksemplaridega. Igal fragmentide konteineril on oma paigutusmeetod (näiteks vertikaalne virnastamine, horisontaalne pakkimine, fikseeritud asend jne).

Dokumendi vorming

Failiformaat põhineb XML-formaadil, mis hõlbustab töötlemist isegi kolmandate osapoolte vahenditega. Dokumendi tekstiline sisu kasutab UTF-8 kodeeritud Unicode’i. Kohandatud andmeid saab salvestada koos DOMi (dokumendi objektimudeli) erinevate osadega sõnastikena. Sõnastik on sisseehitatud võti-väärtuspaaride kogum, mis on sisuliselt suvaliste andmete miniandmebaas. Kui mis tahes kohandatud lahenduse puhul on vaja salvestada andmeid koos dokumendiga, saab neid lisada ilma, et oleks vaja muuta failiformaati.

Enamikul DOMi elementidel on atribuut name. Nime väärtus ei ole vaba tekst; on olemas süntaksipiirangud, mis on vajalikud, et võimaldada elemendile juurdepääsu JavaScripti kaudu. Nimi peab olema kasutatav ka dokumendi sisemise tee spetsifikatsiooni üksusena. Kasutajaliides teatab (kuid ei takista otseselt) tühikute ja muude mitte toetatud tähemärkide kasutamisest nimes. Koos nimega ilmuvat info omadust saab kasutada elemendi vabatekstilise kirjeldusena. Nii nimi kui ka info on vabatahtlikud väärtused. Rohkem üksikasju leiate dokumendivormingu leheküljelt.

Skriptide koostamine (Scripting)

Dokumendi käitumist saab täiustada, luues JavaScripti laiendusi. Redaktor sisaldab skriptide põhilist JavaScript-töötlusvahendit ja võlurit malliste skriptide loomiseks. Javascript -koodi saab redigeerida ka mis tahes välise tekstiredaktori või arenduskeskkonnaga. Skriptid on eraldi failid, mis on dokumendiga seotud.

Pange tähele, et eelvaade täidab dokumenti koos skriptidega ja skriptikoodi poolt väljastatud logisõnumid ilmuvad rakenduse logiaknas. Eelvaate tööriista saab kasutada põhiliste skriptide testimiseks.

Filtrid (Filters)

Filtrid pakuvad üldist viisi välise rakenduse määramiseks andmevoo muutjana. Filtrid (Filters) võimaldavad tegelikult mitmetasandilist töötlemist, sarnanedes Unixi käsurea standardsete sisendi- ja väljundvoogude ahelatega. See tähendab, et ühe filtri sees võib toimuda mitu järjestikust töötlemisetappi, luues keerukamaid ja mitmekülgsemaid efekte, just nagu Unixi süsteemides käsurealt andmeid edasi suunates ja töödeldes Filter runtime on rakendatud nii Linuxi kui ka Windowsi platvormidele.

Dokumendi eelvaade on rakendatud filtrina, mis töötab ühinemise käivituskomponendina. Filterfailid paigaldatakse tavaliselt põhirakenduse kõrvale alamkataloogi ./Filters/.

Eelvaade

Dokumenditöötlusrakendus on integreeritud redaktoriga ja pakub tegelikku eelvaadet portatiivsest tootmismootorist, mida saab kasutada Windows- ja Linux-keskkondades.

Eelvaade salvestab dokumendi ajutise koopia ja käivitab valikulise ühendamisrakenduse, mis on paigaldatud koos Editoriga, et luua SVG-väljund, mis seejärel renderdatakse eelvaatealal. Protsessi konfigureeritakse rakenduse kaustas .Filterspreview.filter asuva filtrifaili abil. Selle seadistuse eelis on see, et tegelik tööaeg toodab eelvaate, nii et see ei ole lähedane emulatsioon, vaid pigem tõeline asi.

XML-andmete näidisfaili nime saab sisestada eelvaatepaneeli ülaosas olevasse väljale. Eelvaade üritab dokumenti täita andmetega ja teostada kujundusprotsessi.

Väljaandja

Väljaandja moodul integreerib toimetaja ühilduva REST veebiteenusega. Avaldaja näitab veebiteenusele paigaldatud dokumentide loetelu, mis võib näiteks kasutada dokumente veebivormidena, pakkuda allalaadimis- või töötlemisteenuseid. Avaldaja eesmärk on jälgida kohalikke ja installeeritud versioone, laadida dokumenti redigeerimiseks alla ja laadida see koos muudatustega uuesti üles.

Praegu valmistame ette avalikke veebiteenuseid selle funktsionaalsuse testimiseks.

Kasutajaliides

Rakenduse põhiaken on jagatud kolmeks peamiseks alaks.

A – dokumendi struktuuri vaade B – peamine redigeerimisala C – tööriistade ja omaduste paneelid.

Vasakpoolne külgpaneel

Dokumendi struktuuri ala sisaldab dokumendi DOM-puuvaadet, tekstimudeli vaadet ja käskude ajaloo paneeli. DOM-puu näitab dokumendi elementide hierarhiat kuni põhiliste dokumendiobjektideni. See ei laienda tekstisiltide ja ressursiobjektide sisemist sisu. Tekstimudeli vaade näitab struktuuri üksikute tekstimärkide puhul. Käskude loend näitab teostatud redigeerimiskäskude loendit.

Peapaneel

Peamine redigeerimisala sisaldab joonistuskanva vaadet, XML (ainult lugemiseks mõeldud) allikavaadet, skripti redaktorit ja eelvaadet.

Kangas

Joonistamise lõuend näitab dokumendifragmente kujundusrežiimis, siin saame joonistada uusi objekte, liigutada, muuta suurust ja redigeerida teksti.

XML-vaade

XML-vaade näitab dokumenti sellisena, nagu see salvestatakse faili, koos valikulise süntaksivärviga. Sisseehitatud pildi binaarsed objektid on ruumi säästmiseks kärbitud. Praeguse iteratsiooni XML-sisu on ainult lugemiseks.

Skriptide koostamine

Skripti redaktor võimaldab redigeerida seotud dokumendi skripte, mis on salvestatud eraldi JavaScripti failidena.
Skripti redaktoris tehakse tulevastes versioonides suuri muudatusi, kus skriptid on integreeritud ja muutuvad põhidokumendi mudeli lahutamatuks osaks. Hetkel on skripti sisu muutmisel oma Undo/Redo virn, klaviatuurikombinatsioonid jne. See on sisuliselt eraldi tekstitöötlusrakendus redaktori sees. Samuti ei tohiks olla probleemi kasutada skriptide redigeerimiseks mis tahes välist rakendust. Rohkem teavet skriptide koostamise kohta leiate liitumisskriptide viite leheküljelt.

Tööriistad

Peavaate parempoolseim ala sisaldab omaduste ruudustikku ja erinevaid tööriistu.

Kinnisvaravõrk

Paneel “Omadused” esitab valitud objekti erinevaid atribuute. Valiku saab teha, klõpsates visuaalsel objektil lõuendivaates või kasutades DOMi puuvaadet.

Muud tööriistad

Tööriist Positsioon kuvab visuaalsete objektide koordinaadid ja mõõtmed. Kinnituspunktide seaded määravad, kuidas konkreetne element suhtleb sisaldavas fragmendis määratletud ruudustikuga. Tööriistad “Arrange” hõlbustavad sisuobjektide z-järjestuse muutmist ja valitud objektide üksteise suhtes joondamist.

Pintslitööriistaga määratakse graafilise objekti, näiteks kasti või tekstikonteineri täitmine. Objekti täitetüübiks võib olla läbipaistev, ühevärviline, muster või gradient. Teksti redigeerimisel määrab pintslipaneel valitud tekstivahemiku taustavärvi.

Pliiatsi tööriist võimaldab muuta objekti joone omadusi. Pliiats kehtib joonele, mida kasutatakse kastide, ellipside, hulknurkade ja radade joonistamiseks. Seda saab kasutada ka fragmentobjektide puhul, millel on raami määratlus.

Teksti tööriist kontrollib teksti ja muutujate väljade omadusi. Teksti värvi saab muuta tööriistakasti allosas asuva värvivaliku abil. Pintsli-, pliiatsi- ja tekstivahendis kuvatavad värvinäidised pärinevad ühest globaalsest paletist. Neid palette saab kohandada menüüst Tööriistad > Paletid või dialoogis Seaded paneelilt. Pange tähele, et kasutaja määratud paletid salvestatakse rakenduse andmete kausta kohalikus masinas ja neid ei salvestata dokumendis.

Ruudustiku tööriist võimaldab redigeerida valitud fragmendi ruudustikku. Pange tähele, et igal fragmendil võib olla mitu ruudustikku (või üldse mitte ühtegi). Ruudustik on määratletud fragmendil, seega võib igal sisesuletud fragmendil olla erinev ruudustiku seadistus. Ruudustik on objektide positsioneerimise ja joondamise abivahend, mis sarnaneb joonestuspaberil olevatele joontele. Iga objekt, sealhulgas alamfragmendid, võib olla ühendatud ühe võrguga (või mitte ühegi). See ühendus on määratletud objekti snap-seadistustes.

Laiendused loetleb dokumendi skriptid. Laiendused on kättesaadavad ka põhipaneeli laienduste vahekaardil.