1. Produktai
  2.   PDF
  3.   .NET
  4.   QuestPDF
 
  

Nemokamos .NET API, skirtos PDF dokumentams apdoroti

Atvirojo kodo .NET biblioteka, skirta PDF failams kurti, redaguoti, įkelti ir tvarkyti. Pridėkite naujų puslapių, lentelių, vaizdų, teksto ir formų į PDF failus.

QuestPDF yra labai naudinga atvirojo kodo moderni .NET biblioteka, leidžianti programinės įrangos kūrėjams lengvai generuoti, skaityti, keisti ir valdyti PDF dokumentus. Biblioteka yra labai turtinga funkcijų ir siūlo išdėstymo variklį, sukurtą turint omenyje visišką ieškos palaikymą. Biblioteką labai lengva valdyti ir ji tikrai gali pagreitinti jūsų kūrimo ciklą. Biblioteka palaiko karšto perkrovimo galimybę, o tai reiškia, kad ji teikia kūrėjams realiojo laiko rezultatus, nereikia perkompiliuoti kodo.

QuestPDF biblioteka yra labai sklandi ir ją labai lengva kurti, tinkinti ir valdyti kai kuriuos sudėtingiausius dokumentus, naudojant tik kelias kodo eilutes. Yra keletas kitų bibliotekos funkcijų, pvz., paprasto teksto piešimas, teksto piešimas naudojant pasirinktinį stilių, puslapių palaikymas, pasirinktinių šriftų palaikymas, tarpai tarp raidžių, pasirinktiniai tarpai tarp pastraipų, Unikodo palaikymas, vaizdų įterpimas, vaizdo formato santykio valdymas, kraštinių pateikimas, įterpimas hipersaitus, turinio ir vaizdų pasukimą ir pan.

Previous Next

Darbo su QuestPDF pradžia

QuestPDF biblioteką galima įsigyti kaip grynųjų paketą. Taigi labai rekomenduojama naudoti „NuGet“, kad į savo projektą įdiegtumėte QuestPDF. Norėdami sėkmingai įdiegti, naudokite šią komandą.

Įdiekite QuestPDF iš Nuget

// Package Manager
Install-Package QuestPDF
// .NET CLI
dotnet add package QuestPDF
// Package reference in .csproj file

Taip pat galite jį įdiegti rankiniu būdu; atsisiųskite naujausius leidimo failus tiesiai iš GitHub saugyklos.

Lengvas PDF kūrimas naudojant .NET biblioteką

Atvirojo kodo PDF biblioteka QuestPDF leidžia programinės įrangos kūrėjams naudoti tik keletą paprastų .NET kodo komandų, kad sukurtų PDF dokumentus savo programose. Biblioteka leidžia kūrėjams lengvai apibrėžti puslapio dydį, paraštes, fono spalvą, teksto stilių, šrifto dydį, puslapio antraštę ir poraštę, puslapio turinį, tarpus ir pan. Taip pat labai paprasta atnaujinti esamus PDF failus.

Kurkite PDF failus naudodami .NET biblioteką

 using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
// code in your main method
Document.Create(container =>
{
    container.Page(page =>
    {
        page.Size(PageSizes.A4);
        page.Margin(2, Unit.Centimetre);
        page.PageColor(Colors.White);
        page.DefaultTextStyle(x => x.FontSize(20));
        page.Header()
            .Text("Hello PDF!")
            .SemiBold().FontSize(36).FontColor(Colors.Blue.Medium);
        page.Content()
            .PaddingVertical(1, Unit.Centimetre)
            .Column(x =>
            {
                x.Spacing(20);
                x.Item().Text(Placeholders.LoremIpsum());
                x.Item().Image(Placeholders.Image(200, 100));
            });
        page.Footer()
            .AlignCenter()
            .Text(x =>
            {
                x.Span("Page ");
                x.CurrentPageNumber();
            });
    });
})
.GeneratePdf("hello.pdf");

Tvarkykite tekstą ir formatavimą naudodami C# API

