PDA

Ver la Versión Completa : ¿Cómo convertir un PDF a Excel o TXT?


steelha
02-07-2013, 19:09:03
Buenas, tiempo sin postear por acá :)
Hace tiempo solicite ayuda con un programa que leía un txt, hacia una serie de cálculos y creaba un txt como resultado de este. Gracias a la ayuda de varias personas pude terminar el programa con muy buenas expectativas. Pero :mad: por alguna razon la empresa que enviaba el txt decide ahora enviar los datos en pdf :( .

Necesito ayuda para ver si es posible pasar este pdf a txt o mejor aun excel sin necesidad de un componente pago. Sería difícil procesar 180 paginas con 42 lineas por pagina. me tomaba de 3 a 4 semanas procesar ese archivo anteriormente y no deseo volver hacerlo.

Programacion : delphi 7
Sistema operativo : Windows

TiammatMX
02-07-2013, 20:20:44
Buenas, tiempo sin postear por acá :)
Hace tiempo solicite ayuda con un programa que leía un txt, hacia una serie de cálculos y creaba un txt como resultado de este. Gracias a la ayuda de varias personas pude terminar el programa con muy buenas expectativas. Pero :mad: por alguna razon la empresa que enviaba el txt decide ahora enviar los datos en pdf :( .

Necesito ayuda para ver si es posible pasar este pdf a txt o mejor aun excel sin necesidad de un componente pago. Sería difícil procesar 180 paginas con 42 lineas por pagina. me tomaba de 3 a 4 semanas procesar ese archivo anteriormente y no deseo volver hacerlo.

Programacion : delphi 7
Sistema operativo : Windows

Una opción: Házlo como un "automation" de tu tabla de datos a Excel, o una exportación a TXT separado por comas (CSV), por que la vía PDF->Excel sin usar Adobe Acrobat la veo BASTANTE complicada.

steelha
02-07-2013, 20:45:13
Gracias por responder tiammat, lo mas seguro no me explique bien.
Los datos lo recibo de una empresa externa a la que laboro, anteriormente me mandaban un txt el cual desarrolle una aplicación para insertar estos datos en el sistemas que actualmente se utiliza y así realizar la tarea de 3 semanas y mucho mas en tan solo minutos; pero al parecer por seguridad de los datos bla bla y mas bla lo estan enviando en PDF para que no se modifiquen ahora mi aplicacion no funciona para nada y tendria que digitar registro por registro en el sistema cosa tediosa.

TiammatMX
02-07-2013, 21:03:34
Gracias por responder tiammat, lo mas seguro no me explique bien.
Los datos lo recibo de una empresa externa a la que laboro, anteriormente me mandaban un txt el cual desarrolle una aplicación para insertar estos datos en el sistemas que actualmente se utiliza y así realizar la tarea de 3 semanas y mucho mas en tan solo minutos; pero al parecer por seguridad de los datos bla bla y mas bla lo estan enviando en PDF para que no se modifiquen ahora mi aplicacion no funciona para nada y tendria que digitar registro por registro en el sistema cosa tediosa.

Que yo sepa, es difícil "romper" un archivo PDF para extraer los textos. ¿Y si le sugieres a tu corresponsal que te envíe un XML? Digo, es menos complicado y les parece seguro a algunas personas.

O en todo caso, que te contacte con algún otro desarrollador de empresas a las que le haga la misma broma envíandole un PDF, para saber cómo lo resolvió.

nlsgarcia
03-07-2013, 02:51:04
steelha,


...ver si es posible pasar este pdf a txt o mejor aun excel sin necesidad de un componente pago...


Revisa este link:

Free PDF Library for Delphi Developers - Quick PDF Library LITE : http://delphi.about.com/b/2012/02/06/free-pdf-library-for-delphi-developers-quick-pdf-library-lite.htm

Free PDF Library : http://www.quickpdflibrary.com/free/lite.php
Espero sea útil :)

Nelson.

nlsgarcia
03-07-2013, 10:29:44
steelha,

Continuación del Msg #5:

Revisa este link:


Function ExtractFilePageText : http://www.quickpdflibrary.com/help/quickpdf/ExtractFilePageText.php

Esta función te permitirá extraer el texto de un documento pdf, sin embargo no esta disponible en Quick PDF Library Lite (Versión Free), pero si en la Quick PDF Library (Versión Trial).

