IRONSOFTWAREHOME
NARZĘDZIA PDF

Jak edytować tekst w PDF (Samouczek dla początkujących)

Curtis Chau
Curtis Chau
Updated: 19 lipca 2026

Podpis cyfrowy to technika matematyczna służąca do weryfikacji autentyczności i integralności dokumentu elektronicznego. Służy jako podpis elektroniczny do cyfrowego podpisywania dokumentów w wielu jurysdykcjach, zapewniając wysokie bezpieczeństwo i ważność prawną.

Podpisy cyfrowe są tworzone przy użyciu klucza prywatnego, który jest znany wyłącznie podpisującemu. Ten klucz prywatny tworzy unikalny podpis cyfrowy powiązany z dokumentem w momencie jego podpisania. Podpis zawiera imię i nazwisko osoby podpisującej, adres e-mail oraz inne dane osobowe. Aby potwierdzić autentyczność dokumentu podpisanego cyfrowo, odbiorca musi mieć dostęp do klucza publicznego podpisującego. Prawdziwość podpisu jest weryfikowana poprzez jego odszyfrowanie przy użyciu klucza publicznego.

W tym samouczku porównujemy sposoby dodawania podpisów cyfrowych do dokumentów PDF przy użyciu PDFSharp i IronPDF. Podpisy cyfrowe są niezbędne do weryfikacji autentyczności dokumentów, a pliki PDF są popularnym formatem do takich operacji.

PDFSharp jest dobrze znaną open-source biblioteką do tworzenia i manipulacji PDF, podczas gdy IronPDF to solidna biblioteka PDF dla .NET oferująca podobne funkcje z dodatkowymi zaawansowanymi funkcjonalnościami.

Niniejszy przewodnik obejmuje podpisywanie dokumentu PDF za pomocą klucza prywatnego oraz weryfikację podpisu, a także przykładowy kod źródłowy dla obu bibliotek.

Dlaczego podpisy cyfrowe są ważne?

Podpisy cyfrowe zapewniają integralność dokumentów i oferują solidne zabezpieczenia. Są one powszechnie stosowane w umowach, porozumieniach i innych dokumentach prawnych.

Główne zalety:

  • Bardziej bezpieczne i odporne na manipulacje niż tradycyjne podpisy.
  • Weryfikowane elektronicznie, co ogranicza nakłady związane z ręczną weryfikacją.
  • Włącz globalne zdalne podpisywanie dokumentów.
  • Zapewnia większe bezpieczeństwo niż tradycyjne podpisy.

Przegląd PDFSharp

PDFSharp to biblioteka open source napisana w języku C#, przeznaczona przede wszystkim do tworzenia i edycji dokumentów PDF. Jest szeroko stosowany do podstawowych zadań związanych z plikami PDF, takich jak generowanie prostych plików PDF, edycja istniejących dokumentów i renderowanie grafiki. Jednak natywna obsługa zaawansowanych funkcji, takich jak podpisy cyfrowe, jest ograniczona, a programiści często muszą polegać na bibliotekach innych firm, takich jak BouncyCastle, aby zintegrować takie funkcje. PDFSharp jest open-source, na licencji MIT, co czyni go dobrym wyborem dla projektów, gdzie koszt i elastyczność są priorytetem.

Najważniejsze cechy

  • Oprogramowanie typu open source i bezpłatne na licencji MIT.
  • Podstawowe tworzenie i edycja plików PDF.
  • Możliwość rozszerzenia o biblioteki zewnętrzne, takie jak BouncyCastle do obsługi podpisów cyfrowych.
  • Brak wbudowanej obsługi zaawansowanych funkcji PDF, takich jak konwersja HTML do PDF i obsługa złożonych formularzy.

Przegląd IronPDF

IronPDF to solidna biblioteka .NET do obsługi plików PDF, która zapewnia proste i wydajne API do generowania, edycji i manipulowania plikami PDF. Jedną z jego wyróżniających się cech jest łatwość, z jaką programiści mogą wdrażać podpisy cyfrowe, które są niezbędne do weryfikacji autentyczności dokumentów. Oprócz podpisów cyfrowych IronPDF obsługuje zaawansowane funkcje, takie jak konwersja HTML do PDF, znak wodny i obsługa formularzy. Jest to szczególnie cenne dla programistów pracujących nad projektami komercyjnymi, w których priorytetem jest szybkie wdrożenie i solidne funkcje.

