Annotazioni di testo e aggiunte di immagini a file PDF utilizzando software gratuito


17

Sono principalmente interessato ad annotare un file PDF con testo in una posizione predeterminata. Le GUI e le utility da riga di comando sono entrambe ok, ma solo soluzioni software gratuite, per favore. Tuttavia, ho incluso aggiunte di immagini per completezza.

Per essere chiari, le annotazioni devono far parte del file PDF, altrimenti non è utile.

Ci sono due domande simili su Ask Ubuntu , ma hanno entrambe un paio d'anni. Ecco come posso aggiungere testo e immagini (ad esempio una firma) a un PDF? e come posso modificare un'immagine in un file PDF esistente?

Ho provato Xournal , che funziona. Tuttavia, penso che un piccolo tutorial su come farlo sarebbe buono, quindi vuoi aggiungere un piccolo tutorial su come usare Xournal per eseguire queste attività, per favore aggiungi una risposta.

Ho anche provato a updf, che non ha funzionato per me, anche se questa risposta e questa ad esempio dicono che può farlo. Ho ricostruito il pacchetto (che è Python puro) su Debian Wheezy, usando i sorgenti del PPA di aggiornamento . Sembra abbastanza primitivo e la finestra di dialogo "Salva con nome" non aveva nemmeno un pulsante di salvataggio. Se altre persone hanno avuto esperienze diverse, si prega di pubblicare.

Per ogni risposta, fornisci un breve tutorial con schermate, se del caso, su come hai realizzato questo compito.


Cosa c'era di sbagliato in libreoffice?
Riccioli d'oro

@goldilocks non l'ho usato. Se funziona per te, scrivi una risposta.
Faheem Mitha,

Libreoffice 3.5.4 tenta di aprire un file PDF come testo qui. Forse sto facendo qualcosa di sbagliato.
Faheem Mitha,

Ho modificato con successo un PDF per aggiungere colori a stati diversi nel diagramma di stato in bianco e nero in alcuni documenti sul lavoro usando libreoffice e sono rimasto fortemente colpito dal risultato (era quasi impossibile notare alcuna differenza se non che lo spessore della linea era leggermente diverso pochi posti).
hlovdal

@hlovdal Puoi darci qualche dettaglio su come hai fatto?
Faheem Mitha,

Risposte:


12

I file PDF sembrano aprirsi in LibreOffice Draw. Non ho fatto altro che aprire il file in questo modo:

$ libreoffice carcut_01.pdf

Una volta in LibreOffice Draw ho semplicemente annotato il PDF come se fosse un normale documento / immagine. Una volta fatto, ho fatto clic sull'icona PDF nella barra degli strumenti di Draw per esportare il file come nuovo file PDF.

    ss di pareggio

Questo è stato il risultato del mio sforzo.

    ss di xpdf

Ma LibreOffice non funziona per me?

Se riscontri un problema con Draw che non è in grado di farlo (stavo usando la versione di LibreOffice):

  • Versione: 4.1.4.2
  • ID build: 4.1.4.2-4.fc19

** NOTA: * Potrebbe mancare questo pacchetto che fa parte di LibreOffice:

$ rpm -aq|grep "libre.*pdf"
libreoffice-pdfimport-4.1.4.2-4.fc19.x86_64

Ecco come appare il pacchetto sulle distro basate su Red Hat come Fedora. Suppongo che su Debian / Ubuntu ci sia un pacchetto con un nome simile, probabilmente libreoffice-pdfimport.

Alternative?

Potresti provare Okular .

Okular ti consente di rivedere e annotare i tuoi documenti. Le annotazioni create in Okular vengono automaticamente salvate nella cartella dei dati locali interni per ciascun utente. Okular non modifica implicitamente alcun documento che apre.

immagine dello schermo

   ss di okular

Cos'altro?

Come mostra la risposta di @ Terdon , puoi anche usare GIMP, insieme a tutta una serie di altri strumenti. @Terdon è stato anche così gentile da pubblicare questo link nella nostra chatroom che ha un elenco di altri strumenti per annotare i PDF e visualizzarli.


