Addaw, anar a la pàgina d'inici Donar

Lliçó 4 de 10 · 14 min de lectura · Revisada el 26/10/2026

Per dins del PDF etiquetat: contingut marcat, RoleMap i atributs

Estàs llegint una lliçó oberta. Matricula't per fer els tests i els exercicis, desar el teu progrés i aconseguir el certificat.

Matricula-m'hi · nivell 6 (119 €)

Per remeiar amb criteri i entendre els informes de PAC no n'hi ha prou de saber que «el PDF té etiquetes»: cal saber com estan unides les etiquetes al contingut de la pàgina, què fa el RoleMap (la taula que tradueix etiquetes pròpies a etiquetes estàndard) i on viuen el text alternatiu, l'idioma o l'àmbit d'una cel·la. Aquesta lliçó obre el fitxer per dins. No cal que sàpigues programar, però sí que perdis la por a la sintaxi de PDF.

Dues capes unides: contingut de pàgina i arbre d'estructura

Cada pàgina d'un PDF té un flux de contingut (content stream): una llista d'operadors que dibuixen text, línies i imatges. En un PDF etiquetat, aquests operadors s'agrupen en seqüències de contingut marcat, delimitades pels operadors BDC (inici) i EMC (final). Cada seqüència que és contingut real porta un número identificador, el MCID (marked-content identifier); les que són decoració es marquen com a Artifact.

/H1 <</MCID 0>> BDC
  BT /F1 18 Tf 72 700 Td (Memòria anual 2025) Tj ET
