! پایه دانش Itext در پست قبلی ما ، ما در مورد ItextPDF API برای کار با پرونده های PDF با استفاده از C#/VB.NET در برنامه های .NET صحبت کردیم. API به شما امکان می دهد اسناد PDF را ایجاد ، ویرایش و دستکاری کنید بدون اینکه به هر فرمت فایل داخلی با فرمت فایل PDF بپردازید. استفاده از itextpdf به راحتی با و فقط با چند خط کد کار می کنید ، می توانید شروع به ایجاد ، خواندن و دستکاری [فایلهای PDF] کنید 3. در این مقاله ، ما در مورد استفاده از ITextPDF در برنامه .NET برای ایجاد ، خواندن و ذخیره پرونده های PDF به صورت برنامه ای در برنامه C# خود صحبت خواهیم کرد. بنابراین ، بیایید شروع کنیم و نگاهی بیندازیم که چگونه می توانیم PDF را در C#ایجاد کنیم.

نصب itextpdf

شما می توانید itextpdf api را از nuget یا از سرور مصنوعات itextory نصب کنید. قبل از اینکه بتوانید برنامه C# خود را برای استفاده از ItextPDF API ایجاد کنید ، باید آن را از هر یک از این منابع نصب کنید. برای تنظیم برنامه کنسول خود برای این منظور می توانید به دستورالعمل های نصب itextpdf API مراجعه کنید.

نمای کلی کلاسهای اصلی itextpdf API

برخی از کلاسهای اصلی ITextPDF به شرح زیر است.

pdfdocument

هر سند PDF ایجاد شده با itextpdf با استفاده از یک شی از کلاس pdfDocument آغاز می شود.

pdfwriter

کلاس PdfWriter مسئول نوشتن محتوای PDF به یک مقصد مانند پرونده یا جریان است. این قابلیت برای ایجاد یک سند PDF و مشخص کردن مقصد خروجی را فراهم می کند. برخی از ویژگی ها و مسئولیت های کلیدی کلاس pdfwriter به شرح زیر است.

Destination ConfigurationThe PdfWriter constructor allows you to specify the output destination for the PDF content. It can accept parameters like a file path, a Stream object, or an instance of IOutputStreamCounter. This determines where the PDF content will be written.
PDF Document CreationWhen you create a new instance of PdfWriter, it automatically creates a new PdfDocument object associated with it. The PdfDocument represents the logical structure of a PDF file and provides methods to manipulate its content.
PDF Compression and Version ControlThe PdfWriter class allows you to configure various aspects of the PDF file, such as compression settings and PDF version compatibility.
Writing PDF ContentOnce you have a PdfWriter instance, you can use it to write content to the associated PdfDocument. You can add pages, create annotations, add text, images, and other graphical elements to the PDF document using the provided methods.
Closing the WriterAfter you finish writing the PDF content, it’s important to close the PdfWriter to ensure the document is finalized and any necessary resources are released.

پاراگراف

کلاس پاراگراف یک پاراگراف متن را در یک سند PDF نشان می دهد. از آن برای افزودن محتوای متنی به یک سند PDF استفاده می شود. در اینجا برخی از ویژگی ها و مسئولیت های کلیدی کلاس پاراگراف وجود دارد:

Text ContentThe primary purpose of the Paragraph class is to hold and display textual content within a PDF document. You can pass a string or any other text representation to the Paragraph constructor to initialize its content.
Text FormattingThe Paragraph class allows you to apply various formatting options to the text, such as font size, font family, text color, bold, italic, underline, and more. You can use methods like SetFontSize(), SetFont(), SetBold(), SetItalic(), SetUnderline(), etc., to specify the desired formatting.
Alignment and IndentationThe Paragraph class provides methods to set the alignment of the text within the paragraph. You can align the text to the left, right, or center, or justify it. Additionally, you can apply indentation to control the left and right margins of the paragraph.
Inline ElementsApart from plain text, you can also add inline elements within a Paragraph. For example, you can include phrases or words with different formatting styles, add hyperlinks, insert images, or include other elements supported by iText.
NestingYou can nest multiple paragraphs within each other or combine them with other iText elements like tables, lists, or chunks to create complex document structures.
Integration with DocumentThe Paragraph instances can be added to the Document object using the Add() method. This allows you to include paragraphs in your PDF document at the desired location.

