pdf
é um conjunto de tipos para produzir uma saída visual, não é estritamente necessário conter informações de texto. Imagine isso como uma placa de impressora com letras de chumbo colocadas nela. Cada letra é uma caixa com posição, tamanho e estilo absolutos. Então são todas as imagens e assim por diante. Se você tem uma fórmula matemática, pode ver onde está o problema: quem disse que o texto é linear? Você tem uma mistura de glifos, cada um posicionado e dimensionado, no entanto, o criador original pretendia.
Você tem a possibilidade de obter alguma semelhança com o texto verdadeiro, porque pdf
é uma versão simplificada (e atualizada / ajustada) do postscript e ainda possui comandos que "imprimem" seqüências mais longas de cada vez ( que são exibidos ao estilo especificado com fontes incorporadas). Isso é o que você obtém com pdftotext
. Ainda assim, as novas linhas, espaços em branco e assim por diante, podem ser confusas se a saída do aplicativo original dividi-lo em palavras ou letras para obter a aparência visual desejada.
Você está sem sorte se o texto foi convertido em splines bezier ou se o documento foi digitalizado. Muitos espectadores modernos têm recursos de OCR, portanto, algumas formas rudimentares de pesquisa e seleção ainda funcionam nelas. Mas não espere obter uma saída bem formatada - a extração de texto é principalmente engenharia reversa.
Um documento mais estruturado seria necessário para lidar com isso adequadamente - algo que continha tanto o conteúdo semântico, quanto recursos de exibição independentes de dispositivo fixos. Nós não temos isso. html
é inadequado para saída paginada e o oxps
não é muito melhor do que pdf
nesse assunto.