Aspose.PDF FOSS para .NET es una biblioteca con licencia MIT para crear y trabajar con documentos PDF en C# y .NET. El punto de entrada central es la clase Document, que admite la construcción a partir de ruta de archivo, matriz de bytes, flujo o fuentes protegidas con contraseña, y expone las operaciones Open, Save, Merge, Encrypt, Decrypt y Convert en toda la especificación PDF.
La biblioteca expone 805 clases que cubren la estructura del documento a través de Document, Page y PageCollection; anotaciones enriquecidas mediante AnnotationCollection (incluyendo AddTextAnnotation, AddLinkAnnotation, AddHighlightAnnotation, AddWatermarkAnnotation y AddRedactAnnotation); formularios interactivos con Form, ButtonField, CheckboxField, RadioButtonField y ChoiceField; extracción de texto y búsqueda a través de TextFragmentAbsorber y TextFragment; detección de tablas con AbsorbedTable, AbsorbedRow y AbsorbedCell; y seguridad de documentos mediante Document.Encrypt y Document.Decrypt. La conversión de formatos admite HTML, SVG y la importación de Markdown junto con la exportación a PDF.
Instale Aspose.PDF FOSS para .NET desde NuGet: dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. La biblioteca está totalmente bajo licencia MIT sin tarifas de tiempo de ejecución ni restricciones de uso. Para funciones empresariales y soporte, consulte Aspose.PDF for .NET — Enterprise Product.
Document() o abrir archivos existentes a través de Document.Open(path), Document.Open(data) o Document.Open(stream).PageCollection. Cada Page expone Width, Height, MediaBox, rotación y Annotations.Document.Merge(documents) o Document.MergeDocuments(files). Importa páginas específicas con Document.ImportPage y Document.ImportPages.DocumentInfo y Document.GetOrCreateMetadata().Document.Save(filename), Document.Save(stream, format) o Document.ToArray().Document y poblando páginas con contenido.Document.ImportPage y la Page API.Document.MergeDocuments.AnnotationCollection expone métodos para anotaciones de texto, enlace, resaltado, subrayado, tachado, cuadrado, círculo, línea, tinta, sello, cursor, redactado, marca de agua, polígono y polilínea.AddLinkAnnotation(rect, uri) o enlaces internos de salto de página con AddLinkAnnotation(rect, destinationPage, destRect).Document.Form para enumerar o crear instancias de ButtonField, CheckboxField, RadioButtonField y ChoiceField.AnnotationSelector con sobrecargas por tipo Visit.AnnotationFlags.AddRedactAnnotation.AddWatermarkAnnotation y AddStampAnnotation.TextFragmentAbsorber para localizar todos los fragmentos de texto en una página o en todo un documento, con coincidencia de frase opcional.TextFragment expone Text, Position, TextState (fuente, tamaño, color), y rectángulo delimitador.TextFragmentState proporciona acceso a Font, FontSize, ForegroundColor, BackgroundColor, y modo de renderizado.AbsorbedTable, AbsorbedRow y AbsorbedCell, cada uno proporcionando Rect y TextFragments.AbsorbedTable para analizar datos tabulares de filas y columnas de PDFs financieros.Document.Encrypt(userPassword, ownerPassword, permissions, algorithm) usando Algorithm.AESx128, AESx256 o RC4x128.DocumentPrivilege.Document.ChangePasswords.Document.Decrypt().Signature y Algorithm.DocumentPrivilege para evitar la copia.Abra un PDF existente, adjunte una anotación de enlace URI a la página 1 y guarde el resultado.
using Aspose.Pdf;
var data = System.IO.File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
var page = doc.Pages[1];
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
new Rectangle(50, 700, 200, 720), action);
using var ms = new System.IO.MemoryStream();
doc.Save(ms);
System.IO.File.WriteAllBytes("output.pdf", ms.ToArray());
Estampe una marca de agua en la página 1 de un documento existente y realice un viaje de ida y vuelta mediante la serialización.
using Aspose.Pdf;
var input = System.IO.File.ReadAllBytes("report.pdf");
using var doc = Document.Open(input);
doc.Pages[1].Annotations.AddWatermarkAnnotation(
new Rectangle(0, 0, 612, 792), "CONFIDENTIAL");
var saved = doc.ToArray();
System.IO.File.WriteAllBytes("watermarked.pdf", saved);
Utilice TextFragmentAbsorber para enumerar todos los fragmentos de texto en la primera página.
using Aspose.Pdf;
using Aspose.Pdf.Text;
var data = System.IO.File.ReadAllBytes("document.pdf");
using var doc = Document.Open(data);
var absorber = new TextFragmentAbsorber();
absorber.Visit(doc.Pages[1]);
foreach (var fragment in absorber.TextFragments)
{
Console.WriteLine(fragment.Text);
}
Aspose.PDF FOSS para .NET se publica bajo la Licencia MIT, permitiendo su uso gratuito en productos comerciales sin tarifas de tiempo de ejecución. El código fuente está disponible públicamente en GitHub.
Instale desde NuGet usando dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. La biblioteca está dirigida a .NET 8 y versiones posteriores sin dependencias nativas.
La biblioteca lee y escribe PDF y admite la importación de HTML, SVG y Markdown. También está disponible la exportación raster — las páginas PDF pueden renderizarse a BMP, JPEG, PNG y TIFF.
Utilice Document.Create() para crear un documento vacío, luego añada páginas y guarde con Document.Save(stream) o Document.ToArray().
No se requiere clave de licencia ni paso de activación. La biblioteca funciona completamente sin licencia y sin costo bajo la Licencia MIT.