Mupdf: encontrando palavras hifenizadas em arquivo PDF

2

Quando procuro uma palavra em um arquivo PDF usando mupdf . Só encontra a palavra toda. Por exemplo, procurar pela palavra "sem sentido" encontrará a palavra inteira:

This is a short, staggeringly meaningless sentence.

Não há como saber antecipadamente se uma palavra é dividida em duas linhas - e portanto: hifenizada - ou não. A busca por hifenização explicitamente também seria incômoda demais. No entanto, quando uma palavra é quebrada no final de uma linha, ela não será encontrada. A pesquisa por "sem sentido" não encontrará a palavra neste exemplo:

This is a short, staggeringly meaning-
less sentence.

O visualizador de PDF "Evince" se comporta da mesma maneira. Existe uma maneira (simples) de fazer "Mupdf" encontrar termos hifenizados?

    
por Philipp 19.09.2018 / 11:52

3 respostas

3

Observe que o PDF não contém o texto original, mas uma descrição com a qual os glifos devem ser colocados. A pesquisa de texto em um PDF depende de (1) o PDF ter tabela (s) que descrevem quais glifos correspondem a quais caracteres unicode (2) uma maneira de remontar esses caracteres traduzidos em suposições de palavras (3) sobre como o aplicativo de geração funcionou, por exemplo coloque os glifos na ordem do texto (o que, por exemplo, falhará horrendamente quando o texto de duas colunas for renderizado em ambas as colunas simultaneamente).

Para levar em conta a hifenização, seria necessário implementar um algoritmo que detectasse traços no final de uma linha (diferentes glifos poderiam ser usados para isso) e mesclasse a palavra (e considerasse as regras especiais de hifenização , por exemplo, para o alemão ck ).

Então, sim, isso pode ser feito, mas não facilmente, e então funcionaria apenas para alguns idiomas / scripts.

    
por 19.09.2018 / 12:26
2

A pesquisa por palavra em um PDF é realmente uma função do visualizador. Assim, cada espectador adota uma abordagem diferente em relação ao que trabalhará. Na prática, achei que o Okular era a melhor escolha entre todos os visualizadores de PDF que eu havia testado. Tanto quanto é do meu conhecimento, o Mupdf não consegue lidar com palavras hifenizadas.

    
por 19.09.2018 / 12:10
2

Eu não sei como fazer isso dentro do MuPDF, mas uma forma de obter essas linhas / correspondências é filtrá-lo com pdftotext

 pdftotext file.pdf - | grep 'meaningless'

Por padrão, o pdftotext não hifena as linhas.

    
por 20.09.2018 / 18:46

Tags