Sostituisci un carattere in un documento PDF


13

Ho un documento PDF (non crittografato) con campi modulo modificabili. Tuttavia, il carattere per quei campi è rotto: mancano alcuni glifi, quindi quando inserisco il testo compaiono delle lacune.

Come posso modificare il documento PDF - non ho accesso al documento di origine utilizzato per crearlo - per sostituire un carattere diverso al posto di quello rotto ?

Il carattere in questione è Adobe Caliban Regular , che posso vedere incorporato nel documento. I glifi che mostrano spazi vuoti includono “i”, “T”, “V”; forse altri che non ho scoperto.

Ho anche un altro documento simile usando Caliban, che viene visualizzato correttamente includendo i glifi elencati sopra come non funzionanti. Se qualcuno può dirmi come prendere un carattere da un PDF e sostituirlo in un PDF esistente , sarebbe una soluzione.

Attualmente sto usando:

Sarei interessato ad altri strumenti di editing PDF del software libero ( a prezzo zero o meno ), se aiuteranno in questa attività.


Quale software di visualizzazione o modifica PDF stai utilizzando? Quale carattere utilizza i campi modulo? E quel carattere è incorporato dopo aver salvato il modulo PDF in un nome file diverso?
Kurt Pfeifle,

Grazie per il commento, ho ampliato la descrizione per rispondere alle tue domande.
bignose,

Ancora una domanda: puoi nominare i glifi (che significano approssimativamente: lettere) che vuoi inserire nei campi del modulo e che vengono visualizzati solo come spazi vuoti?
Kurt Pfeifle,

Il tuo carattere Caliban assomiglia a questo: linotype.com/de/202/caliban-schriftfamilie.html o piuttosto così: fontspace.com/george-williams/caliban
Kurt Pfeifle

1
@bignose hai trovato una soluzione a questo?
Jubei il

Risposte:


5

È estremamente difficile sostituire un carattere incorporato in un PDF. Non sono a conoscenza di alcun software free-as-in-speech (con licenza GPL) o free-as-in-beer (gratis) che probabilmente potrebbe farlo (annullando prima l'incorporamento del font e quindi re-embed un carattere sustitute). So solo di due prodotti commerciali che lo fanno: di callassoftware.com pdfToolbox4 e Enfocus' PitStop (naturalmente, ci sono sicuramente altri, ma io non sono a conoscenza di loro, e questi due sono i leader di mercato qui).

Ecco un modo per estrarre un carattere incorporato da un PDF usando il software libero. Tieni presente che puoi farlo legalmente solo se la licenza del font non lo proibisce. Nel repository del codice sorgente di Ghostscript è presente un'utilità di programma PostScript extractFonts.psche può essere utile qui:

  1. Installa Ghostscript. Utilizzare l'ultima versione, 8.71.
  2. Scarica il file http://svn.ghostscript.com/ghostscript/trunk/gs/toolbin/extractFonts.ps
  3. Potresti voler leggere i commenti contenuti nel file scaricato.
  4. Eseguire il comando seguente in una casella DOS (cmd.exe):

    gswin32c.exe ^
        -q ^
        -dNODISPLAY ^
        C:/path/to/extractFonts.ps ^
        -c "(c:/path/to/your-pdf-file.pdf) extractFonts quit"
    
  5. Prendere nota di eventuali messaggi di avviso o errore che il comando può emettere.
  6. I caratteri estratti correttamente verranno ora archiviati nella directory corrente utilizzando lo stesso nome del PDF.

(Tenere presente che l' estrazione di caratteri qui non significa rimuovere i caratteri dal PDF, ma creare file di caratteri che sono copie di quelli incorporati nel PDF.)


Ecco un altro blocco che può contribuire a raggiungere ciò che desideri. Puoi decomprimere tutte le parti / i flussi compressi del tuo PDF, in modo da poter modificare più facilmente il file con un semplice editor di testo. (Attenzione: la modifica dei PDF non è un compito semplice e diretto --- i tuoi sforzi di modifica richiederanno un know-how abbastanza sostanziale e una conoscenza approfondita degli interni in formato PDF.)

Questo trucco utilizza anche un'utilità dalla toolbinsottodirectory Subversion di Ghostscript .

  1. Scarica il file http://svn.ghostscript.com/ghostscript/trunk/gs/toolbin/pdfinflt.ps
  2. Potresti voler leggere i commenti nel file scaricato.
  3. Eseguire il comando seguente in una casella DOS (cmd.exe):

    gswin32c.exe ^
         -- ^
         c:/path/to/pdfinflt.ps ^
         c:/path/to/your-pdf-file.pdf ^
         c:/path/to/your-pdf-file-decompressed.pdf
    

Questo comando tenterà di decomprimere tutti i flussi compressi 'flate' . (Se sei sfortunato, il tuo file conterrà anche flussi usando altri metodi di compressione (come 'zip' ) che rimarranno invariati da questo comando.)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.