1
Note specifiche per Debian: sono su Wheezy ma al momento ho usato il backport di libreoffice 1:4.1.4-2. Ho installato libreoffice, ma ho dovuto aggiungere libreoffice-pdfimport, in quanto non è stato inserito libreoffice. Senza quello non funziona. Fai clic sulla T sulla barra in basso per inserire il testo. Il tentativo di sovrascrivere il PDF esistente non riesce qui. Inoltre, l'output risultante sembra piuttosto scarso rispetto all'originale: un PDF generato dall'output LaTeX. Questo può (e probabilmente funziona) con il sibilante Libreoffice. Non mi sono preso la briga di controllare.
Faheem Mitha,

Ho provato l'opzione di modifica di Okular. Questa è l'opzione Rivedi sotto Strumenti. Tuttavia, non viene visualizzato con alcun visualizzatore di PDF e quindi chiaramente non fa parte del PDF, quindi è inutile.
Faheem Mitha,

Sono stato in grado di aprire un PDF in LibreOffice Draw, disegnare un rettangolo ed esportare nuovamente in PDF. Tuttavia, il PDF (originariamente prodotto da Docbook) aveva un sommario cliccabile - il layout di questo era leggermente incasinato e gli elementi non possono più essere cliccati per saltare.
Oskar Berggren,

8

Dal momento che vuoi solo sovrapporre il testo in una posizione predeterminata, puoi usare pdftkper farlo.

Hai bisogno di due file PDF. Uno è il file PDF che si desidera timbrare con il testo. L'altro file PDF è il testo che si desidera timbrare. Il secondo deve avere uno sfondo trasparente. Puoi farlo facilmente con, diciamo, LibreOffice Draw e stampare in pdf usando cups-pdf. L'esportazione in PDF, anche se non si seleziona PDF1 / A, renderà uno sfondo opaco.

Quindi fai:

pdftk input.pdf stamp overlay.pdf output stamped.pdf

Se si desidera sovrapposizioni diverse su pagine diverse, creare un overlay.pdf multipagina (la pagina di sovrapposizione 1 va sulla pagina di input 1, la pagina di sovrapposizione 2 sulla pagina di input 2, ecc.), Quindi:

pdftk input.pdf multistamp overlay.pdf output stamped.pdf

Poiché gli screenshot sono popolari, ecco come appaiono input e risultati. Naturalmente input.pdf è stato realizzato utilizzando l'importantissimo strumento di smiley di LibreOffice:

Immagine dello schermo


Come creare un PDF con CUPS-PDF

CUPS-PDF è un driver di stampa per CUPS che crea file PDF da lavori di stampa. Per usarlo, devi usare CUPS. Installa il cups-pdfpacchetto (richiesto almeno in Debian). Visita l'interfaccia amministrativa di CUPS su http://localhost:631/admine fai clic su "Aggiungi stampante". Dovresti vedere "CUPS-PDF (Virtual PDF Printer)" come opzione. Selezionalo, premi continua. Inserisci i nomi delle code, ecc. E continua di nuovo. Se viene richiesto un PPD, è generico.

Dopo aver aggiunto quella stampante, è possibile configurarla completamente /etc/cups/cups-pdf.conf.

Per usarlo, stampa come di consueto, ma selezionalo come stampante, anziché come normale stampante. Il file PDF verrà inserito $HOME/PDFper impostazione predefinita.


CUPS potrebbe richiedere l'autenticazione durante l'aggiunta di una stampante, l'utente deve essere aggiunto al gruppo richiesto ( sysper impostazione predefinita)
aksh1618

6

Okular può creare annotazioni su PDF, a partire dalla versione in Debian 8 (Jessie). Questa è la versione:

okular --version
Qt: 4.8.6
KDE Development Platform: 4.14.2
Okular: 0.20.2

Ecco come funziona:

Per i dettagli, consultare la pagina di riferimento delle annotazioni dal manuale di Okular .

Per citare quella pagina:

Da Okular 0.15 puoi anche salvare le annotazioni direttamente in file PDF. Questa funzione è disponibile solo se Okular è stato creato con la versione 0.20 o successiva della libreria di rendering di Poppler.

Innanzitutto, devi annotare il PDF. È possibile farlo tramite il menu o premendo un tasto. Puoi trovare gli strumenti sotto Tools->Reviewo premendo il tasto F6.

Questo farà apparire un menu a sinistra, con una varietà di opzioni.

inserisci qui la descrizione dell'immagine

Probabilmente l'opzione migliore per le annotazioni incorporate è "Nota incorporata". Seguire le istruzioni nel collegamento per salvare la nota. Come indicato nel collegamento, è possibile personalizzare il colore di sfondo, il carattere e altre caratteristiche della nota. Vedi anche Modifica e salva le impostazioni delle annotazioni in pdf in Okular? .

