Questa pagina può contenere testo tradotto automaticamente.
Libreria .NET per la generazione di PDF
Genera documenti PDF utilizzando l'API di layout in grado di creare file PDF complessi o semplici in base alle tue esigenze. Descrivi il layout del tuo documento nel codice utilizzando l'API Fluent. Il potente generatore PDF C# con supporto per il paging farà il resto.
Utilizza gli elementi strutturali come elementi costitutivi nel codice C# o VB.NET per ottenere documenti perfetti. Gli elementi sono pagine, contenitori, tabelle, paragrafi, immagini, collegamenti e simili. La libreria suddividerà automaticamente il contenuto del documento in pagine. Puoi aggiungere intestazioni e piè di pagina. L'API supporta componenti riutilizzabili personalizzati. L'API Layout offre componenti integrati come sommario o filigrane.
L'API di layout è disponibile come componente aggiuntivo gratuito per la libreria Docotic.Pdf. Sia la libreria che il componente aggiuntivo sono DLL di codice gestito al 100%. Non hanno dipendenze esterne di terze parti. Puoi utilizzare l'API per creare documenti PDF su Windows, Linux, negli ambienti cloud Amazon e Azure. Anche macOS, iOS e Android vanno bene.
Docotic.Pdf e il componente aggiuntivo Layout sono disponibili su NuGet e dal nostro sito. Ottieni la libreria, il componente aggiuntivo e una chiave di licenza gratuita a tempo limitato sulla pagina Scarica la libreria PDF C# .NET.
9.5.17615-dev 9.5.17615-devNe sono passati 14,813 Download totali di NuGet 4,924,084
API fluente per creare PDF
Il componente aggiuntivo fornisce un'API fluente. È possibile concatenare la maggior parte delle chiamate. Ciò porta a un codice più compatto rispetto ai framework "dichiarativi". Ed è ancora possibile utilizzare tutti gli approcci normali allo sviluppo del codice. Ad esempio, puoi rendere l'implementazione del layout più concisa con parti riutilizzabili di classi e metodi helper.
Come creare un documento PDF in C#
Ok, è il momento di fare alcuni esempi.
Ciao, PDF!
Ecco un semplice esempio che mostra come generare PDF in C# utilizzando l'API Layout. Crea un documento con due pagine. È un po' sintetico ma illustra il modo in cui funziona l'API.
PdfDocumentBuilder.Create().Generate("pages.pdf", doc =>
{
doc.Pages((PageLayout page) =>
{
page.Size(PdfPaperSize.A5);
page.Header().PaddingTop(70).AlignCenter().Text("Hello, PDF!");
page.Content().Column(c =>
{
for (int i = 0; i < 10; i++)
c.Item().AlignCenter().Text($"Page 1 block {i + 1}");
c.Item().PageBreak();
c.Item().Text("Page 2");
});
page.Footer().Text(t => t.CurrentPageNumber());
});
});
Il metodo PdfDocumentBuilder.Generate fornisce un'istanza della classe Document. Utilizzando l'oggetto e il suo metodo Pages è possibile definire un layout per una o più pagine.
Il codice di esempio imposta la dimensione della pagina e descrive i contenuti negli slot Header
,
Content
e Footer
. Tutti questi slot hanno lo stesso tipo
LayoutContainer. LayoutContainer
è un elemento
chiave dell'API di layout. Utilizzando i contenitori è possibile generare layout arbitrari.
Il motore di layout genera pagine per contenere tutti i dati. Il numero esatto dipende dal contenuto in PageLayout.Content e in altri slot. La libreria ripete il contenuto degli slot Header e Footer su ogni pagina. Tutte le pagine avranno la stessa dimensione.
Per avere pagine con layout o dimensioni diverse, utilizza più di una chiamata al metodo Pages.
Crea PDF di testo in C#
Un'attività comune è convertire una stringa di testo in un file PDF. Il codice seguente usa l'API di layout per creare un documento PDF da un file di testo in C#.
PdfDocumentBuilder
.Create()
.Generate("long-text.pdf", doc => doc.Pages(page =>
{
string text = File.ReadAllText(@"PDF_Succinctly.txt");
page.Content().Text(text);
}));
Il codice legge tutto il testo dal file e lo utilizza per lo slot Content. Non è necessario calcolare alcuna dimensione o dividere la stringa di testo in blocchi. Il componente aggiuntivo Layout si occupa di tutte queste attività. Utilizzando l'API, è facile convertire il testo in PDF nel codice C#.
Crittografa PDF in .NET
Per produrre un PDF crittografato, utilizzare un gestore di crittografia come nell'esempio di codice C# seguente.
PdfDocumentBuilder
.Create()
.Encryption(new PdfStandardEncryptionHandler("owner", "user"))
.Generate("encrypted-with-password.pdf", doc => doc.Pages(page =>
{
// disporre qui il contenuto della pagina
}));
La libreria produrrà un PDF crittografato con le password dell'utente e del proprietario. È possibile specificare le autorizzazioni PDF per gli utenti del documento crittografato. Puoi anche proteggere i PDF con certificati.
Ulteriori letture
L'API Layout offre molti mezzi per generare PDF in C#. Ti invitiamo a leggerli nei seguenti articoli: