WebDjVuTextEd - Böngészőben futó DjVu szövegréteg szerkesztő

Saját fejlesztésünk: http://sourceforge.net/p/webdjvutexted/ - Online kipróbálható

A WebDjVuTextEd lehetővé teszi a DjVu karakterfelismert (OCR) szövegrétegének grafikus szerkesztését, egy webböngészőben. Módosítható a szöveg struktúrája (paragrafus, sor, szó stb.) létrehozhatók, törölhetők vagy átszerkeszthetők az egyes elemek, a szöveg pozícióját meghatározó doboz egérrel átszabható, és helyesírás ellenőrzésre is lehetőség van.

A program nem közvetlenül olvassa a DjVu fájlokat, hanem XML-be kell exportálni a szövegréteget, illetve képekké az oldalakat. Webszerver nélkül is használható. (Webszerver nélkül használva helyi fájlokat nyithatunk meg és menthetünk ki, de nincs lehetőség helyesírás ellenőrzésre és automatikus mentésre, így mindenképp előnyösebb webszerverrel használni.)

Lehetőségek

Telepítés

Használata

Fájlok előkészítése

A DjVu formátumú könyvből ki kell nyernünk az XML adatokat majd bemásolni a program "data" könyvtárába:

djvutoxml mybook.djvu mybook.xml

Ahhoz, hogy az egyes oldalak képe (a DjVu-ban található képfájl) is megjelenjen, ezeket is ki kell nyerni a könyvből és egy alkönyvtárba másolni, például "data/mybook".

ddjvu -format=tif mybook.djvu mybook.tif

Ezzel egy többoldalas TIFF fájlt nyerünk, amelyből Linuxon így nyerhetjük ki az egyes képeket PNG fájlokba:

mkdir mybook
for i in {0..129}; do convert "mybook.tif[$i]" mybook/mybook-$i.png; done

Windows felhasználók az XnView Tools -> Multipage File -> Extract all into... funkcióját használhatják.

Ezután nyissuk meg a böngészűben a telepített WebDjVuTextEd-et.

A megjelenő fájlkezelőben adjuk meg az XML fájl teljes URL-jét, majd egy relatív útvonalat a képekhez, majd nyomjuk meg a Load gombot.

A szövegréteg felépítése

A DjVu formátum a következő struktúrában tárolja a szövegréteg elemeit (lásd DjVu specifikáció)

PAGECOLUMN
|-REGION
  |-PARAGRAPH
    |-LINE
      |-WORD
        |-CHARACTER

Az egymásba ágyazott elemek közül bármelyik lehet az utolsó, mindig az tartalmazza magát a szöveget és rendelkezik koordinátákkal (szövegdoboz). Azok az elemek amely alatt más elem is található, nem tartalmazhatnak szöveget és koordinátákat. Leggyakrabban a WORD (szó) szint tartalmazza az OCR felismert szót és annak befoglaló koordinátáit. Az egyes dobozok nem fedhetik át egymást, de jelenleg a szerkesztő ezt nem ellenőrzi és nem teszteltük, hogy mi történik, ha hibás elrendezést importálunk vissza a djvutoxmlparser-be.

Szerkesztési lehetőségek

A WebDjVuTextEd bal oldalán ez a fa szerkezet látható és szerkeszthető. Jobb gombbal kattintva a következő műveletek érhetők el:

A képernyő jobb oldalán az oldal képe látható, rávetítve a szövegdobozokat piros keretekkel. A szövegdoboz módosításához ki kell kapcsolni a kicsinyítést ("Shrink"), így az oldal 1:1 nézetben lesz látható. Ebben a módban bármelyik szövegdoboz kiválasztásakor 5 fogantyú jelenik meg rajta. Figyeljünk oda, hogy a DjVu szabvány nem engedi meg, hogy az egyes szavak doboza átfedésbe kerüljön, vagy a sor (amely a tartalmazott szavak legkülső kiterjedését jelenti) átfedésbe kerüljön az előző vagy a következő sorokkal, de ezeket a hibákat a program nem ellenőrzi!

Oldalváltáskor a program automatikusan elküldi a webszervernek a teljes dokumentumot kimentésre, amelynek írás jogra lesz szüksége ugyanarra az XML fájlra amit szerkesztésre megnyitottunk. Így amennyiben a szerkesztőt újratöltjük (pl F5 billentyűvel) a legutóbb kimentett fájlt fogjuk visszakapni.

A helyesírás ellenőrző a "jquery-spellchecker"-t használja. Ennek biztonságosságát nem ellenőriztük, aki telepíti, saját felelősségre tegye.

Visszaírás a DjVu fájlba

Amikor készen vagyunk az összes szerkesztéssel, az XML adatokat visszaírhatjuk a DjVu fájlba:

djvuxmlparser -o mybook.djvu mybook.xml
A cikk legutóbb frissítve:2014/04/03