Primeiramente, você precisa entender o que é um PDF. PDFs são projetados para imitar uma página impressa e são projetados somente como um formato de saída, não um formato de entrada. um PDF é basicamente um mapa contendo a localização exata dos caracteres (letras individuais ou pontuação, etc.) ou imagens. Na maioria dos casos , um PDF nem armazena informações sobre onde uma palavra termina e outra começa, muito menos coisas como quebras suaves versus quebras duras para finais de parágrafos.
(Alguns PDFs recentes armazenam algumas informações sobre essas coisas, mas essa é uma nova tecnologia, e você teria sorte de encontrar PDFs como esse. Mesmo que você o fizesse, seu visualizador de PDF talvez não o conhecesse.)
De qualquer forma, cabe ao seu software implementar algum tipo de "inteligência artificial" para extrair apenas dos locais de caracteres individuais o que é uma palavra, o que é um parágrafo e assim por diante. Diferentes softwares farão isso melhor que outros, e também dependerá de como o PDF foi feito. Em qualquer caso, você nunca deve esperar resultados perfeitos. Ter o PDF de saída não é o mesmo que ter o documento de origem. É muito melhor tentar obter isso se puder.
A solução padrão para o seu tipo de problema é usar o Adobe Acrobat Professional (o mais caro, não o leitor gratuito) para converter o PDF em HTML. Mesmo isso não vai obter resultados perfeitos.
Existe software livre que pode ser usado para extrair texto de PDFs com alguma formatação intacta, mas, novamente, não espere resultados perfeitos. Veja, por exemplo, calibre (que pode converter em formato RTF), pdftohtml / pdfreflow ou o processador de texto AbiWord (com todos os plugins de importação / exportação habilitados). Há também um plugin de importação de PDF para o OpenOffice.
Mas, por favor, não espere perfeição com nenhum desses resultados. Você está indo contra a corrente aqui. O PDF não é apenas um formato de entrada editável.