Per impostazione predefinita, le informazioni sull'annotazione sono archiviate in file xml situati in

~/.kde/share/apps/okular/docdata

o più in generale, nella posizione

$(kde4-config --localprefix)/share/apps/okular/docdata/

Per salvare l'annotazione nel file PDF, come è preferibile, è necessario salvare le annotazioni nel file usando Save As .

L'annotazione è vista da xpdf ed evince (che genera l'avvertenza "ATTENZIONE **: Annotazione non implementata: POPPLER_ANNOT_FREE_TEXT. È un problema noto e potrebbe essere implementato in futuro." Ma mostra ancora l'annotazione), ma non mostra acroread(9.5) .5) o il plug-in PDF di Chromium(45.0.2454.85). Stampa anche Ok usando gtklp, un frontend CUPS.


Alcuni altri suggerimenti:

  • La funzione Revisione può essere aggiunta alla barra degli strumenti: Impostazioni - Configura le barre degli strumenti - cambia in Barra degli strumenti: Barra degli strumenti principale okular_part - filtra le azioni disponibili cercando "Rivedi" e aggiungila alle azioni correnti a destra.

inserisci qui la descrizione dell'immagine

  • Le opzioni di annotazione possono essere modificate, è possibile aggiungere nuove varianti: fare clic con il pulsante destro del mouse sui pulsanti Revisiona e selezionare "Configura annotazioni"

inserisci qui la descrizione dell'immagine


3

Puoi anche usare gimp:

$ gimp foo.pdf

                                                      inserisci qui la descrizione dell'immagine

Fai clic su "Importa":

                                          inserisci qui la descrizione dell'immagine

Giocaci:

                                           inserisci qui la descrizione dell'immagine

Salvarlo:

   !inserisci qui la descrizione dell'immagine


... ma perdi tutte le informazioni vettoriali.
wchargin,

2

Una buona scelta per l'annotazione è TeX, in particolare LaTeX in combinazione con il pacchetto LaTeX pdfpages e il pacchetto di disegno TikZ.

Segue uno script di esempio. Questa è la sovrapposizione del documento di due pagine text.pdf. Il comando \includepdfdal pdfpagespacchetto viene richiamato con l' pagecommandopzione per includere la prima pagina del pdf, insieme ad alcuni testi sovrapposti usando TikZ. Quindi viene inclusa la seconda pagina usando\includepdf , ma senza annotazioni.

Questo è un metodo estremamente potente, ma semplice, perché utilizza tutta la potenza di TeX e TikZ.

Se non hai familiarità con TeX / LaTeX, puoi verificarlo copiando questo script, chiamandolo (diciamo) example.tex, cambiando text.pdfin qualsiasi PDF di 2 pagine che hai. Quindi corri e basta

pdflatex example.tex

assicurarsi che example.texe text.pdfsiano allo stesso livello di directory.

Se si desidera generare un pdf di 2 pagine per il test, è necessario invocare un modo semplice di fare groff.

echo .bp | groff -T pdf > text.pdf

.bpsta per pagina di interruzione e crea un PDF vuoto di due pagine. Questo comando è per gentile concessione di James Lowden .

\documentclass[a4paper]{article}
\usepackage{pdfpages}
\usepackage{tikz}
\usepackage{tikzpagenodes}
\begin{document}

\includepdf[pagecommand=
{\begin{tikzpicture}[remember picture, overlay]
    \node at (2,2.0){\large{\textbf{PLEASE WRITE EMAIL ADDRESS:}}};
    \draw[thick,latex-] (current page footer area.south east) -- +(-3.4cm,-2.2cm)
    node[pos=1,anchor=east] (a) {\large\textbf{{CONTINUED ON NEXT PAGE}}};
  \end{tikzpicture}}
,pages=1]{text.pdf}
\includepdf[pages=2]{text.pdf}

\end{document}

È utile posizionare una griglia di coordinate sulla pagina durante questa operazione, in questo modo il posizionamento diventa più semplice. Vedi, ad esempio, le ricette fornite nelle risposte a Grid con coordinate su tutti i lati? e la risposta originale di Loop Space collegata alla domanda.

Ecco un'immagine del risultato:

Pagina di esempio

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.