Najważniejsze cechy

  • Dostępna jest licencja komercyjna z płatnym wsparciem technicznym oraz bezpłatna wersja próbna.
  • Łatwe w użyciu API z nowoczesnymi funkcjami do podpisywania cyfrowego i edycji dokumentów.
  • Obejmuje wbudowaną obsługę konwersji formatu HTML do PDF, obsługi formularzy oraz adnotacji w plikach PDF (takich jak adnotacje w załącznikach).
  • Płynna integracja z zaawansowanymi funkcjami, takimi jak oznaczanie czasem, wizualne obrazy podpisów i szyfrowanie.

Dodawanie Podpisu Cyfrowego Programowo za Pomocą PDFSharp

PDFSharp to open-source biblioteka zaprojektowana do tworzenia i manipulacji PDF w języku C#. Jednakże, mimo że oferuje ono obsługę dodawania podpisu, konieczne będzie zintegrowanie narzędzia zewnętrznego, takiego jak BouncyCastle, aby zapewnić bezpieczne i dokładne podpisywanie cyfrowe dokumentów PDF.

Kroki Dodania Podpisu Cyfrowego z PDFSharp

  1. Zainstaluj PDFSharp i BouncyCastle poprzez NuGet.
  2. Utwórz certyfikat cyfrowy przy użyciu klasy X509Certificate2.
  3. Podpisz plik PDF za pomocą BouncyCastle.

Przykładowy kod

using System;
using System.IO;
using System.Security.Cryptography.X509Certificates;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using BouncyCastleSigner; // Hypothetical namespace for illustration
// Ensure that you have the appropriate namespaces added

class Program
{
    static void Main(string[] args)
    {
        // Create a font for the appearance of the signature
        var font = new XFont("Verdana", 10.0, XFontStyle.Regular);

        // Create a new PDF document
        var document = new PdfDocument();
        var pdfPage = document.AddPage();

        // Prepare graphics for drawing on the PDF page
        var xGraphics = XGraphics.FromPdfPage(pdfPage);
        var layoutRectangle = new XRect(0.0, 0.0, pdfPage.Width.Point, pdfPage.Height.Point);

        // Add some text to the page
        xGraphics.DrawString("Signed sample document", font, XBrushes.Black, layoutRectangle, XStringFormats.TopCenter);

        // Define digital signature appearance options
        var options = new DigitalSignatureOptions
        {
            ContactInfo = "John Doe",
            Location = "Seattle",
            Reason = "License Agreement",
            Rectangle = new XRect(36.0, 700.0, 400.0, 50.0),
            AppearanceHandler = new SignatureAppearanceHandler()
        };

        // Sign the document using BouncyCastle signer
        var pdfSignatureHandler = DigitalSignatureHandler.ForDocument(document,
            new PdfSharp.Snippets.Pdf.BouncyCastleSigner(GetCertificate(), PdfMessageDigestType.SHA256), options);

        // Save the signed document
        document.Save("PdfSharpSignature.pdf");
    }

    static (X509Certificate2, X509Certificate2Collection) GetCertificate()
    {
        // Locate the certificate file and read its data
        var certFolder = "C:\\Users\\kyess\\AppData\\Roaming\\Adobe\\Acrobat\\DC\\Security";
        var pfxFile = Path.Combine(certFolder, "IronSoftware.pfx");
        var rawData = File.ReadAllBytes(pfxFile);

        // Load the certificate using its password (example password)
        var certificatePassword = "Passw0rd";
        var certificate = new X509Certificate2(rawData, certificatePassword,
            X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);

        // Create and return the certificate collection
        var collection = new X509Certificate2Collection();
        collection.Import(rawData, certificatePassword,
            X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);
        return (certificate, collection);
    }
}

Wynik

PDFSharp Podpisz dokumenty PDF Cyfrowo vs IronPDF (Przykład Kodu): Rysunek 2

Jak widać, choć udało się utworzyć pole podpisu cyfrowego i zastosować certyfikat w naszym nowym dokumencie, proces ten jest rozbudowany, wymaga ręcznej obsługi i nie jest zbyt wydajny w porównaniu z bibliotekami takimi jak IronPDF.

Dodawanie podpisu cyfrowego za pomocą IronPDF

IronPDF zapewnia programistom zwięzłą metodę cyfrowego podpisywania dokumentów PDF.

using IronPdf;
using System.Security.Cryptography.X509Certificates;

public class Program
{
    static void Main(string[] args)
    {
        // Load the certificate with its password
        var sig = new PdfSignature("IronSoftware.pfx", "your-password");

        // Configure additional signature details
        sig.TimestampHashAlgorithm = TimestampHashAlgorithms.SHA256;
        sig.TimestampUrl = "http://timestamp.digicert.com";
        sig.SignatureImage = new PdfSignatureImage("IronPdf.png", 0, new Rectangle(150, 100, 200, 200));

        // Sign and save the PDF document
        sig.SignPdfFile("output.pdf");
    }
}

Wynik

PDFSharp Podpisz dokumenty PDF Cyfrowo vs IronPDF (Przykład Kodu): Rysunek 3

Ten kod pokazuje, jak podpisać dokument PDF przy użyciu klasy PdfSignature biblioteki IronPDF. Program najpierw tworzy obiekt PdfSignature, określając lokalizację pliku certyfikatu .pfx oraz jego hasło. Następnie ustawia dodatkowe właściwości podpisu, takie jak algorytm skrótu (SHA256), adres URL znacznika czasu oraz niestandardowy obraz dla podpisu (IronPdf.png).

Na koniec wywoływana jest metoda SignPdfFile w celu nałożenia podpisu cyfrowego na dokument PDF i zapisania go jako output.pdf. Proces ten zapewnia integralność i autentyczność pliku PDF poprzez osadzenie podpisu cyfrowego wraz z sygnaturą czasową i obrazem.

PDFSharp:

  • Oprogramowanie open source na licencji MIT.
  • Wymaga bibliotek zewnętrznych (np. BouncyCastle) do korzystania z zaawansowanych funkcji, takich jak podpis cyfrowy.

IronPDF:

Podsumowanie: IronPDF vs PDFSharp dla Podpisów Cyfrowych w C#

Porównując IronPDF i PDFSharp do dodawania podpisów cyfrowych do PDF w C#, obie biblioteki oferują różne korzyści w zależności od potrzeb projektu.

  • IronPDF jest idealnym rozwiązaniem dla programistów, niezależnie od tego, czy są to niezależni freelancerzy, czy programiści zatrudnieni w firmach, poszukujący prostego, łatwego w użyciu interfejsu API do umieszczania podpisów cyfrowych w plikach PDF, wyposażonego w nowoczesne funkcje. Płynna integracja z aplikacją do podpisów cyfrowych, konwersją HTML na PDF i innymi funkcjami PDF sprawia, że jest to doskonały wybór dla projektów komercyjnych, w których priorytetem jest łatwość użytkowania i szybkie wdrożenie. Dzięki płatnemu wsparciu technicznemu i przejrzystej strukturze licencji komercyjnych IronPDF doskonale nadaje się dla firm, które potrzebują prostego i niezawodnego rozwiązania.

  • PDFSharp exceluje w podstawowym tworzeniu PDF i manipulacji, ale brakuje mu zaawansowanych funkcji oraz bezpośredniego wsparcia dla podpisów cyfrowych, które oferuje IronPDF. Podczas gdy PDFSharp jest open-source i darmowy do użycia, jego API jest mniej intuicyjne do pracy z podpisami cyfrowymi w porównaniu do IronPDF, a deweloperzy mogą potrzebować zastosować dodatkowe rozwiązania lub biblioteki zewnętrzne do obsługi tych funkcji.

Podsumowując, IronPDF to najlepszy wybór dla programistów poszukujących prostego i szybkiego rozwiązania do obsługi podpisów cyfrowych i powiązanych zadań związanych z plikami PDF, zwłaszcza w środowiskach komercyjnych. PDFSharp jest bardziej odpowiedni do podstawowych zadań PDF, ale brakuje mu takiej samej łatwości użycia i zestawu funkcji do podpisów cyfrowych, co czyni go bardziej odpowiednim do prostszych projektów lub tych z potrzebami na dodatkową personalizację.

Zwróć uwagę: PDFSharp i BouncyCastle są zarejestrowanymi znakami towarowymi swoich właścicieli. Ta strona nie jest powiązana z, wspierana ani sponsorowana przez PDFSharp lub BouncyCastle. Wszystkie nazwy produktów, logo i marki są własnością ich odpowiednich właścicieli. Porównania mają charakter wyłącznie informacyjny i odzwierciedlają informacje dostępne publicznie w momencie pisania.
Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta