Caracteres incorretos nas propriedades do documento a partir de arquivos PDF
O processo de exibição ou impressão de conteúdo usando fonte em páginas PDF pode usar uma variedade de codificações. O processo de extração de texto de uma página PDF requer um mapeamento UNICODE de um caractere de página codificado para um ponto de código Unicode.
Para extrair conteúdo do PDF para UNICODE, as fontes incluem uma tabela que mapeia cada caractere PDF para seu equivalente UNICODE. Algumas fontes incluem vários caracteres parecidos. Por exemplo, uma fonte pode incluir um traço, um sinal de menos e um hífen. Embora pareçam muito semelhantes, cada um é um personagem diferente e é desenhado de forma ligeiramente diferente. Cada um deles também tem um codepoint UNICODE diferente. A tabela de mapeamento determina qual caractere UNICODE é usado.
Quando RICOH ProcessDirector extrai valores de propriedade de documento de um arquivo PDF usando um arquivo de controle criado em Plug-in do RICOH ProcessDirector para Adobe Acrobat, ele lê o valor em UNICODE. Em seguida, o valor é gravado no arquivo de propriedades do documento (DPF), que requer que os dados sejam codificados no formato UTF-8. O formato UTF-8 usa sequências de caracteres de vários bytes para representar códigos UNICODE fora da faixa de codificação ASCII. Como resultado, o valor é convertido ao caracter equivalente de UNICODE quando é adicionado ao arquivo DPF.
Podem ocorrer problemas quando os valores do DPF são gravados de volta no arquivo PDF. Se os caracteres UNICODE não tiverem equivalentes PDF na fonte, são inseridos caracteres incorretos. Estes problemas ocorrem mais frequentemente com fontes subconfiguradas e Identity-H. Podem ocorrer problemas adicionais quando se procura caracteres explícitos, mas os pontos de código UNICODE no DPF não são os caracteres esperados.
A solução ideal é atualizar o arquivo PDF de entrada para que ele inclua fontes completas em vez de subconjuntos. Outra opção é adicionar uma etapa em seu fluxo de trabalho que corrija as propriedades do DPF. O utilitário native2ascii pode ser usado para normalizar o arquivo DPF para uma codificação de caracteres ASCII. Os codepoints UNICODE que foram codificados como UTF-8, serão normalizados para um formulário \u######. Um editor ou um script de filtro pode ser usado para alterar o caractere de problema do UNICODE \u###### para o caractere ASCII real necessário. Assim que a versão ASCII do DPF for atualizada, o utilitário native2ascii será utilizado para converter o DPF de volta para a codificação UTF-8 necessária.
O utilitário native2ascii converte texto em Unicode Latin-1. Ele é fornecido com o RICOH ProcessDirector.
- No Linux, o utilitário native2ascii é armazenado em:
/opt/infoprint/ippd/jre/bin
- No Windows, o utilitário native2ascii.exe é armazenado em:
C:\Program Files\Ricoh\ProcessDirector\jre\bin
O utilitário é fornecido com o Kit de Desenvolvimento Java que você pode transferir deste site: http://www.oracle.com/technetwork/java/javase/downloads
As instruções de como usar o utilitário (para Java 6) encontram-se aqui: http://download.oracle.com/javase/6/docs/technotes/tools/#intl