
Leer y procesar archivos PDF mediante programación en C# es un requisito común para los desarrolladores de .NET que crean sistemas de automatización de documentos, extracción de datos y generación de informes. Las bibliotecas tradicionales de análisis de PDF exigen código complejo para extraer texto, preservar el formato y analizar tablas. Con frecuencia producen resultados deficientes para diseños irregulares, contenido desalineado y estructuras de tablas no estándar.
Si desea una forma simple e impulsada por IA de leer PDF en C# y exportar el contenido PDF a otros formatos, Spire.Agent.Office es una gran opción. Este SDK de agente de IA de .NET impulsa flujos de trabajo de análisis y conversión de PDF mediante instrucciones en lenguaje natural. Funciona sin Adobe Acrobat ni software PDF externo de terceros.
En este tutorial, presentaremos cómo usar IA para leer PDF en C#, con ejemplos de código completos y ejecutables para:
- Extraer contenido PDF a TXT
- Convertir PDF a Word editable
- Leer tablas PDF a CSV/Excel
- Procesar por lotes varios PDF
¿Por qué elegir Spire.Agent.Office en lugar de otros lectores PDF con IA?
Internet está lleno de lectores PDF con IA genéricos, pero la mayoría carece de flexibilidad para desarrolladores, seguridad empresarial y precisión en el análisis estructural. Spire.Agent.Office es un SDK de procesamiento de documentos con IA creado para el ecosistema .NET. Combina el análisis con IA con API de documentos de Office. Puede leer, analizar y convertir archivos PDF, Word, Excel y PowerPoint pasando simples indicaciones en lenguaje natural.
Ventajas clave para la lectura de PDF con IA en C#:
- SDK centrado en el desarrollador: creado para una integración de API perfecta en aplicaciones personalizadas, CRM, canalizaciones de automatización y sistemas de back-end
- Precisión de datos estructurados: preservación superior de tablas y diseño
- Seguridad empresarial: las opciones de procesamiento local evitan que datos PDF confidenciales se filtren a herramientas en la nube de terceros
- Compatibilidad con múltiples formatos: lee PDF y documentos de Office en un único agente unificado
- Código mínimo: reemplace cientos de líneas de lógica de análisis manual con simples llamadas a indicaciones de IA para acelerar el desarrollo.
Configuración: proyecto, espacios de nombres y token
- 1. Instalar el paquete NuGet
Cree su proyecto .NET e instale la biblioteca; todas las dependencias se instalan automáticamente.
Install-Package Spire.Agent.Office
- 2. Agregar los espacios de nombres
Tres directivas using le proporcionan todo lo necesario para el procesamiento de PDF con IA:
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Pdf;
- 3. Configurar SpireToken
Spire.Agent.Office requiere una clave SpireToken válida. Puede solicitar aquí una clave temporal para evaluación.
AIOptions options = new AIOptions();
options.SpireToken = "YOUR_SPIRE_TOKEN_KEY";
Ejemplo 1: Extraer texto de PDF con un agente de IA de .NET
Extraer el contenido de texto sin formato suele ser la primera etapa de cualquier flujo de procesamiento de documentos. Spire.Agent.Office le permite analizar el contenido de PDF y escribir los resultados directamente en un archivo TXT mediante instrucciones en lenguaje natural.
Casos de uso comunes: crear índices de búsqueda, alimentar documentos a flujos posteriores de NLP, registro de auditoría y detección de cambios de contenido.
Código C#: PDF a TXT
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Pdf;
string inputPath = @"input0.pdf";
string outputPath = @"output.txt";
string key = "YOUR_SPIRE_TOKEN_KEY";
if (!string.IsNullOrEmpty(inputPath) && File.Exists(inputPath))
{
AIOptions options = new AIOptions();
options.SpireToken = key;
using (PdfDocument pdf = new PdfDocument())
{
pdf.LoadFromFile(inputPath);
// Get the AI processor for PDF
AIDocumentProcessor processor = pdf.AI(options);
// Natural language instruction
string instruction = "Read all text content from the PDF file, retain paragraph layout, and save as a TXT file";
// Execute the AI instruction
AIResult result = processor.ExecuteInstruction(pdf, instruction, outputPath);
}
}
El archivo TXT generado conserva la estructura de párrafos del PDF. Para extraer texto simple sin formato de párrafos, cambie la instrucción de IA según sea necesario.

