2011-01-14 14 views
6

Ho fatto un po 'di testa su questo e sollecito il tuo consiglio.Qual è l'approccio migliore per la modifica dei campi dei moduli interattivi PDF su iOS?

Sto costruendo un'app che come parte delle sue funzionalità è la presentazione di moduli PDF; significato visualizzarli, consentire i campi da modificare e salvare il file PDF modificato indietro. UIWebViews non supporta i moduli interattivi PDF.

Utilizzando l'apis CGPDF (e trarre vantaggio da altre domande pubblicate qui e altrove), posso certamente presentare il PDF (senza i campi modulo/widget), scansionare e trovare i campi nel documento, capire dove sullo schermo disegnare qualcosa e renderli interattivi.

Quello che non riesco a capire è come cambiare gli oggetti CGPDFDictionary e scriverli in un file. Si potrebbe usare l'apis CGPDF per creare un nuovo documento PDF da tutto il tessuto, ma come si usa per modificare un file esistente?

Devo cercare altrove come lib di PDF di terze parti come PoDoFo o libHaru?

Mi piacerebbe sapere chi ha modificato con successo un PDF e lo ha scritto di nuovo sul tuo approccio.

+0

Ho fatto questa domanda un paio di volte (con generosità) senza risultati. Da un sacco di ricerche e di lavoro su questo, è necessario scrivere una libreria per farlo usando C/C++. PoDoFo non salva e libHaru non apre i pdf esistenti (basati sulla memoria, potrebbero essere indietro). Da allora sono appena passato da quel progetto e ho cercato di dimenticare gli orrori dell'API CGPDF *. * shudder * –

+0

concordato. Molto probabilmente dovrai tirare il tuo. Se non si desidera che il risultato sia modificabile, è possibile anche creare un PDF da zero (UIGraphicsBeginPDFContextToFile) e rendere il PDF esistente più eventuali sovrapposizioni/testo aggiuntivi creati in esso. Questo sarà piuttosto lento e il risultato non sarebbe più interattivo. – omz

risposta

6

Una volta ho fatto questo incredibilmente a buon mercato sfogliando il PDF - voglio dire usando le espressioni regolari - e cambiando semplicemente il vero testo grezzo del file di dati PDF non elaborato.

Può funzionare perfettamente in situazioni semplici in cui è facilmente possibile trovare il valore in questione.

Non ho idea di cosa stai cercando di fare qui, ma un pensiero laterale! Spero che sia d'aiuto!

+0

Grazie a tutti per i vostri commenti. – gbreen

+1

@joe Blow, potresti spiegare un po 'di più su come hai fatto. Può essere con qualche esempio di codice ecc. Grazie –

+0

@joe Blow, mi sembra una soluzione perfetta per me. Puoi approfondire come vengono letti i dati grezzi in pdf in ogg-c? – AddisDev

Problemi correlati