Caractères incorrects dans les propriétés de document provenant de fichiers PDF
Le processus d'affichage ou d'impression de contenu à l'aide d'une police de caractères sur une page PDF peut utiliser une variété d'encodages. Le processus d'extraction de texte à partir d'une page PDF nécessite un mappage UNICODE à partir d'un caractère de page codé vers un point de code Unicode.
Pour extraire le contenu d'un fichier PDF vers UNICODE, les polices incluent une table qui mappe chaque caractère PDF avec son équivalent UNICODE. Certaines polices comprennent plusieurs caractères semblables. Par exemple, une police peut inclure un tiret, un signe moins et un trait d'union. Bien qu'ils soient très semblables, chacun d'eux est un caractère différent et est dessiné légèrement différemment. Chacun d'entre eux a également un point de code UNICODE différent. La table de mappage détermine quel caractère UNICODE est utilisé.
Lorsque RICOH ProcessDirector extraie les valeurs des propriétés de document à partir d'un fichier PDF à l'aide d'un fichier de contrôle créé dans Plug-in RICOH ProcessDirector pour Adobe Acrobat, il lit la valeur en UNICODE. La valeur est ensuite enregistrée dans le fichier de propriétés du document (DPF), qui requiert que les données soient encodées au format UTF-8. Le format UTF-8 utilise des séquences de caractères de plusieurs octets pour représenter les points de code UNICODE en dehors de la plage de codage ASCII. Par conséquent, la valeur est convertie en caractère équivalent UNICODE lorsqu'elle est ajoutée au fichier DPF.
Des problèmes peuvent survenir lorsque les valeurs du DPF sont réécrites dans le fichier PDF. Si les caractères UNICODE n'ont pas d'équivalent PDF dans la police, des caractères incorrects sont insérés. Ces problèmes surviennent le plus souvent avec les polices en sous-ensemble et Identity-H. Des problèmes supplémentaires peuvent survenir lorsque vous recherchez des caractères explicites, mais que les points de code UNICODE dans le DPF ne sont pas les caractères attendus.
La solution idéale consiste à mettre à jour le fichier PDF d'entrée pour qu'il inclue des polices complètes au lieu de sous-ensembles. Une autre option consiste à ajouter une étape à votre flot de données qui corrige les propriétés du DPF. L'utilitaire native2ascii peut être utilisé pour normaliser le fichier DPF selon un codage de caractères ASCII. Les points de code UNICODE codés en UTF-8 seront normalisés sous la forme \u######. Un éditeur ou un script de filtrage peut être utilisé pour convertir le caractère posant un problème du code UNICODE \u###### en caractère ASCII réel requis. Une fois que la version ASCII du DPF est mise à jour, l'utilitaire native2ascii est utilisé pour convertir le DPF vers l'encodage UTF-8 requis.
L'utilitaire native2ascii convertit le texte au format Unicode Latin-1. Il est livré avec RICOH ProcessDirector.
- Sous Linux, l'utilitaire native2ascii se trouve dans le répertoire
/opt/infoprint/ippd/jre/bin
- Sous Windows, l'utilitaire native2ascii.exe est stocké dans :
C:\Program Files\Ricoh\ProcessDirector\jre\bin
L'utilitaire est également fourni avec le kit de développement de Java, que vous pouvez télécharger sur ce site : http://www.oracle.com/technetwork/java/javase/downloads
Vous trouverez les instructions d'utilisation de l'utilitaire (pour Java 6) ici : http://download.oracle.com/javase/6/docs/technotes/tools/#intl