Ejemplo 2: Convertir PDF a Word editable con un agente de IA de .NET
Los PDF estándar no son editables, lo que dificulta la revisión y la reutilización del contenido. La IA de Spire.Agent.Office lee el diseño del PDF, los estilos de fuente y la estructura de párrafos, y luego convierte PDF estáticos en archivos DOCX totalmente editables mientras mantiene el formato coherente.
Caso de uso real: los equipos de compras o legales reciben acuerdos de proveedores en formato PDF y necesitan archivos DOCX editables para revisar cambios, insertar comentarios y comparar versiones.
Código C#: PDF a Word
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Pdf;
string inputPath = @"supplier_agreement.pdf";
string outputPath = @"supplier_agreement_editable.docx";
string key = "YOUR_SPIRE_TOKEN_KEY";
if (!string.IsNullOrEmpty(inputPath) && File.Exists(inputPath))
{
AIOptions options = new AIOptions();
options.SpireToken = key;
using (PdfDocument pdf = new PdfDocument())
{
pdf.LoadFromFile(inputPath);
// Get the AI processor for PDF
AIDocumentProcessor processor = pdf.AI(options);
// Natural language instruction
string instruction = "Convert this supplier agreement PDF into an editable Word document. " +
"Retain hierarchical clause numbering (1, 1.1, 1.2…), use Word's multilevel list, no hardcoded numbers. " +
"keep section headings in bold, and convert tables to native Word tables at original positions. " +
"Do not flatten the layout into plain paragraphs. Keep signature block formatting intact.";
// Execute the AI instruction
AIResult result = processor.ExecuteInstruction(pdf, instruction, outputPath);
}
}
Beneficios clave
- Retención de la estructura de cláusulas: las cláusulas legales numeradas permanecen correctamente estructuradas para el control de cambios
- Preservación de tablas: las tablas de precios y los anexos permanecen como tablas reales de Word
- Código mínimo: una sola instrucción reemplaza lo que tradicionalmente requeriría extensas llamadas a API a múltiples componentes

Ejemplo 3: Leer tablas de PDF a CSV/Excel con un agente de IA de .NET
Una de las funciones más potentes de Spire.Agent.Office es su capacidad para comprender y extraer datos estructurados de tablas PDF. Los escenarios empresariales incluyen automatización de cuentas por pagar, conciliación de extractos bancarios y procesamiento de informes financieros.
Código C#: extracto bancario PDF a CSV
Si descarga un extracto PDF cada mes y necesita importar transacciones a un software de contabilidad, este ejemplo es para usted.
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Pdf;
string inputPath = @"bank_statement_1.pdf";
string outputPath = @"bank_transactions.csv";
string key = "YOUR_SPIRE_TOKEN_KEY";
if (!string.IsNullOrEmpty(inputPath) && File.Exists(inputPath))
{
AIOptions options = new AIOptions();
options.SpireToken = key;
using (PdfDocument pdf = new PdfDocument())
{
pdf.LoadFromFile(inputPath);
// Get the AI processor for PDF
AIDocumentProcessor processor = pdf.AI(options);
// Natural language instruction
string instruction = "Extract all transactions from this bank statement into a CSV." +
" Include: Transaction Date, Description, Reference Number, Debit Amount, Credit Amount," +
" and Running Balance. Use empty cells (not zeros) when a debit or credit field doesn't apply to a row." +
" Exclude opening balance, closing balance, and any summary totals." +
" Preserve the original transaction order as they appear on the statement.";
// Execute the AI instruction
AIResult result = processor.ExecuteInstruction(pdf, instruction, outputPath);
}
}

