Domanda

Esiste uno strumento di riga di comando per Linux che mi permetterà di annotare un file PS o PDF con testo o un carattere, il colore e le dimensioni particolari senza perdita di qualità? Ho provato il convertito di ImageMagick e il PDF risultante è di qualità piuttosto scarsa.

Ho un modello originariamente scritto in Adobe Illustrator e vorrei generare PDF da esso con nomi in determinati luoghi. Ho un enorme elenco di nomi, quindi vorrei farlo in un lotto (non in modo interattivo).

Se qualcuno ha qualche idea, apprezzerei ascoltarli. Grazie, Carl

È stato utile?

Soluzione

Penso che sia meglio creare il modulo PDF e riempirlo PDFTK FILL_FORM In batch:

$ pdftk form.pdf fill_form data.fdf output out.pdf flatten

I dati del modulo dovrebbero essere in Forme Formato dati (È solo il file XML con nomi di campo e valori specificati).
Notare la flatten comando. È necessario per convertire il modulo compilato in documento semplice.

Un altro modo è creare un insieme di documenti PDF "con nomi in determinati luoghi" e sfondo trasparente e Timbro PDFTK Ognuno di essi sopra il modello:

$ pdftk template.pdf stamp words.pdf output out.pdf

Altri suggerimenti

Un altro modo per raggiungere questo obiettivo sarebbe quello di hackerare il file PostScript stesso. Era quel file AI erano File Postscript e potresti modificarli direttamente; Non so se sia più vero. Quindi potresti dover esportarlo.

Per semplicità, presumo che ci sia una sola pagina. Pertanto, alla fine ci sarà una sola chiamata a showpage (forse attraverso un altro nome). Eventuali comandi di disegno eseguiti prima che Showpage venga visualizzato nella pagina.

Potrebbe essere necessario reinizializzare lo stato grafico (initgraphics), poiché il resto del documento potrebbe aver lasciato tutto divertente, aspettandosi che lo showpage si pulisca prima che qualcuno se ne accorga.

Per posizionare il testo, dovrai impostare un nuovo carattere (quello vecchio è stato invalidato da initgraphics) misurare la posizione in punti (72 punti/pollice, 28.3465 punti/cm).

/Palatino-Roman 17 selectfont %so much prettier than Times
x y moveto
(new text) show

Per fare la fusione, è possibile utilizzare Perl: emettere l'inizio del documento come documento qui, costruire alcune linee di scrittura del testo per programma, emettere la coda del documento. Ecco un esempio di Generare PostScript con Perl

Oppure puoi prendere i dati dalla riga di comando (con GhostScript) usando il -- opzione ($gs -q -- program.ps arg1 arg2 ... argn). Questi argomenti sono accessibili al programma attraverso un array denominato /argomenti.

Quindi, supponi che tu abbia un bel grafico di un clown spaventoso con un cartello vuoto largo circa 1 pollice, alto 3 pollici, angolo in alto a sinistra a 4 pollici da sinistra, 4 pollici dal fondo. Puoi inserire questo codice nel programma PS, poco prima showpage.

initgraphics
/Palatino-Roman 12 selectfont
4 72 mul 4 72 mul moveto
ARGUMENTS {
    gsave show grestore 0 -14 rmoveto
} forall

Ora puoi fargli dire cose divertenti ($gs -- clown.ps "On a dark," "and stormy night...").

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top