چگونه یک فایل PDF در C#ایجاد کنیم؟

اکنون که ما در مورد ItextPDF و کلاس های اصلی آن ایده خوبی داریم ، اجازه دهید یک سند PDF را در C# با استفاده از API ITextPDF ایجاد کنیم. این کار فقط با چند مرحله به شرح زیر انجام می شود.

  1. یک پروژه جدید در ویژوال استودیو ایجاد کنید.
  2. با استفاده از مدیر بسته NUGET ، کتابخانه ItextPDF C# را نصب کنید.
  3. مواردی از کلاسهای pdfdocument و pdfwriter ایجاد کنید 4- مواردی از کلاسهای سند و پاراگراف ایجاد کنید
  4. با استفاده از روش Document.Close () سند را ببندید

C# قطعه کد برای تولید فایل pdf

کد زیر C# می تواند برای تولید فایل PDF استفاده شود.

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main()
    {
        // Specify the output file path
        string outputPath = "example.pdf";
        // Create a new PDF document
        PdfWriter writer = new PdfWriter(outputPath);
        PdfDocument pdf = new PdfDocument(writer);
        // Create a document instance
        Document document = new Document(pdf);
        // Add content to the document
        document.Add(new Paragraph("Hello, World!"));
        // Close the document
        document.Close();
        Console.WriteLine("PDF created successfully.");
    }
}

چگونه یک فایل PDF را در C#به روز کنیم؟

به روزرسانی/ویرایش یک فایل PDF در C# به راحتی با استفاده از ITextPDF انجام می شود.

  1. سند PDF موجود را با استفاده از یک شیء pdfreader باز کنید.
  2. یک شیء pdfwriter با یک مقصد خروجی جدید یا اصلاح شده (مانند پرونده یا جریان) ایجاد کنید.
  3. با استفاده از هر دو اشیاء pdfreader و pdfwriter یک شیء pdfdocument ایجاد کنید. 4- با استفاده از نمونه pdfdocument به صفحات و محتوای موجود در سند دسترسی پیدا کنید. 5- اصلاحات لازم را برای سند انجام دهید ، مانند اضافه کردن یا حذف محتوا ، به روزرسانی متن ، اصلاح حاشیه نویسی و غیره.
  4. pdfdocument را ببندید ، که به طور خودکار pdfreader و pdfwriter را می بندد و تغییرات را در مقصد خروجی ذخیره می کند.

C# قطعه کد برای به روزرسانی پرونده pdf

کد زیر C# می تواند برای به روزرسانی یک فایل PDF استفاده شود.

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main()
    {
        string filePath = "existing.pdf";
        string outputPath = "updated.pdf";
        // Open the existing PDF document
        PdfReader reader = new PdfReader(filePath);
        // Create a new PDF document with modified output destination
        PdfWriter writer = new PdfWriter(outputPath);
        // Create a PdfDocument object with both the reader and writer
        PdfDocument pdfDoc = new PdfDocument(reader, writer);
        // Access the first page of the document
        PdfPage firstPage = pdfDoc.GetPage(1);
        // Create a document instance for the page
        Document document = new Document(pdfDoc, firstPage);
        // Add a new paragraph to the document
        document.Add(new Paragraph("This is a new paragraph added to the existing PDF."));
        // Close the document, which saves the changes
        document.Close();
        // Close the reader
        reader.Close();
        Console.WriteLine("PDF updated successfully.");
    }
}

نتیجه گیری

در این مقاله ، ما به بررسی API ITextPDF برای .NET پرداختیم تا در مورد ایجاد و دستکاری پرونده های PDF از درون برنامه .NET خود بیاموزیم. API منبع باز است و در مخزن GitHub به عنوان [itext-dotnet] میزبانی می شود 4. در وبلاگ های آینده ما ، ما این API را بیشتر مورد بررسی قرار می دهیم تا با مؤلفه های مختلف یک سند PDF مانند جداول ، تصاویر ، حاشیه نویسی ها ، PDF رد شده و بسیاری دیگر کار کنیم. بنابراین با ما همراه باشید.