EMC
/P <</MCID 1>> BDC
  BT /F2 11 Tf 72 670 Td (L'exercici es va tancar amb...) Tj ET
EMC
/Artifact <</Type /Pagination /Subtype /Footer>> BDC
  BT /F2 9 Tf 300 30 Td (14) Tj ET
EMC

D'altra banda hi ha l'arbre d'estructura, que penja del catàleg del document (/StructTreeRoot). Cada node és un element d'estructura amb un tipus (/S), un pare (/P), la pàgina on és el seu contingut (/Pg) i els seus fills (/K), que poden ser altres elements o MCID:

<< /Type /StructElem /S /H1 /P 12 0 R /Pg 5 0 R /K 0 >>

Aquest /K 0 és l'enllaç: «el meu contingut és la seqüència amb MCID 0 de la pàgina 5». L'enllaç invers el guarda el ParentTree, que permet a un visor saber, des d'un tros de text de la pàgina, a quin element d'estructura pertany. Quan PAC informa de «contingut sense etiquetar», està dient que hi ha operadors de dibuix que no són en cap seqüència amb MCID ni marcats com a artefacte: és el punt 01 del Matterhorn Protocol.

Punt clau

Els taulers d'Acrobat reflecteixen aquestes dues capes. El tauler Etiquetes mostra l'arbre d'estructura; el tauler Contingut mostra les seqüències de contingut marcat en l'ordre en què es dibuixen; el tauler Ordre mostra les regions de lectura. Per això moure una etiqueta al tauler Etiquetes canvia el que llegeix el lector de pantalla, però no l'ordre de dibuix de la pàgina.

El que ha de constar al catàleg

El catàleg inclou, a més, entrades que ja coneixes pel seu efecte: /MarkInfo <</Marked true>> (document etiquetat; PDF/UA exigeix que no es marqui com a Suspects, etiquetatge dubtós), /Lang (idioma principal), /ViewerPreferences <</DisplayDocTitle true>> (mostrar el títol) i /Metadata, el flux XMP amb dc:title i, si es declara conformitat, pdfuaid:part.

Etiquetes estàndard i RoleMap

PDF 1.7 defineix un conjunt de tipus d'estructura estàndard (Document, Part, Sect, H1–H6, P, L, Table, Figure, Formula, Link, Note, Span…). Són els únics que entenen les tecnologies de suport. Tanmateix, molts programes exporten etiquetes pròpies: el nom d'un estil de paràgraf («Titular», «Entradeta», «Cos_text») o tipus interns del generador. Perquè es puguin interpretar, el RoleMap del StructTreeRoot les ha de traduir a un tipus estàndard:

/RoleMap << /Titular /H2 /Entradeta /P /Destacat /P >>

PDF/UA-1 exigeix que tota etiqueta no estàndard estigui mapada, directament o indirectament, a una d'estàndard, i prohibeix redefinir les estàndard (mapar H2 a P, per exemple) i crear mapatges circulars. Són les condicions del punt 02 (Mapatge de rols) del Matterhorn Protocol.

Error freqüent

Arreglar els encapçalaments canviant el text de l'etiqueta al tauler Etiquetes quan el problema és al RoleMap. Si «Titular» està mapat a P, tots els titulars del document es llegiran com a paràgrafs encara que visualment siguin títols. Revisa el mapa a Acrobat (tauler Etiquetes > Opcions > Edita el mapa de rols, Edit Role Map) o, millor, corregeix el mapatge a l'origen, com veuràs amb l'Etiquetatge d'exportació d'InDesign a la lliçó sobre crear PDF des de l'origen.

A PDF/UA-2, PDF 2.0 afegeix espais de noms (namespaces): cada etiqueta pertany a l'espai de PDF 1.7, al de PDF 2.0 o a un altre de declarat, com MathML, i el mapatge es fa entre ells. La idea és la mateixa: tota etiqueta s'ha de resoldre en un tipus que el visor entengui.

Atributs: on viuen l'alt, l'idioma i les capçaleres de taula

Bona part de l'accessibilitat d'un PDF no és en el tipus de l'etiqueta, sinó en els seus atributs. Els més importants:

AtributPer a què serveixExemple d'ús
/AltDescripció alternativa que es llegeix en lloc del contingutFigures, fórmules, un logotip
/ActualTextText exacte que substitueix els caràcters dibuixatsLletra capital, lligadures sense Unicode, text dibuixat com a traços
/EExpansió d'una abreviatura«Excm.» → «Excel·lentíssim»
/LangIdioma d'un element diferent del principal (3.1.2)Un paràgraf en català o una cita en anglès
/Scope, /Headers, /IDRelació entre cel·les de dades i de capçaleraTaula amb capçaleres de fila i de columna
/RowSpan, /ColSpanCel·les que ocupen diverses files o columnesCapçalera «2025» sobre quatre trimestres
/ListNumberingTipus de numeració d'una llistaDecimal, lletres, vinyetes

La diferència entre /Alt i /ActualText confon molta gent. Alt descriu: «Gràfic de barres: les sol·licituds creixen un 12 % entre el 2023 i el 2025». ActualText substitueix: si un titular comença amb una «E» capital dibuixada a part i la resta de la paraula en un altre bloc, el lector dirà «E… l Consell»; posant /ActualText (El) a l'element que agrupa tots dos fragments, llegirà «El Consell». Els atributs de taula són els que emplenaràs amb l'Editor de taules a la lliçó de remeiament: així sabràs on es guarden.

Exemple

Una fórmula de càlcul d'una guia tributària està dibuixada amb traços vectorials. A PDF/UA-1 s'etiqueta com a Formula amb un /Alt que la llegeix en llenguatge natural («quota igual a base liquidable multiplicada pel tipus de gravamen»). A PDF/UA-2 es pot estructurar, a més, amb MathML, cosa que permet al lector de pantalla navegar per la fórmula terme a terme.

Anotacions: enllaços i camps de formulari per dins

Els enllaços, els camps de formulari, les notes i les signatures no són contingut de pàgina, sinó anotacions superposades. Perquè formin part de l'ordre lògic, l'element d'estructura corresponent (Link o Form) ha de contenir una referència a l'anotació, anomenada OBJR (object reference). És el que veuràs al tauler Etiquetes d'Acrobat com a «Enllaç - OBJR». A més:

  • PDF/UA-1 demana que les anotacions tinguin una descripció alternativa a la clau /Contents; en els enllaços, una descripció de la seva destinació.
  • Les pàgines amb anotacions han de portar /Tabs /S, que indica que l'ordre de tabulació segueix l'estructura. És el que fa a Acrobat l'opció «Utilitza l'estructura del document» a les propietats de la pàgina.
  • El nom accessible d'un camp és la seva clau /TU (user name), que Acrobat mostra com a «Informació sobre eines». El nom intern /T («Text1») no s'ha d'anunciar.
  • Els formularis XFA dinàmics no són compatibles amb PDF/UA i PDF 2.0 els declara obsolets: un formulari XFA s'ha de refer com a AcroForm o, millor, com a formulari web.

Llegir un informe de PAC amb aquest mapa

Amb el que s'ha explicat, els missatges de PAC deixen de ser críptics. Algunes equivalències habituals:

  • Contingut sense etiquetar: operadors fora de qualsevol MCID o artefacte. Etiqueta'l o marca'l com a artefacte des del tauler Contingut.
  • Tipus no estàndard sense mapar: falta una entrada al RoleMap.
  • Falta la clau Tabs: pàgina amb anotacions sense /Tabs /S.
  • Anotació sense descripció alternativa: enllaç o camp sense /Contents.
  • Glif sense equivalència Unicode o font no incrustada (punts 10 i 31): el lector de pantalla llegeix caràcters, no dibuixos. Comprova-ho copiant un paràgraf i enganxant-lo al Bloc de notes: si no surt el que veus, torna a exportar des de l'origen o fes servir ActualText si és puntual.

Prova-ho tu

Obre a PAC un PDF exportat des de Word i entra a la vista d'estructura lògica. Localitza un encapçalament, una figura i una cel·la de capçalera de taula, i anota quins atributs té cadascun (Alt, Lang, Scope). Si fas servir Acrobat Pro, compara-ho amb el tauler Etiquetes i amb l'opció de Comprovacions preliminars que examina l'estructura interna del PDF (Browse Internal PDF Structure).

Resum

  • Un PDF etiquetat uneix dues capes: seqüències de contingut marcat amb MCID a cada pàgina i un arbre d'estructura que les referencia; el ParentTree fa l'enllaç invers.
  • Les etiquetes pròpies s'han de mapar a tipus estàndard al RoleMap; PDF/UA-1 prohibeix redefinir les estàndard.
  • Alt descriu, ActualText substitueix, E expandeix abreviatures i Lang marca canvis d'idioma; els atributs de taula guarden àmbits i capçaleres.
  • Els enllaços i els camps són anotacions: necessiten OBJR a l'estructura, descripció a Contents, /Tabs /S a la pàgina i TU com a nom accessible.
  • Els missatges de PAC s'entenen amb aquest mapa: contingut sense MCID, tipus sense mapar, manca de /Tabs o de Contents, glifs sense Unicode.

Portes 10 lliçons d'aquest curs: que no es perdin

Crea el teu compte i desa el que ja has llegit i segueix el curs amb tot:

  • El test d'aquesta lliçó (3 preguntes) per comprovar el que has après
  • Exercicis pràctics amb pàgines reals
  • El teu progrés desat: continues on ho vas deixar, des de qualsevol dispositiu
  • Constància del curs amb les hores i certificat del nivell 6 quan aprovis l'examen

Entres amb el teu compte de Google o només amb el teu correu electrònic. No cal contrasenya.

Matricula-m'hi · nivell 6 (119 €)