Sei sulla pagina 1di 13

Riconoscimento posizionale di testo all’interno di un PDF

Riconoscimento posizionale di testo


all’interno di un PDF

Università degli studi di Padova


17 Dicembre 2009

Relatore: Laureando:
Tullio Vardanega Marco Tessarotto

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 1 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Sommario

1 Dominio applicativo
Tecnologie e processi aziendali
2 Progetto di stage
Il problema del ciclo passivo dei documenti
Problematiche dei PDF
3 Attività di stage
Individuazione di una libreria
La grammatica dei PDF
Affidabilità del dato estratto
4 Valutazione retrospettiva
Codice prodotto e documentazione allegata
Preventivo e consuntivo
Conclusioni

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 2 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Dominio applicativo
Tecnologie e processi aziendali

Tecnologie e processi aziendali

ASI srl offre assistenza ad altre aziende fornendo:


software gestionale
software ERP → Plain
R Documentale

“Documentale” gestisce il ciclo attivo e passivo dei documenti

ASI utilizza tecnologie Microsoft nello sviluppo dei suoi prodotti:


C♯
.NET
WPF

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 3 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Progetto di stage
Il problema del ciclo passivo dei documenti

Ciclo attivo e passivo di un documento


Dati Dati

Documento PDF Immagine PDF


intermedio Searchable raster Searchable

PDF PDF

Documento
cartaceo

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 4 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Progetto di stage
Il problema del ciclo passivo dei documenti

Principali conseguenze

perdita di informazione
corruzione dei dati (scanner OCR)
variazione del layout

introduzione dei modelli di mappatura


layout inverso
riottenere i dati
sensibili alla variazione del layout (perchè posizionali)
vincolati all’analisi del PDF

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 5 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Progetto di stage
Problematiche dei PDF

Problematiche dei PDF

estrazione posizionale di testo (programmatica)


un PDF non possiede una struttura logica
non è possibile garantire l’esattezza del dato estratto
nemmeno posizionalmente (layout variabile)

c’è la necessità quindi di ottenere:


1 la posizione del testo (per l’estrazione posizionale)
2 informazioni associate al testo (da utlizzare per garantire il
dato)

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 6 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Attività di stage
Individuazione di una libreria

Individuazione di una libreria

evitare di risolvere problemi già risolti

individuare una libreria di supporto per l’analisi dei PDF


licenza
funzionalità (scopo)
utilizzo di C♯
costo
documentazione
affidabilità (del team e del progetto)

PdfSharp (funzionalità e limiti)

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 7 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Attività di stage
La grammatica dei PDF

La grammatica dei PDF

PdfSharp si ferma ai content stream


necessità di interpretare gli operatori
improponibile sviluppare un parser da zero

è stato quindi deciso di investire delle ore


1 nello studio della specifica
2 nella definizione di una grammatica
in modo da poter usare un compiler-compiler per produrre un
parser

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 8 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Attività di stage
Affidabilità del dato estratto

Affidabilità del dato estratto

Fattura
Articolo Quantità Costo
Matite 240 16.80€
Gomme 7 3.05€

Totale: 19,85 €

l’esattezza del dato viene garantita da:


attributi del dato
informazioni derivate dal dato
elementi vicini
Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 9 di 13
Riconoscimento posizionale di testo all’interno di un PDF
Valutazione retrospettiva
Codice prodotto e documentazione allegata

Codice prodotto e documentazione allegata

Complessità Dipendenze Linee di Codice


ciclomatica (coupling) codice comm.

PdfAnalyzer.cs 23 28 511 32%


PdfPage.cs 14 5 268 29%
PdfFont.cs 34 16 921 21%
PdfText.cs 3 3 127 43%
PdfChar.cs 4 0 73 34%

Codice PdfTextStream.g 775 38%


Commenti
PdfTextStreamLexer.cs 388 11 3792 −−
Codice
Commenti PdfTextStreamParser.cs 308 69 6843 −−

analisi dei requisiti


specifica tecnica
descrizione delle API
Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 10 di 13
Riconoscimento posizionale di testo all’interno di un PDF
Valutazione retrospettiva
Preventivo e consuntivo

Distribuzione delle attività per fase

Studio del dominio Codifica


Analisi Verifica e validazione
Progettazione Documentazione
70

60

50

40

30

20

10

0
1 2 3 4 5 6
Studio del Analisi Progettazione Codifica Verifica e Documentazione
dominio validazione

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 11 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Valutazione retrospettiva
Preventivo e consuntivo

Preventivo e consuntivo

Preventivo
Consuntivo

70

60

50

40

30

20

10

0
Studio del Analisi Progettazione Codifica Verifica e Documentazione
dominio validazione

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 12 di 13


Riconoscimento posizionale di testo all’interno di un PDF
Valutazione retrospettiva
Conclusioni

Conclusioni

gli obiettivi iniziali non sono stati raggiunti

valutazione comunque positiva


il package è una buona base ben documentata
conoscenze acquisite C♯, .NET
PDF (struttura, operatori, varianti)

Marco Tessarotto Riconoscimento posizionale di testo all’interno di un PDF 17 Dicembre 2009 13 di 13

Potrebbero piacerti anche