QuestPDF bibliotekoje yra keletas svarbių funkcijų, skirtų teksto įterpimui ir teksto piešimui PDF dokumentuose. Tai leidžia kūrėjams piešti tekstą numatytuoju stiliumi, taip pat pasirinktiniu stiliumi, apatinį ir viršutinį indeksą, koreguoti teksto eilutes, koreguoti tarpą tarp raidžių, šriftų lygiavimą, nustatyti tipografijos modelį, pasirinktinius pastraipų tarpus, nustatyti teksto kryptį, įvesti puslapių numerius, pridėti hipersaitą ir pan. įjungta.

Pradinis ir viršutinis indeksas PDF failuose per .NET biblioteką

 .Text(text =>
{
    text.DefaultTextStyle(x => x.FontSize(20));
    text.ParagraphSpacing(10);
    var highlight = TextStyle.Default.BackgroundColor(Colors.Green.Lighten3);
    text.Span("E=mc").Style(highlight);
    text.Span("2").Superscript().Style(highlight);
    text.Span(" is the equation of mass–energy equivalence.");
    text.EmptyLine();
    text.Span("H").Style(highlight);
    text.Span("2").Subscript().Style(highlight);
    text.Span("O").Style(highlight);
    text.Span(" is the chemical formula for water.");
}); 

Pridėkite ir tvarkykite vaizdus PDF formatu naudodami C# biblioteką

Atvirojo kodo PDF biblioteka QuestPDF apima visišką statinių ir dinaminių vaizdų įtraukimo į C# .NET programas palaikymą. Programinės įrangos kūrėjai gali lengvai įdėti statinius vaizdus į savo PDF dokumentą bet kokiu įprastu rastrinio vaizdo formatu, pvz., JPG, PNG, BMB ir pan. Dinaminiams vaizdams jis siūlo lanksčius išdėstymus, todėl sunku numatyti vaizdo skiriamąją gebą. Kad vaizdas būtų aiškesnis, rekomenduojama generuoti tam tikros skiriamosios gebos vaizdus. Tai labai naudinga kuriant žemėlapius / diagramas.

Pridėkite vaizdų į PDF naudodami .NET biblioteką

 // it is possible to provide an image as:
// 1) a binary array
byte[] imageData = File.ReadAllBytes("path/to/logo.png")
container.Image(imageData)
// 2) a fileName
container.Image("path/myFile.png")
// 3) a stream
using var stream = new FileStream("logo.png", FileMode.Open);
container.Image(stream); 

Įterpkite lenteles į PDF per C# API

QuestPDF leidžia kompiuterių programuotojams sukurti sudėtingesnes struktūras nei bet koks eilutės ir stulpelio elementų derinys. Norėdami sukurti paprastą lentelės egzempliorių, vartotojai turi aprašyti kiekvieno stulpelio plotį ir įdėti bet kokį skaičių eilučių ir stulpelių. Biblioteka palaiko tokias funkcijas kaip lentelės antraštės ar poraštės pridėjimas, naujų eilučių pridėjimas, naujų langelių įterpimas, langelių pašalinimas, eilučių ir stulpelių intervalai, besiplečiantys langeliai ir daug daugiau.

Sukurkite paprastą lentelę PDF faile naudodami .NET biblioteką

 .Border(1)
.Table(table =>
{
    table.ColumnsDefinition(columns =>
    {
        columns.RelativeColumn();
        columns.RelativeColumn();
        columns.RelativeColumn();
        columns.RelativeColumn();
    });
    // by using custom 'Element' method, we can reuse visual configuration
    table.Cell().Row(1).Column(4).Element(Block).Text("A");
    table.Cell().Row(2).Column(2).Element(Block).Text("B");
    table.Cell().Row(3).Column(3).Element(Block).Text("C");
    table.Cell().Row(4).Column(1).Element(Block).Text("D");
    // for simplicity, you can also use extension method described in the "Extending DSL" section
    static IContainer Block(IContainer container)
    {
        return container
            .Border(1)
            .Background(Colors.Grey.Lighten3)
            .ShowOnce()
            .MinWidth(50)
            .MinHeight(50)
            .AlignCenter()
            .AlignMiddle();
    }
});
 Lietuvių