Revisa este código:

procedure TForm1.Button1Click(Sender: TObject);
var
InputFileName : String;
Password : String;
Page, Options : Integer;
OuputFileName : TStringList;
TextPdf : WideString;
PDFLibrary : TDebenuPDFLibrary0914;
UnlockResult : Integer;

begin
PDFLibrary := TDebenuPDFLibrary0914.Create;
try
UnlockResult := PDFLibrary.UnlockKey(TrialKey); // TrialKey es un String con la clave temporal de 30 días del demo.
if UnlockResult = 1 then
begin
InputFileName := 'Test_Document.pdf';
Password:= '';
Page := 1;
Options := 8;
TextPdf := PDFLibrary.ExtractFilePageText(InputFileName, Password, Page, Options);
OuputFileName := TStringList.Create;
OuputFileName.Add(TextPdf);
OuputFileName.SaveToFile('Test_Document.txt');
OuputFileName.Free;
end
else
ShowMessage('Licencia Invalida');
finally
PDFLibrary.Free;
end;
end;

El código anterior es un ejemplo de extracción de texto de un documento PDF con Quick PDF Library (Versión Trial), te sugiero probar esta versión, quizás sirva de base para considerar su adquisición en tu organización.

Otra opción sería salvar el archivo PDF como texto con la opción File -> Save As Other -> Text de Acrobat Reader, lo cual quizás requiera algunos ajustes en tu programa de procesamiento de archivo de texto.

Espero sea útil :)

Nelson.

Neftali [Germán.Estévez]
03-07-2013, 12:31:51
...lo estan enviando en PDF para que no se modifiquen ahora mi aplicacion no funciona para nada y tendria que digitar registro por registro en el sistema cosa tediosa.

Que yo recuerde (de hace un tiempo que estuve revisando el tema), hay algunas utilidades gratuitas (algunas para ejecutar desde la línea de comandos) que te permiten extraer el texto desde un PDF.
Puedes automatizar la ejecución de alguna de estas utilidades para extraer el texto.

Si buscas por internet encontrarás alguna.
NOTA: Con una simple busqueda he encontrado esta (http://www.a-pdf.com/text/), que se puede ejecutar utilizando la línea de comandos como te he dicho, pero hay más. Busca y testea....

steelha
03-07-2013, 15:31:25
Muchas gracias a todos por los consejos, voy a ver los hilos que me proporcionan luego cuento a ver que se pudo.

nlsgarcia
03-07-2013, 17:00:50
steelha,


...voy a ver los hilos que me proporcionan...


Estas son algunas opciones disponibles en Internet (Free y Trial) que pueden ayudarte en tu requerimiento:


1- Free PDF Converter : http://www.any-video-converter.com/products/for_free_pdf_converter/

2- PDF to txt converter : http://www.simpopdf.com/guide/how-to-convert-pdf-to-txt.html

3- PDFMate Free PDF Converter : http://www.pdfmate.com/pdf-to-text.html

4- Boxoft Free PDF To Text Converter : http://www.boxoft.com/pdf-to-text/

5- Easy PDF to Text Converter 2.0.4 : http://www.softpedia.com/get/Office-tools/PDF/Easy-PDF-Text-Converter.shtml

6- Some PDF to Txt Converter : http://download.cnet.com/Some-PDF-to-Txt-Converter/3000-2079_4-10836740.html

7- Free PDF to Text Converter : http://www.mydigitallife.info/free-pdf-to-text-converter-the-best-pdf-to-text-converter/
Nota: Te sugiero salvar el archivo PDF como texto con la opción File -> Save As Other -> Text de Acrobat Reader, lo cual quizás requiera algunos ajustes en tu programa de procesamiento de archivo de texto, pero esta posibilidad también existe con cualquiera de las opciones señaladas anteriormente.

Espero sea útil :)

Nelson.

steelha
03-07-2013, 18:29:08
Muchas gracias nlsgarcia, ya he utilizado la opción de guardar como de adobe PDF pero el resultado es desastroso. He utilizado www.pdftoexel.org y me resulto una maravilla de allí creo que podre hacer algo con el documento en excel. Lo mas idoneo seria que no debiese utilizar ningún otro paso extra para generar el archivo pero nada que le hago.

De nuevo muchas gracias por su interés en ayudar.