Travailler avec PDF/A ou PDF/UA
Les formats PDF/A et PDF/UA imposent plusieurs exigences liées au contenu du document qui ne peuvent être remplies lors de la conversion automatique d’un document au format Word vers PDF. Ces exigences doivent être vérifiées et corrigées soit dans un document Word avant la conversion, soit dans un document PDF après la conversion afin de produire un document entièrement conforme aux formats PDF/A et PDF/UA.
Les exigences de base concernent la structure ou les polices d’un document PDF/A et PDF/UA, que nous examinerons dans les sections suivantes.
Exigences relatives à la structure du document
Les exigences actuelles concernent les formats PDF/A-1a, PDF/A-2a, PDF/A-4 et PDF/UA-1.
Il existe certaines nuances dans le fonctionnement de Aspose.Words lors de la conversion vers diverses normes de format PDF. Ils doivent être pris en compte si vous souhaitez obtenir le résultat attendu.
La spécification nous indique ce qui suit (développez pour voir les détails):
Il est déconseillé aux rédacteurs de générer des informations structurelles ou sémantiques à l’aide de processus automatisés sans vérification appropriée.
ISO19005-2, 6.7.1
Les sous-sections ci-dessous décrivent les nuances du fonctionnement de Aspose.Words lors de la conversion vers diverses normes de format PDF et les options pour leur solution.
Type de structure
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Un document PDF est une séquence de blocs tels que des titres, des paragraphes, des tableaux et autres. Ces blocs forment une structure de document – forte ou faible.
Les structures fortes et faibles sont valables pour PDF/A. Les documents Microsoft Word ont une structure faible de par leur conception, et Aspose.Words crée respectivement un PDF avec la structure faible et génère également des titres en fonction des niveaux de plan des paragraphes du document source.
Pour un document PDF/UA-1 avec une structure faible, il est en outre requis que les numéros de titre soient dans l’ordre et sans espaces.
La spécification nous indique ce qui suit (développez pour voir les détails):
La structure au niveau des blocs peut suivre l'un des deux paradigmes principaux:
ISO-32000-1, 14.8.4.3.5
Pour les documents PDF/UA-1, la spécification contient un ajout lié aux niveaux de titre (développez pour voir les détails):
Si la sémantique du document nécessite une séquence descendante d'en-têtes, une telle séquence doit se dérouler dans un ordre numérique strict et ne doit pas sauter de niveau de titre intermédiaire. H1 H2 H3 est autorisé, tandis que H1 H3 ne l’est pas.
ISO-14289-1, 7.4.2
Pour garantir une sortie correcte, les utilisateurs doivent s’assurer que le contenu du document source est correctement organisé et que les niveaux de plan sont correctement spécifiés pour les paragraphes. Sinon, l’utilisateur doit vérifier et corriger la structure du document PDF de sortie.
Dans ce bloc, vous pouvez voir des exemples: comment définir les niveaux de plan dans Microsoft Word ou vérifier et corriger la structure du document PDF de sortie (développez pour voir les détails).
Dans Microsoft Word, les styles "Titre X" par défaut peuvent être utilisés pour définir le niveau de plan:
De plus, le niveau hiérarchique peut être vérifié ou modifié dans la fenêtre "Paragraphe":
Dans Acrobat, la structure du document peut être vérifiée ou modifiée dans le volet "Balises":
Marquage du contenu comme artefact
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Pour le moment, Aspose.Words marque les en-têtes et pieds de page, les séparateurs de notes, les cellules d’en-tête de tableau répétées et les images décoratives comme des artefacts. Notez que cette liste pourrait être mise à jour à l’avenir.
La spécification nous indique ce qui suit (développez pour voir les détails):
Les objets graphiques d'un document peuvent être divisés en deux classes:
ISO-32000-1, 14.8.2.2.1
Si un document contient un autre contenu qui doit être marqué comme un artefact, ou si l’un des contenus artefactés est un contenu réel, les clients doivent le corriger dans le PDF de sortie.
Dans ce bloc, vous pouvez voir des exemples: comment marquer des formes comme décoratives dans Microsoft Word ou marquer une forme comme artefact dans le document PDF de sortie (développez pour voir les détails).
Par exemple, les formes pourraient être marquées comme décoratives dans Microsoft Word, elles seront donc exportées au format PDF en tant qu'artefact:
Vous pouvez marquer la forme comme artefact dans le PDF de sortie:
En outre, vous pouvez remplacer le texte d'un en-tête de l'artefact par du contenu réel dans le PDF de sortie:
Spécification du langage naturel
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
La langue du texte est spécifiée dans les documents Microsoft Word. Aspose.Words exporte la langue spécifiée vers un PDF de sortie avec l’attribut Lang attaché à une séquence de contenu marqué ou à une balise Span – il est contrôlé par la propriété ExportLanguageToSpanTag. Généralement, il n’y a aucun problème de langue lorsque le texte est saisi par l’utilisateur via Microsoft Word. Mais il est possible que la langue soit inexacte si le texte est généré automatiquement.
La spécification nous indique ce qui suit (développez pour voir les détails):
La langue naturelle par défaut de tout le texte d'un fichier doit être spécifiée par l'entrée Lang dans le dictionnaire du catalogue du document.
Tout le contenu textuel d'un fichier qui diffère de la langue par défaut doit être indiqué par l'utilisation d'une propriété `Lang` attachée à une séquence de contenu marqué, ou par une entrée Lang dans un dictionnaire d'éléments de structure...
ISO-19005-2, 6.7.4
De plus pour PDF/UA-1, la spécification nous indique ce qui suit (développez pour voir les détails):
Le langage naturel doit être déclaré… Les changements dans le langage naturel doivent être déclarés.
ISO-14289-1, 7.2
Dans ce bloc, vous pouvez voir des exemples: comment s'assurer que la langue est correctement spécifiée (développez pour voir les détails).
Les utilisateurs doivent s'assurer que la langue est correctement spécifiée dans le document Word source:
Ou le document PDF de sortie:
Légende de la figure
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Les documents Microsoft Word permettent aux utilisateurs d’ajouter une légende aux figures.
La spécification nous indique ce qui suit (développez pour voir les détails):
Une légende accompagnant une figure doit être étiquetée avec une balise Légende.
ISO-14289-1, 7.3
Actuellement, Aspose.Words ne peut pas exporter de légendes avec la balise Caption, elles doivent donc être signalées dans le PDF de sortie.
Dans ce bloc, vous pouvez voir des exemples: comment insérer la légende (développez pour voir les détails).
Dans Microsoft Word, la légende peut être insérée via le menu contextuel:
Dans Acrobat, la légende peut être ajoutée ou modifiée via la boîte de dialogue Propriétés `Object`:
Descriptions alternatives
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Les documents Microsoft Word permettent aux utilisateurs d’ajouter du texte alternatif aux images, aux formes et aux tableaux. Aspose.Words exporte un tel texte alternatif vers le PDF de sortie.
La spécification nous indique ce qui suit (développez pour voir les détails):
Tous les éléments de structure dont le contenu n'a pas d'analogue textuel naturel prédéterminé, par exemple des images, des formules, etc., doivent fournir une description textuelle alternative en utilisant l'entrée Alt dans le dictionnaire des éléments de structure...
REMARQUE Les descriptions alternatives fournissent des descriptions textuelles qui facilitent l'interprétation correcte d'un contenu non textuel autrement opaque.
ISO-19005-2, 6.7.5
Dans ce bloc, vous pouvez voir des exemples: comment s'assurer que tous les éléments ont un texte alternatif (développez pour voir les détails).
Les utilisateurs doivent s'assurer que tous les éléments ont un texte alternatif dans le document Word source:
Ou le document PDF de sortie:
Descriptions alternatives pour les hyperliens
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
En plus du point précédent, les documents Microsoft Word permettent également aux utilisateurs d’ajouter du texte alternatif aux hyperliens. Aspose.Words exporte un tel texte alternatif vers le PDF de sortie.
Malheureusement, toutes les applications ne vous permettent pas de définir une description alternative. Par exemple, Adobe Acrobat ne permet actuellement pas de mettre en place une telle description pour les hyperliens. Mais en Microsoft Word, vous pouvez procéder comme suit:
Parfois, il y a un problème: il n’est pas possible de définir un texte alternatif pour les hyperliens générés automatiquement dans la table des matières (TOC) via l’interface graphique Microsoft Word. Aspose.Words pourrait mettre à jour ces champs et générer les liens lui-même.
Suivez l’exemple de code pour mettre à jour les champs TOC
à l’aide du Aspose.Words Document Object Model (DOM):
Document doc = new Document(fileName);
var tocHyperLinks = doc.Range.Fields
.Where(f => f.Type == FieldType.FieldHyperlink)
.Cast<FieldHyperlink>()
.Where(f => f.HRef.StartsWith("#_Toc"));
foreach (FieldHyperlink link in tocHyperLinks)
link.ScreenTip = link.DisplayResult;
PdfSaveOptions opt = new PdfSaveOptions()
{
Compliance = PdfCompliance.PdfUa1,
DisplayDocTitle = true,
ExportDocumentStructure = true,
};
opt.OutlineOptions.HeadingsOutlineLevels = 3;
opt.OutlineOptions.CreateMissingOutlineLevels = true;
var outFile = Path.ChangeExtension(fileName, "_aw.pdf");
doc.Save(outFile, opt);
En-têtes de tableau
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Les tableaux des documents PDF/UA-1 doivent avoir des en-têtes – colonne, ligne ou les deux. PDF/A nécessite uniquement un balisage de tableau standard, qui n’a aucune restriction supplémentaire. Notez que Aspose.Words génère automatiquement le balisage de table standard.
La spécification nous indique ce qui suit (développez pour voir les détails):
Les tableaux doivent inclure des en-têtes… Les tableaux peuvent contenir des en-têtes de colonnes, des en-têtes de lignes ou les deux.
ISO-14289-1, 7.5
Dans ce bloc, vous pouvez voir des exemples: comment définir l'en-tête du tableau (développez pour voir les détails).
L'en-tête du tableau peut être configuré soit à partir du document source Microsoft Word:
Ou le PDF de sortie:
Texte de remplacement
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
La spécification nous indique ce qui suit (développez pour voir les détails):
La spécification nous dit ce qui suit:
Tous les éléments de structure textuelle qui sont représentés de manière non standard, par exemple des caractères personnalisés ou des graphiques en ligne, doivent fournir un texte de remplacement en utilisant l'entrée `ActualText` dans le dictionnaire des éléments de structure...
ISO-19005-2, 6.7.7
Le document Microsoft Word ne permet pas aux utilisateurs de définir un texte de remplacement. Cela doit donc être vérifié et corrigé dans le PDF de sortie:
Extensions des abréviations et des acronymes
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
La spécification nous indique ce qui suit (développez pour voir les détails):
Toutes les instances d'abréviations et d'acronymes dans le contenu textuel doivent être placées dans une séquence de contenu marqué avec une balise Span dont la propriété E fournit une extension textuelle de l'abréviation ou de l'acronyme...
ISO-19005-2, 6.7.8
Le document Microsoft Word ne permet pas aux utilisateurs de définir des extensions d’abréviations et d’acronymes. Cela doit donc être vérifié et corrigé dans le PDF de sortie:
Titre du document
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/A-4 | |
PDF/UA-1 |
Le document au format PDF/UA-1 doit avoir un titre |
La spécification nous indique ce qui suit (développez pour voir les détails):
La spécification nous dit ce qui suit:
Le flux de métadonnées dans le dictionnaire du catalogue du document doit contenir une entrée dc:title, où dc est le préfixe recommandé pour le schéma de métadonnées Dublin Core…
ISO-14289-1, 7.1
Dans ce bloc, vous pouvez voir des exemples: comment définir le titre du document (développez pour voir les détails).
Le titre du document peut être défini soit sur le document source Microsoft Word:
Ou le PDF de sortie:
Exigences de police
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Il existe également un certain nombre de nuances dans l’utilisation des polices lors de la conversion aux formats PDF/A-1, PDF/A-2, PDF/A-4 ou PDF/UA-1 à l’aide de Aspose.Words. Ils doivent être pris en compte si vous souhaitez éviter d’éventuels problèmes avec le document de sortie.
Les sections ci-dessous décrivent ces nuances et options pour leur solution.
Exigences légales en matière de police
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Aspose.Words ne vérifie pas les restrictions légales des polices utilisées – c’est aux utilisateurs de décider. En d’autres termes, un utilisateur ne doit pas fournir de polices inappropriées pour la conversion PDF à l’aide de Aspose.Words.
La spécification nous indique ce qui suit (développez pour voir les détails):
Seuls les programmes de polices légalement intégrables dans un fichier pour un rendu universel et illimité doivent être utilisés.
ISO-19005-2, 6.2.11.4.1 ; ISO-14289-1, 7.21.4.1 (exactement les mêmes citations dans deux spécifications)
.notdef Glyph
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
L’utilisation du .notdef
glyph est interdite. Le .notdef
glyph apparaîtra si un document contient des caractères qui ne sont pas présents dans la police sélectionnée et qui ne peuvent pas non plus être résolus via le mécanisme Font Fallback.
La spécification nous indique ce qui suit (développez pour voir les détails):
Un document conforme ne doit pas contenir de référence au .notdef glyph à partir d'un texte montrant les opérateurs, quel que soit le mode de rendu du texte, dans aucun flux de contenu.
ISO-19005-2, 6.2.11.8 ; ISO-14289-1, 7.21.8 (exactement les mêmes citations dans deux spécifications)
Dans ce bloc, vous pouvez voir des exemples: comment supprimer ou remplacer ces caractères (développez pour voir les détails).
Les utilisateurs doivent supprimer ou remplacer ces caractères dans le document Word source:
Ou le document PDF de sortie à l'aide de l'outil "Modifier le PDF":
Zone à usage privé (PUA)
Niveaux de conformité aux normes PDF dans Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Les caractères PUA (Private Use Area) apparaissent principalement pour les polices symboliques Windows telles que “Symbol”, “Wingdings”, “Webdings” et autres. Les formats Microsoft Word ne fournissent pas d’option pour stocker le texte réel des caractères.
La spécification nous indique ce qui suit (développez pour voir les détails):
Pour la conformité de niveau A uniquement, pour tout caractère... qui est mappé à un ou plusieurs codes dans la zone d'utilisation privée Unicode (PUA), une entrée ActualText... doit être présente pour ce caractère ou une séquence de caractères dont un personnage est une partie.
ISO-19005-2, 6.2.11.7.3
“Segoe UI Symbol” est une police Windows Unicode qui pourrait être utilisée comme alternative aux polices symboliques.
Dans ce bloc, vous pouvez voir des exemples: ce que l'utilisateur doit faire pour résoudre le problème avec les polices symboliques (développez pour voir les détails).
Remplacez la police symbolique par une police Unicode dans le document Word source:
Ou ajoutez une entrée ActualText aux caractères problématiques dans le document PDF de sortie: