اضافه کردن شماره صفحه به فایل های PDF در Asp.Net

شنبه 15 فروردین 1394

در این مقاله میخواهیم فایل های PDF را خوانده و برای آنها شماره صفحه درج کنیم

اضافه کردن شماره صفحه به فایل های PDF در Asp.Net

اضافه کردن شماره صفحه به فایل های PDF با استفاده از iTextSharp

صفحات فایل PDF خوانده شده سپس توسط کلاس PdfStamper  شماره صفحات روی هر صفحه از اسناد PDF نوشته می شود برای انجام این امر از فضای نام های زیر استفاده میکنیم:


using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;

فایل PDF که از دیسک خوانده شده و شماره صفحه باید به آن اضافه شود به آرایه ای از بایت تبدیل می شود سپس این آرایه بایت توسط شی PdfReader  و یک حلقه که روی صفحات فایل pdf زده میشود خوانده میشود و در پایان توسط MemoryStream  بر روی هارددیسک ذخیره می شود.


protected void AddPageNumber(object sender, EventArgs e)
{
    byte[] bytes = File.ReadAllBytes(@"D:\PDFs\Test.pdf");
    Font blackFont = FontFactory.GetFont("Arial", 12, Font.NORMAL, BaseColor.BLACK);
    using (MemoryStream stream = new MemoryStream())
    {
        PdfReader reader = new PdfReader(bytes);
        using (PdfStamper stamper = new PdfStamper(reader, stream))
        {
            int pages = reader.NumberOfPages;
            for (int i = 1; i <= pages; i++)
            {
                ColumnText.ShowTextAligned(stamper.GetUnderContent(i), Element.ALIGN_RIGHT, new Phrase(i.ToString(), blackFont), 568f, 15f, 0);
            }
        }
        bytes = stream.ToArray();
    }
    File.WriteAllBytes(@"D:\PDFs\Test_1.pdf", bytes);
}

فایل pdf اصلی:

حال بعد از اجرای برنامه:

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید