خواندن فایل PDF در سی شارپ بدون استفاده از کتابخانه

سی شارپ

با سلام به شما برنامه نویسان سی شارپ و همراهان سایت Daseny.

همانطور که می دانید PDF نوعی از فایل ها است که در آن این امکان را داریم که متنی را بنویسیم و بدون تغییر فونت و اندازه آن را در مکان های مختلف نمایش دهیم. فایل های PDF به دلیل این ویژگی که دارند، از محبوبیت بسیاری برخودار هستند.

در برخی مواقع پیش می آید که ما نیاز داریم که اطلاعات این نوع از فایل ها را در برنامه خودمان نمایش دهیم.

کتابخانه های بسیاری برای کار با پرونده های PDF در زبان سی شارپ تهیه شده اند که می توانید از آن ها کمک بگیرید. لیکن ما در این آموزش قصد داریم بدون بهره گیری از آنها محتویات این نوع از پرونده ها را نمایش دهیم.

نمایش فایل PDF در سی شارپ

ما برای انجام این کار از دو طریق می توانیم اقدام کنیم.

1-استفاده از WebBrowser

2-استفاده از کامپوننت Adobe PDF Reader

در این آموزش می خواهیم هردو مورد فوق را باهم بررسی کنیم و با نحوه کار با آنها آشنا بشویم.

استفاده از WebBrowser

برای استفاده از این مورد یک پروژه از نوع WindowsFormApplication در ویژوال استودیو ایجاد کرده و در قسمت Toolbox عبارت Web Browser را جستجو کرده و آن را به داخل فرم خود بکشید. به طور پیشفرض خاصیت Name آن برابر webBrowser1 می باشد که ما آن را تغییر نمی دهیم.

کنترل کننده رویداد Form1_Load را ایجاد کنید و کد زیر به آن اضافه کنید. البته به دو نکته باید توجه کنید. نکته اول، کد زیر با این فرض به درستی کار می دهد که شما یک فایل PDF در کنار فایل اجرایی برنامه داشته باشید. نکته دوم، شما کتابخانه System.IO را به کلاس خودتان اضافه کنید.

string fn = Application.StartupPath;
fn = Path.GetFullPath(Path.Combine(fn, “.//cSharp.pdf”));
webBrowser1.Navigate(fn);

دو خط اول تنها کاری که انجام می دهد مسیر کامل فایل را به ما می دهد. بنابراین به جای استفاده از این دو خط می توانید به صورت دستی آدرس کامل را در ()webBrowser1.Navigate وارد کنید. مانند کد زیر:

webBrowser1.Navigate(“C:\\Users\\Alireza\\Documents\\Visual Studio 2017\\Projects\\ReadPDF\\ReadPDF\\bin\\Debug\\cSharp.pdf”);

کد های برنامه

using System;
using System.IO;
using System.Windows.Forms;

namespace ReadPDF
{
    public partial class Form1 : Form
    {
        public Form1()
        {
        InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            string fn = Application.StartupPath;
            fn = Path.GetFullPath(Path.Combine(fn, “.//cSharp.pdf”));
            webBrowser1.Navigate(fn);
        }
    }
}

استفاده از کامپوننت Adobe PDF Reader

اگر شما می خواهید برنامه شما کمی حرفه ای تر شود و امکاناتی نظیر زوم کردن، جابه جایی بین صفحات و … به آن اضافه شود می توانید از این گزینه بهره برید. برای استفاده از این کامپوننت ابتدا باید آن به پروژه خود اضافه کنید. برای این کار روی یک قسمت از Toolbox کلیک راست کرده و گزینه Chose Item را انتخاب کنید.

add component to toolbax

پس از این کار در پنجره باز شده وارد تب COM Components شوید، تیک گزینه Adobe PDF Reader را فعال کرده و روی گزینه OK کلیک کنید.

add component to toolbox

به این ترتیب این گزینه به Toolbox شما اضافه خواهد شد. اکنون آن را به فرم خود اضافه کنید.

مقدار پیشفرض Name این گزینه axAcroPDF1 هست که ماهم از همین نام استفاده می کنیم.

کد نویسی این ابزار بسیار ساده بوده و تنها کاری که باید انجام دهیم، معین کردن مسیر PDF است. برای این کار کد زیر را به Form1_Load می افزائیم.

axAcroPDF1.LoadFile(“cSharp.pdf”);

شما می بایست به جای cSharp.pdf آدرس فایل PDF خود را وارد کنید.

کد برنامه

using System;
using System.Windows.Forms;

namespace ReadPDF
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
         private void Form1_Load(object sender, EventArgs e)
        {
            axAcroPDF1.LoadFile(“cSharp.pdf”);
        }
    }
}

به این ترتیب توانستیم فایل PDF را در سی شارپ نمایش دهیم.

فیلم آموزش خواندن PDF در سی شارپ

این آموزش هم به پایان رسید. لطفا نظرات، پیشنهادات و انتقادات خود را برای ما بنویسید. در صورتی که سوالی دارید می توانید در بخش نظرات مطرح کنید. ما در اسرع وقت پاسخ گوی شما خواهیم بود.

اگر به برنامه نویسی سیستم عامل اندروید علاقه دارید، می توانید در دوره مقدماتی برنامه نویسی اندروید ما ثبت نام کنید.

دیدگاه بگذارید

avatar
  Subscribe  
Notify of
آخرین محصولات