Código C#: informe financiero PDF a Excel
Para exportar tablas PDF a Excel, simplemente cambie el formato de salida (.xlsx) y ajuste las instrucciones. Por ejemplo, si tiene un informe PDF trimestral con varias tablas en distintas páginas, puede extraer todo en un único libro de trabajo con hojas separadas:
string inputPath = @"Q3_2024_financial_report.pdf";
string outputPath = @"Q3_2024_financials.xlsx";
string instruction = "This PDF contains multiple financial tables across several pages:" +
" Revenue by Region, Cost of Goods Sold, Operating Expenses, and Cash Flow Summary." +
" Extract each table into its own named worksheet in the output Excel file." +
" Use the table's section heading as the sheet name. Keep column headers on the" +
" first row of each sheet, ensure all currency values are numeric (strip out '{BODY_CONTENT}#39; and ',")," +
" and preserve the original row and column order.";
Ejemplo 4: Muchos PDF, una instrucción (procesamiento por lotes)
La mayoría de las cargas de trabajo de automatización del mundo real manejan lotes de documentos (por ejemplo, docenas de PDF de facturas). Use el parámetro attachmentPaths:
- Cree una instancia de un
PdfDocumentvacío. - Pase su colección de rutas de archivos PDF mediante
attachmentPaths. - Escriba una instrucción que describa cómo combinar o agregar las salidas.
Este patrón habilita casos de uso como consolidar muchas facturas en un único libro de Excel agregado.
Código C#: procesamiento por lotes de facturas PDF
using Spire.Agent.Office.AI;
using Spire.Agent.Office.Extensions;
using Spire.Pdf;
string[] invoicePaths = Directory.GetFiles(@"F:\Invoices", "*.pdf");
string outputPath = @"consolidated_invoices.xlsx";
string key = "YOUR_SPIRE_TOKEN_KEY";
AIOptions options = new AIOptions();
options.SpireToken = key;
using (PdfDocument pdf = new PdfDocument())
{
// Get the AI processor for PDF
AIDocumentProcessor processor = pdf.AI(options);
// Natural language instruction for batch processing
string instruction = "Read all attached invoice PDFs and consolidate them into one Excel workbook. " +
"Create one row per invoice with columns: Invoice Number, Vendor Name, Invoice Date, " +
"Due Date, Subtotal, Tax, Total Amount. Sort by Invoice Date ascending.";
// Execute with attachment paths
AIResult result = processor.ExecuteInstruction(pdf, instruction, outputPath, invoicePaths);
}
La API de un vistazo
| Componente de API | Propósito | Método/propiedad clave |
|---|---|---|
AIOptions |
Objeto de configuración |
SpireToken, WorkDir, TimeoutMs
|
AIDocumentProcessor |
Punto de entrada principal del procesamiento de IA | ExecuteInstruction() |
pdf.AI(options) |
Método de extensión en PdfDocument | Devuelve AIDocumentProcessor
|
AIResult |
Contrato de resultado de ejecución |
Success, TokenUsage
|
attachmentPaths |
Parámetro de documentos de soporte | Se pasa a ExecuteInstruction()
|
Prácticas recomendadas para una extracción confiable
1. Escriba requisitos de salida específicos en las instrucciones
Evite indicaciones vagas como “extraer los datos”. Defina el formato de destino, las columnas y la estructura (p. ej., “exportar a libro de Excel, una fila por elemento de línea”).
2. Coloque la lógica de negocio en las instrucciones
Implemente filtrado, ordenación y normalización dentro de las indicaciones en lugar de codificar de forma rígida desplazamientos posicionales o coordenadas. La lógica se mantiene legible para humanos y fácil de mantener.
3. Valide AIResult.Success
Compruebe el estado de ejecución en cada llamada. Los fallos silenciosos pueden interrumpir canalizaciones de automatización no atendidas.
if (result == null || !result.Success)
{
throw new InvalidOperationException(
{BODY_CONTENT}quot;AI instruction failed: {result?.ErrorMessage ?? "Unknown error"}");
}
4. Valide la salida.
Para datos financieros o de cumplimiento, ejecute sus propias comprobaciones en el archivo producido: recuento de filas, totales de columnas, conformidad con el esquema. El agente produce el artefacto; su canalización sigue siendo responsable de la exactitud.
Reflexiones finales
Los ejemplos anteriores muestran cómo el SDK Spire.Agent.Office puede aprovechar la IA para leer PDF a TXT, reconstruir PDF como documentos de Word editables, extraer extractos bancarios y tablas financieras a CSV o Excel, y consolidar lotes de facturas en un único libro de trabajo. En cada caso, el código permanece pequeño, las instrucciones siguen siendo legibles y la salida permanece lo suficientemente estructurada para la automatización posterior.
Si su equipo dedica tiempo a escribir lógica de análisis frágil o a reingresar manualmente datos de PDF, Spire.Agent.Office ofrece un camino práctico a seguir. Instale el paquete NuGet, agregue su token y comience con un flujo de trabajo. A partir de ahí, puede ampliarlo al procesamiento por lotes y crear canalizaciones de automatización de documentos que sean más rápidas de desarrollar, más fáciles de mantener y más resistentes frente a PDF del mundo real.
Preguntas frecuentes (FAQ)
P: ¿Qué precisión tiene la extracción de tablas?
Spire.Agent.Office utiliza análisis impulsado por IA que comprende la estructura de las tablas, incluidas tablas irregulares y celdas combinadas. Para obtener mejores resultados, proporcione instrucciones claras sobre el formato de salida esperado.
P: ¿Puedo procesar PDF protegidos con contraseña?
Sí. Puede cargar PDF protegidos con contraseña proporcionando la contraseña al llamar a pdf.LoadFromFile(inputPath, password).
P: ¿Cómo manejo lotes grandes de PDF?
Use el parámetro attachmentPaths para pasar varios archivos en una sola instrucción. El agente de IA los procesa en conjunto y produce una salida consolidada.
P: ¿Cómo establezco un tiempo de espera para el procesamiento de IA?
Puede configurar el tiempo de espera mediante la propiedad TimeoutMs en AIOptions:
AIOptions options = new AIOptions();
options.SpireToken = key;
options.TimeoutMs = 120000; // 2 minutes
Más ejemplos
- Auditoría de Excel impulsada por IA en C#: detecte errores y anomalías de datos
- Generación de documentos con IA: de datos a documentos listos para usar
- Censura de documentos impulsada por IA en C#: preserve el formato
- Traductor de documentos con IA: traduzca archivos Word, Excel y PowerPoint en C#
- Automatice cálculos en Excel con un agente de IA de .NET