2010-05-07 8 views
5

Stiamo utilizzando lucene in un'applicazione Web per cercare in un gran numero di documenti PDF.Come cercare un PDF in Acrobat Reader E passare a una determinata pagina tramite parametro?

Il flusso di lavoro è simile a questo:

  1. Un utente inserisce un termine di ricerca

  2. un elenco di risultati di ricerca è presentato all'utente.

  3. Ogni risultato di ricerca rappresenta un documento PDF e mostra all'utente su quale pagina è stato trovato il termine di ricerca. Ciascuna di queste pagine è rappresentata come un collegamento ipertestuale.

  4. Se l'utente fa clic su un collegamento ipertestuale, passa direttamente a tale pagina.

  5. Ma ora l'utente ha il problema che il termine di ricerca non è evidenziato nella pagina. Pertanto l'utente deve cercare da solo il termine di ricerca sulla pagina.

Quello che volevamo è un modo per evidenziare il termine di ricerca sulla pagina specifica nel PDF.

Il open parameters per Acrobat Reader consente sia di cercare un documento PDF (con l'evidenziazione dei risultati) che di passare a una pagina specifica. Ma la combinazione di entrambi i parametri - di cui avremmo bisogno - non funziona.

Qualcuno ha un'idea di come sia possibile saltare a una pagina e evidenziare un termine di ricerca in un documento PDF? Ho dato un'occhiata a Acrobat SDK ma non vedo come possiamo usarlo (è terribilmente documentato).

risposta

0

spiacenti potrebbe non essere una risposta, ma una soluzione potrebbe essere per convertire il file PDF in html e utilizzare Lucene evidenziatore (simile a quello che fa Google)

0

Dovresti scrivere un frammento di Javascript per ottenere il comportamento che stai cercando.

2

acrobat utilizza un plug-in per i termini in hilite e richiede un flusso in formato fdf per indicare le parole in hilite. Vedi qui per i puntatori:

support.dtsearch.com/dts0152.htm

aggiornamento:

patto di saper pagina # e la parola # sulla pagina per hilight, qui è un modo per farlo iT:

a pagina web:

<iframe id="acroframe" src="pdfpage/example.pdf#xml=http://example.com/hilite.aspx?hilite=8e3302ee-ff88-41ee-bdfb-9e8df87cc3ad&toolbar=1&navpanes=0&statusbar=0&view=FitH"> 
</iframe> 

apparirà il PDF nel telaio, mostrerà la barra degli strumenti, nascondere il navpane & barre di stato e adatta la pagina in orizzontale. Quindi interrogherà il sito web per ottenere i dati xfdf per hilighting: http://example.com/hilite.aspx?hilite=8e3302ee-ff88-41ee-bdfb-9e8df87cc3ad

Qui ho usato un tasto guida che ho precedentemente salvato nella sessione con il valore xfdf hilite. L'hilite.pagina aspx restituirà qualcosa di simile al seguente per HILITE parole nel documento:

<XML> 
<Body units=characters color=#ff00ff mode=active version=2> 
<Highlight> 
<loc pg=15 pos=3583 len=5> 
</Highlight> 
</Body> 
</XML> 

Ciò HiLight 5 caratteri a pagina 15 a partire dalla posizione 3583. (nota: XFDF non è "XML" vero e proprio, nonostante la somiglianza)

Nota che il lettore di Acrobat dovrà avere l'opzione "Abilita i punti salienti della ricerca dal server highlight esterno" nelle preferenze.

Problemi correlati