Új hozzászólás Aktív témák

  • dqdb

    nagyúr

    válasz gordonfreemN #17612 üzenetére

    Rövid válasz: éppen az általad is bedobott a PDF to Excel szoftvereket akartam ajánlani, mint egyszerű megoldás, hátha akad belőlük olyan, ami tökéletesen kezeli ezek a táblázatokat.

    Hosszú válasz: nem megoldhatatlan, de nem is egyszerű dolog, mert a PDF egy konzisztens megjelenítésre optimalizált formátum, és nem az adatok hordozására/módosítására.

    Legextrémebb esetben a szövegek nem is szövegként vannak eltárolva, hanem maguk a betűk vektorosan görbékként kerülnek be a fájlba, és ilyenkor OCR kell a szöveg kinyeréséhez. Ez szerencsére ritka, általában szépen formázott kiadványok esetében fordul csak elő.

    Leggyakrabban a szövegek szövegként kerülnek bele a dokumentumba (adatokból sablon segítségével generált dokumentumoknál más megoldást még nem láttam), de a helyzet ennél bonyolultabb, mert nem bekezdésenként vagy szavanként egyben, hanem betűnként külön-külön saját pozícióval. Azaz például az alma szó a, l, m és a betűként* szerepelnek, ahol mindegyik betűhöz tartozik egy koordináta. A PDF megjelenítők vagy az általad igényelt text extractor megoldások pedig valamilyen heurisztikát használva kitalálják, hogy ezek a betűk elég közel vannak egymáshoz a használt betűtípus metrikái alapján, függőlegesen sem nagyon lógnak ki, így valószínűleg egy szót alkotnak. Aztán a szavakat hasonló heurisztika mentén bekezdésekké lehet összefűzni,

    A PDF libraryk közül szinte mindegyik kínál valamilyen fajta text extractor megoldást, jobban az iTextet ismerem, ott van egy általános implementáció, amelynek átadhatod paraméterként a helyzetnek megfelelő heurisztikát vagy használhatod a gyárilag beépítettek egyikét. A képen látható dokumentum formátuma eléggé szabályosnak tűnik ahhoz, hogy saját heurisztika nélkül, pusztán az alapértelmezett segítségével kinyert szöveget elég legyen feldolgozni, vagy ha ez mégsem jön össze, akkor ki tudod használni a táblázatjelleget, és pusztán a szövegek pozíciója alapján be tudod lőni, melyik cellában voltak.

    * Láttam már olyan generált dokumentumot, ahol tényleges szavak voltak, de ez ritka és a szabvány oldaláról ellenjavallott.

Új hozzászólás Aktív témák