- Questo topic ha 14 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 9 mesi fa da
OldClaudio.
-
CreatoreTopic
-
20 Novembre 2015 alle 12:46 #104165::
Ciao a tutti.
Sto compilando una serie di documenti tecnici con lo standard PDF-A con pdflatex.
Nel preambolo carico il pacchetto pdfx in questo modo:
`\usepackage[a-1b]{pdfx}`Nella directory del sorgente salvo il file con estensione xmpdata per i metadati e il file del profilo di colore.
Ricevo tuttavia il seguente warning:
`pdflatex.exe: fontmap entry for `dummy-space' already exists, duplicates ignored
(c:/texlive/2015/texmf-dist/tex/latex/hyperref/hyperref.sty
Package: hyperref 2012/11/06 v6.83m Hypertext links for LaTeX`Come è possibile evitarlo?
Vista la “delicatezza” del pdf-a non vorrei che questo inficiasse la validità del pdf.Vi segnalo anche questo documento ftp://ftp.fu-berlin.de/tex/CTAN/macros/latex/contrib/pdfx/pdfx.pdf per chi si avvicina al pdf-a.
Grazie.
R.
-
CreatoreTopic
-
AutoreRisposte
-
-
20 Novembre 2015 alle 15:04 #104166::
Se carichi pdfx NON devi caricare hyperref, perché lo fa pdfx e quindi ricevi dei conflitti.Il link che hai segnalato non è necessario: quel file pdfx.pdf è il normale file di documentazione che è già presente nell’installazione completa di TeXLive e (probabilmente) di MiKTeX.
Lo leggi con il semplice texdoc pdfx Nella mia installazione (aggiornatissima) di MacTeX (TexLive) il file risulta essere la versione 1.5.4 datata 2015/02/28.
Mi fa piacere che il pacchetto sia stato aggiornato, perché l’ultima volta che l’ho usato risaliva al 2014 e il risultato non passava la verifica PDF/A di Adobe Acrobat Pro XI.
Ora ci riprovo, ma continuo ad essere pessimista. L’ultima volta che l’ho usato sperimentavo un file sedicente PDF/A compatibile che passava il contorollo di Adobe Acrobat Pro XI su una macchina Windows, mentre lo stesso file non al passava sul mio Mac, con la stessa versione di Adobe Acrobat Pro XI. Ho segnalto il problema alla Adobe, inviando il file di test, ma non ho avuto nessun feedback e nemmeno un cenno di aver ricevuto la segnalazione del bug.
Roby, stai attento che la maggior parte degli enti che pretende di ricevere documenti conformi alle noeme PDF/A non sanno di che cosa stiano parlando, anche perché nella maggior parte dei casi se va bene aprono il file con Adobe Reader, il quale riconosce se un file PDF dice/pretende di essere PDF/A conforme. Il Reader lo deduce dalla presenza dei metadati, ma non fa nessuna vera verifica.
I software che eseguono la verifica sono tutti a pagamento; il più economico sembra essere Adobe Acrobat Pro e dovrebbe essere abbastanza affidabile visto che i tecnici della Adobe fanno parte del Working Group che redige e aggiorna la norma ISO 19005.
Le verifiche on line gratuite ci sono, ma sono sempre negative; prova ad immaginare perché una azienda produttrice di una software da alcuni biglietti da mille dovrebbe offrire i suoi servizi gratis…
-
21 Novembre 2015 alle 7:03 #104167
-
23 Novembre 2015 alle 6:40 #104168::
Ciao.
Ricreare il problema è stato molto più semplice di quel che immaginassi.
Ecco un minimal worked example che produce il messaggio di warning sul ‘dummy-space’:
`\documentclass{article}
\usepackage[a-1b]{pdfx}\begin{document}
contenuto…
\end{document}`Compilo con pdflatex con TeX Live 2015 aggiornata a oggi.
Ho verificato che la classe (che ho scritto io stesso) non carica hyperref ma lo fa solamente pdfx stesso.
Saluti.
R.
-
23 Novembre 2015 alle 12:28 #104169::
Robi, ho costruito il tuo file pari pari con un copia-incolla, e l’ho fatto girare con pdflatex; dopo un po’ di smarrimento, perché non mi ricordavo di avere una vecchia versione di pdfx.sty nel mio albero personale, e perché con la versione attuale bisogna inserire i metadati con un file di nome diverso dal passato, (ottima occasione, la mia, per testare la nuova versione di pdfx e per mettermi a giorno delle novità) la compilazione da me procede perfettamente, senza messaggi di dummy-space duplication. Forse succede anche a te, ma dal tuo ultimo messaggio avevo capito che l’RMC che hai allegato serviva per riprodurre l’errore.
A me non si riproduce. La mia versione di TeXLive )MacTeX) è aggiornata ad una settimana fa.Nonostante questo, sarebbe importante (a parte l’EMC) non usare mai i font CM; sarebbe desiderabile usare solo i font OpenType, quindi a rigore, visto che xelatex non produce direttamente il file PDF compatibile ma bisogna trasformalo in ps e poi renderlo compatibile attraverso ghostscript, xelatex sarebbe da escludere; di conseguenza si potrebbe avere qualche chance solo con lualatex. Sono tutte prove che non ho fatto, anche perché ci vorrebbe non un EMC, ma un vero documento contente testo con diversi font, matematica, figure, tabelle, grafica in linguaggio PDF (pict2e, curve2e, TikZ, pgfplot, eccetera). Quindi sarebbe un test piuttosto pesante.
-
23 Novembre 2015 alle 14:05 #104170::
OldClaudio” post=104197Robi, ho costruito il tuo file pari pari con un copia-incolla, e l’ho fatto girare con pdflatex; dopo un po’ di smarrimento, perché non mi ricordavo di avere una vecchia versione di pdfx.sty nel mio albero personale, e perché con la versione attuale bisogna inserire i metadati con un file di nome diverso dal passato, (ottima occasione, la mia, per testare la nuova versione di pdfx e per mettermi a giorno delle novità) la compilazione da me procede perfettamente, senza messaggi di dummy-space duplication. Forse succede anche a te, ma dal tuo ultimo messaggio avevo capito che l’RMC che hai allegato serviva per riprodurre l’errore.
A me non si riproduce. La mia versione di TeXLive )MacTeX) è aggiornata ad una settimana fa.Nonostante questo, sarebbe importante (a parte l’EMC) non usare mai i font CM; sarebbe desiderabile usare solo i font OpenType, quindi a rigore, visto che xelatex non produce direttamente il file PDF compatibile ma bisogna trasformalo in ps e poi renderlo compatibile attraverso ghostscript, xelatex sarebbe da escludere; di conseguenza si potrebbe avere qualche chance solo con lualatex. Sono tutte prove che non ho fatto, anche perché ci vorrebbe non un EMC, ma un vero documento contente testo con diversi font, matematica, figure, tabelle, grafica in linguaggio PDF (pict2e, curve2e, TikZ, pgfplot, eccetera). Quindi sarebbe un test piuttosto pesante.
Grazie Claudio.
Ti confermo che con la TeX Live 2015 aggiornata per win32 ricevo l’avvertimento anche se carico il Latin Modern come in:
`\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}\usepackage{lmodern}
\usepackage[a-1b]{pdfx}
\begin{document}
contenuto…
\end{document}`L’inizio del log che contiene l’avvertimento è:
`This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/W32TeX) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./senza-nome-1.tex
LaTeX2e <2015/10/01> patch level 2
Babel <3.9m> and hyphenation patterns for 79 languages loaded.
(c:/texlive/2015/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(c:/texlive/2015/texmf-dist/tex/latex/base/size10.clo))
(c:/texlive/2015/texmf-dist/tex/latex/base/fontenc.sty
(c:/texlive/2015/texmf-dist/tex/latex/base/t1enc.def))
(c:/texlive/2015/texmf-dist/tex/latex/base/inputenc.sty
(c:/texlive/2015/texmf-dist/tex/latex/base/utf8.def
(c:/texlive/2015/texmf-dist/tex/latex/base/t1enc.dfu)
(c:/texlive/2015/texmf-dist/tex/latex/base/ot1enc.dfu)
(c:/texlive/2015/texmf-dist/tex/latex/base/omsenc.dfu)))
(c:/texlive/2015/texmf-dist/tex/generic/babel/babel.sty
(c:/texlive/2015/texmf-dist/tex/generic/babel-italian/italian.ldf
(c:/texlive/2015/texmf-dist/tex/generic/babel/babel.def)))
(c:/texlive/2015/texmf-dist/tex/latex/etoolbox/etoolbox.sty)
(c:/texlive/2015/texmf-dist/tex/latex/lm/lmodern.sty)
(c:/texlive/2015/texmf-dist/tex/latex/pdfx/pdfx.sty{c:/texlive/2015/texmf-var/f
onts/map/pdftex/updmap/pdftex.map}pdfTeX warning: pdflatex.exe: fontmap entry for `dummy-space' already exists, d
uplicates ignored
(c:/texlive/2015/texmf-dist/tex/latex/hyperref/hyperref.sty
(c:/texlive/2015/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
(c:/texlive/2015/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty))
(c:/texlive/2015/texmf-dist/tex/latex/graphics/keyval.sty)
(c:/texlive/2015/texmf-dist/tex/generic/ifxetex/ifxetex.sty)
(c:/texlive/2015/texmf-dist/tex/latex/oberdiek/auxhook.sty)
(c:/texlive/2015/texmf-dist/tex/latex/oberdiek/kvoptions.sty)
(c:/texlive/2015/texmf-dist/tex/latex/hyperref/pd1enc.def)
(c:/texlive/2015/texmf-dist/tex/latex/latexconfig/hyperref.cfg)
(c:/texlive/2015/texmf-dist/tex/latex/url/url.sty))Package hyperref Message: Driver: hpdftex.
`Inoltre sembra che pdfx non sia compatibile con LuaLaTeX. Per imbattersi in un errore basta compilare questo:
`\documentclass{article}\usepackage{fontspec}
\usepackage[a-1b]{pdfx}
\begin{document}
contenuto…
\end{document}`
Un saluto.
R.
-
23 Novembre 2015 alle 17:38 #104171
-
24 Novembre 2015 alle 5:57 #104172::
OldClaudio” post=104202Alla riga 121 la nuova versione di pdfx contiene
\pdfmapline{+dummy-space
Ottimo.
Del resto la scelta di includere quel font alla mappa può aiutare gli utenti che non hanno l’installazione completa ma anche far preoccupare quelli che come me temono che il pdf-a possa essere malformato e che non s’intendono di font.
Grazie mille.
R.
-
25 Novembre 2015 alle 14:24 #104173::
Giusto; la documentazione di pdfx al paragrafo 3.1 dice:3.1. Limitations and dependencies
pdfx.sty works only with PDFTEX. It further depends on the following packages:
1. xmpincl for insertion of metadata into PDF.
2. hyperref for hyperlinking, bookmarks, etc.
3. glyphtounicode.tex maps glyph names to corresponding Unicode.I pacchetti che gli servono sono già inclusi, ma la prima frase è esplicita: funziona solo con pdftex usato come motore di composizione, non con luatex usato come motore. Quindi con pdfLaTeX funziona; con LuaLaTeX non funziona.
Ne deduco che l’unico modo di avere un PDF/A conforme usando XeLaTeX o LuaLaTeX è quello di produrre un file PDF e di convertirlo in PDF/A mediante ghostscript. Non ho controllato se il gostscript installato con TeXLive è sufficientemente aggiornato per poter eseguire questa conversione.
-
26 Novembre 2015 alle 5:54 #104174
-
5 Dicembre 2015 alle 21:58 #104175::
Caro Roberto,
negli ultimi giorni mi sono dedicato ad approfondire i cambiamenti che sono avvenuti in TeXLive, GostScript e in pdfLaTeX, XeLaTeX e LuaLaTeX.Ecco quanto ho scoperto:
0) PreliminarNon ci osno o non ci dovrebero essere problemi con i font di LaTeX; anche se ci sono due file cmsym e un altro font matematico che sono incompatibili per qualche glifo di larghezza nulla; con il pacchetto TOPteso ho rideifnit i comandi che usano quel paio di glifi sbagliati, per l’altro font il problema non mi si è mai presentato, quindi mi sono dimenticato di quale/i glifo/i si tratti. I problemi veri nascono dal profilo di colore e dai file importati; per il profilo di colore pdfx fa tutto da solo ed è meglio non metterci el mani dentro. Per i file importati, se sono file PDF o EPS generati “in casa” bisogna rigenerali in modo che essi stessi siano PDF/A compatibili, perché di solito i metadati relativi ai font e al profilo di colore non sono presenti; altrimenti bisogna convertirli in file raster PBG se sono al tratto o JPG se sono fotografie cuarndo che siano RGB e non CMYK come talvolta succede.1) pdfLaTeX
il pacchetto pdfx, al contrario di quello che faceva prima, va caricato dopo il pacchetto inputnec e prima del pacchetto hyperref; quest’ultimo deve venire chiamato senza opzioni e le impostazioni vanno fatte successivamnte mediante \hypersetup. ovviamante ci vule il file .xmpdata con il nome uguale a quello del main file.
Le compilazione procede senza errori, lerrore dummy-space non si mainfaesta più, ec’è la possibilità che il file sia PDF/A compatibile, se sono soddisfatte altre circostanze. (vedi punto 0 )2) XeLaTeX
Non può produrre da solo file PDF/A perché la sua composzione passa attraverso unfiel DVI esteso, che viene convertito in PPDF mediante una versione speciale ed estesa di dvipdfm. Invece il formato PDF/A necessita di primitive che ha solo il motore pdftex. Quindi bisogna passare attravero Ghostscript, am è difficle configurare il file dei metadati *_def.ps che potrebbe mantenere il nome originale del modello PDFA_def.ps, ma è meglio usare un file col nome del file principale del file PDF generato da XeLaTeX. Un altro metodo più semplice consiste nel creare un semplice file di poche righe che usi il pacchetto pdfpages, ceare il file di metadati .xmodata col nome di questo piccolo file, e usare questo piccolo file per importare il file PDF generato da XeLaTeX. Entrambi i metodi perdono la funzionalità dei collegamenti ipertestuali eventualmente presenti ne file da convertire.3) LuaLaTeX
La documentazione di pdfx dice che esso è compatibile solo con pdfLaTeX, come ti ho già scritto, ma bisogna avere fiducia. Se il file da comporre con LuaLaTeX non usa profili di colore strambi, né importa file PDF con contenuti non compatibili, allora vale la pena di caricare pdfx prima di hyperef (senza opzioni, ma configurato dopo mediante \hypersetup) e lanciare la compilazione LuaLaTeX; siccome questo è incompatibile con pdfx,a un cero punto si ferma dicendo che una certa primitiva (di pdftex) è una control sequence ignota. In errorstopmode il programma si ferma in attesa di istruzioni da parte dell’utente; si preme il taso S + invio, e la compilazione riparte. Miracolo! il file PDF ottenuto è PDF/A compatibile e passa l’analisi di Preflight di Adobe Acrobat Pro XI; ne non la passa è perché il fiel da compilare manca di qualche dato o importa qualche file non PDF/A compatibile. Ovviamante, anche con LuaLaTeX bisogno predisporre il solito file di metadati .xmpdata come si fa per la compilazione mediante pdfLATeX.Ho faticato molto a trovare questi risultati e devo ringraziare Luigi S. che mi ha aiutato con la riga di comando di ghostscript.
Quanto è scritto in questo messaggio funziona, ma non si trova scritto da nessu’altra parte. Per cui ora mi accingo ad aggiornare i documenti per il Forum, e altri documenti in giro dove ho scritto del formato PDF/A. In modo che anche qui dal forum possiamo indirizzare gli OP verso una documentazione non così succinta come questo breve ( 😉 😎 😯 😀 ) messaggio.
-
7 Dicembre 2015 alle 6:17 #104176::
Gran lavoro Claudio e Luigi.
Devo quindi fare molta attenzione sui file importati e ricordarmi di generarli correttamente.
In particolare con i disegni generati via CAD…
Vorrei anche provare LuaLaTeX ma per il momento non ho il tempo per approfondire e valutare.
Infatti le mie compilazioni danno sempre l’avvertimento del dummy-space ma portarle sotto LuaTeX non è immediato perché sono assai complicate: da una manciata di file ricavo un gran numero di relazioni diverse con l’uso di speciali comandi che riversano un testo specifico a seconda del documento da ottenere.
Valgono i riferimenti incrociati tra relazioni diverse ma è po’ troppo complicato per cui per il prossimo progetto valuterò il da farsi.
Grazie.
R.
-
7 Dicembre 2015 alle 8:56 #104177
-
7 Dicembre 2015 alle 10:28 #104178::
OldClaudio” post=104368Attento che le norme PDF/A vietano i collegamenti ipertestuali con destinazioni esterne al file archiviabile.
Devi trovare una altro modo, per esempio citazioni bibliografiche.Claudio
In effetti ne ho alcuni che però non funzionano nel senso che puntano a un file pdf esterno che però non viene effettivamente aperto. Esiste un modo per evitare che hyperref inserisca automaticamente i riferimenti esterni?
Uso il pacchetto xr…
R.
-
7 Dicembre 2015 alle 13:57 #104179
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.