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 pas être remplies lors de la conversion automatique d’un document au format Word en 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 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 des Documents
Les exigences actuelles concernent PDF/A-1a, PDF/A-2a, PDF/A-4, et PDF/UA-1 formats.
Il y a quelques nuances sur le fonctionnement de Aspose.Words lors de la conversion vers divers standards de format PDF. Ils doivent être pris en compte si vous souhaitez obtenir le résultat escompté.
La spécification nous dit 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.
ISO 19005-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
PDF niveaux de conformité standard compris entre 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 en-têtes, des paragraphes, des tableaux et autres. Ces blocs forment une structure de document – fortement ou faiblement.
Les structures fortes et faibles sont valables pour PDF/A. Les documents Microsoft Word ont une structure faible par conception, et Aspose.Words crée PDF avec la structure faible respectivement et génère également des en-têtes en fonction des niveaux de contour des paragraphes dans le document source.
Pour un document PDF/UA-1 avec une structure faible, il est en outre nécessaire que les numéros de titre soient classés dans l’ordre sans lacunes.
La spécification nous dit ce qui suit (développez pour voir les détails):
La structure au niveau du bloc 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 d'en-tête (développez pour voir les détails):
Si la sémantique du document exige une séquence décroissante d'en-têtes, cette séquence doit se dérouler dans un ordre numérique strict et ne doit pas ignorer un niveau d'en-tête intermédiaire. H1 H2 H3 est admissible, 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 contour 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 contour 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 contour:
De plus, le niveau du contour 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 en tant qu’artefact
PDF niveaux de conformité standard compris entre 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 peut être mise à jour à l’avenir.
La spécification nous dit 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 artefact, ou si l’un des contenus artefacts est un contenu réel, les clients doivent corriger cela dans la sortie PDF.
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 de sortie PDF (développez pour voir les détails).
Par exemple, les formes peuvent être marquées comme décoratives dans Microsoft Word, elles seront donc exportées vers PDF en tant qu'artefact:
Vous pouvez marquer la forme comme un artefact dans la sortie PDF:
De plus, vous pouvez changer le texte d'un en-tête de l'artefact en contenu réel dans la sortie PDF:
Spécification du Langage Naturel
PDF niveaux de conformité standard compris entre 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 une sortie PDF avec l’attribut Lang attaché à une séquence de contenu marqué ou à une balise Span-elle est contrôlée par la propriété ExportLanguageToSpanTag. Généralement, il n’y a pas de problèmes 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 dit ce qui suit (développez pour voir les détails):
La langue naturelle par défaut pour 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):
La langue naturelle doit être déclarée Changes Les changements de langue naturelle 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 spécifiée correctement (développez pour voir les détails).
Les utilisateurs doivent s'assurer que la langue est spécifiée correctement dans le document Word source:
Ou le document de sortie PDF:
Légende de la Figure
PDF niveaux de conformité standard compris entre 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 de figure.
La spécification nous dit ce qui suit (développez pour voir les détails):
Une légende accompagnant une figure doit être étiquetée avec une étiquette de 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 la sortie PDF.
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 des propriétés `Object`:
Descriptions Alternatives
PDF niveaux de conformité standard compris entre 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, formes et tableaux. Aspose.Words exporte un tel texte alternatif vers la sortie PDF.
La spécification nous dit 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 prédéterminé naturel, par exemple des images, des formules, etc., devrait fournir une description textuelle alternative en utilisant l'entrée Alt dans le dictionnaire d'éléments de structure...
REMARQUE Les descriptions alternatives fournissent des descriptions textuelles qui aident à interpréter correctement 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 de sortie PDF:
Descriptions alternatives pour les hyperliens
PDF niveaux de conformité standard compris entre 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 la sortie PDF.
Malheureusement, toutes les applications ne vous permettent pas de configurer une description alternative. Par exemple, Adobe Acrobat ne permet actuellement pas de configurer une telle description pour les hyperliens. Mais dans Microsoft Word, vous pouvez procéder comme suit:
Parfois, il y a un problème qu’il n’est pas possible de définir du 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 par lui-même.
Suivez l’exemple de code pour mettre à jour les champs TOC
à l’aide du modèle d’objet de document Aspose.Words (DOM):
auto doc = MakeObject<Document>(filename);
auto tocHyperLinks = doc->get_Range()->get_Fields()->
LINQ_Where([](SharedPtr<Field> f) {return f->get_Type() == FieldType::FieldHyperlink; })->
LINQ_Where([](SharedPtr<FieldHyperlink> f) { return f->get_DisplayResult().StartsWith(u"#_Toc"); });
for (const auto& link : tocHyperLinks)
link->set_ScreenTip(link->get_DisplayResult());
auto opt = MakeObject<PdfSaveOptions>();
opt->set_Compliance(PdfCompliance::PdfUa1);
opt->set_DisplayDocTitle(true);
opt->set_ExportDocumentStructure(true);
opt->get_OutlineOptions()->set_HeadingsOutlineLevels(3);
opt->get_OutlineOptions()->set_CreateMissingOutlineLevels(true);
auto outFile = filename.substr(0, filename.find_last_of('.')) + "_aw.pdf";
doc->Save(outFile, opt);
En-Têtes de Tableau
PDF niveaux de conformité standard compris entre 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 table 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 dit 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 colonne, des en-têtes de ligne 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 le document Microsoft Word source:
Ou la sortie PDF:
Texte de Remplacement
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
La spécification nous dit 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 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 à l'aide de l'entrée `ActualText` dans le dictionnaire d'éléments de structure...
ISO-19005-2, 6.7.7
Le document Microsoft Word ne permet pas aux utilisateurs de définir du texte de remplacement. Cela doit donc être vérifié et corrigé dans la sortie PDF:
Abréviations et Acronymes Extensions
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
La spécification nous dit 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 la sortie PDF:
Titre du Document
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/A-4 | |
PDF/UA-1 |
Le document dans PDF/UA-1 doit avoir un titre. |
La spécification nous dit 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 de 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 configuré soit le document Microsoft Word source:
Ou la sortie PDF:
Exigences en Matière de Polices
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2b | |
PDF/A-4 | |
PDF/UA-1 |
Il existe également un certain nombre de nuances de travail avec les polices lors de la conversion en PDF/A-1, PDF/A-2, PDF/A-4 ou PDF/UA-1 formats utilisant 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 Polices
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2b | |
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 en utilisant Aspose.Words.
La spécification nous dit 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 illimité doivent être utilisés.
ISO-19005-2, 6.2.11.4.1; ISO-14289-1, 7.21.4.1 (exactement les mêmes guillemets dans deux spécifications)
.pasdef Glyph
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2b | |
PDF/A-4 | |
PDF/UA-1 |
L’utilisation du glyphe .notdef
est interdite. Le glyphe .notdef
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 de remplacement de la police.
La spécification nous dit ce qui suit (développez pour voir les détails):
Un document conforme ne doit pas contenir de référence au .notdef glyphe de n'importe lequel des opérateurs d'affichage de texte, quel que soit le mode de rendu du texte, dans n'importe quel 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 PDF":
Zone à Usage Privé (PUA)
PDF niveaux de conformité standard compris entre Aspose.Words | Présence d’exigence |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2b | |
PDF/A-4 | |
PDF/UA-1 |
Les caractères PUA (Private Use Area) apparaissent principalement pour les polices symboliques Windows comme “Symbol”," Wingdings", “Webdings”, etc. Les formats Microsoft Word ne permettent pas de stocker du texte réel pour les caractères.
La spécification nous dit ce qui suit (développez pour voir les détails):
Pour la conformité de niveau A uniquement, pour n'importe quel personnage ... qui est mappé à un ou plusieurs codes dans la Zone d'utilisation privée Unicode (PUA), une entrée ActualText... doit être présent pour ce caractère ou une séquence de caractères dont un tel caractère fait partie.
ISO-19005-2, 6.2.11.7.3
“Segoe UI Symbol” est une police Unicode Windows 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: