تبدیل PDF به TXT

نحوه تبدیل PDF به TXT با استفاده از جاوا

یک فایل PDF معمولاً از متن، تصویر، عنوان، حاشیه نویسی و سایر عناصر تشکیل شده است. و از آنجایی که این قالب طرح‌بندی سند را در پلتفرم‌ها (دسک‌تاپ / موبایل و غیره) حفظ می‌کند، بنابراین به طور گسترده برای اشتراک‌گذاری اطلاعات از طریق اینترنت استفاده می‌شود. با این حال، ممکن است نیاز به استخراج محتوای متنی سند PDF برای پردازش بیشتر داشته باشیم. بنابراین در این مقاله قصد داریم جزئیات نحوه استخراج متن از PDF با استفاده از Java Cloud SDK را بررسی کنیم. پس از اتمام عملیات، خروجی در قالب TXT ذخیره می شود.

API تبدیل PDF به TXT

Aspose.PDF Cloud SDK for Java راه حل REST API برنده جایزه ما است که قابلیت ایجاد، ویرایش و تبدیل PDF به JPG، XPS، HTML، DOCX و انواع دیگر [فرمت های پشتیبانی شده] را ارائه می دهد. اکنون به منظور پیاده سازی قابلیت های تشخیص متن pdf در برنامه جاوا، لطفاً جزئیات زیر را در پروژه pom.xml از نوع ساخت maven اضافه کنید.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.11.0</version>
    </dependency>
</dependencies>

پس از نصب SDK، مرحله مهم بعدی ایجاد یک حساب کاربری رایگان بر روی Aspose Cloud است. بنابراین لطفاً با استفاده از حساب تازه ایجاد شده وارد شوید و شناسه مشتری و Client Secret را در داشبورد ابری جستجو/ایجاد کنید. این جزئیات در بخش های بعدی مورد نیاز است.

PDF به متن در جاوا

لطفاً مراحل زیر را برای انجام تبدیل PDF به متن با استفاده از Java Cloud SDK دنبال کنید. بنابراین پس از تبدیل موفقیت آمیز، فایل TXT حاصل در فضای ذخیره سازی ابری ذخیره می شود.

  • ابتدا باید یک شی PdfApi ایجاد کنیم و در عین حال ClientID و Client Secret را به عنوان آرگومان ارائه کنیم
  • در مرحله دوم، فایل PDF ورودی را با استفاده از نمونه File بارگیری کنید
  • PDF ورودی را با استفاده از روش uploadFile(…) در فضای ذخیره سازی ابری آپلود کنید
  • ایجاد متغیر عدد صحیح که شماره صفحه PDF را برای استخراج متن مشخص می‌کند و نمونه‌های دوگانه را نشان می‌دهد که ناحیه مستطیلی صفحه را نشان می‌دهد که باید محتوای متنی را از آن استخراج کنیم.
  • در نهایت متد getPageText(…) را برای واکشی محتوای متنی از PDF ورودی فراخوانی کنید
try
    {
    // ClientID و ClientSecret را از https://dashboard.aspose.cloud/ دریافت کنید
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
	  
    // یک نمونه از PdfApi ایجاد کنید
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);

    // نام سند PDF ورودی
    String inputFile = "marketing.pdf";

    // محتوای فایل PDF ورودی را بخوانید
    File file = new File("//Users//"+inputFile);
	    
    // PDF را در فضای ذخیره سازی ابری آپلود کنید
    pdfApi.uploadFile("input.pdf", file, null);

    // صفحه خاص PDF برای تبدیل
    int pageNumber =1;

    // مختصات X گوشه پایین - چپ
    Double LLX = 0.0;
    // Y - مختصات گوشه پایین سمت چپ.
    Double LLY = 0.0;
    // X - مختصات گوشه سمت راست بالا.
    Double URX = 800.0;
    // Y - مختصات گوشه سمت راست بالا.
    Double URY = 800.0;
	       
    // برای تبدیل PDF به متن با API تماس بگیرید
    TextRectsResponse response = pdfApi.getPageText(inputFile, pageNumber, LLX, LLY, URX, URY, null, null, true, null, "default");	    
    
    // نمونه فایل TXT حاصل
    FileWriter myWriter = new FileWriter("filename.txt");
  
    // اکنون از طریق Text Occurance تکی عبور کنید و نتیجه چاپ را در کنسول دریافت کنید
    for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
    {
        // نوشتن محتوای متنی در فایل TXT
	myWriter.write(response.getTextOccurrences().getList().get(counter).getText());
    }
  
    // کنترل کننده TXT را ببندید
    myWriter.close();
    
    System.out.println("Text successfully extracted from PDF !");
    }catch(Exception ex)
    {
	      System.out.println(ex);
    }
تبدیل PDF به TXT

تصویر 1: - پیش نمایش تبدیل PDF به TXT

نمونه فایل PDF مورد استفاده در مثال بالا را می توان از marketing.pdf و extracted.txt دانلود کرد.

استخراج متن از PDF با استفاده از دستورات cURL

API های REST را می توان به راحتی از طریق دستورات cURL در دسترس قرار داد، بنابراین در این بخش، ما می خواهیم این گزینه را بررسی کنیم که چگونه می توانیم محتوای متنی را از PDF با استفاده از دستورات cURL استخراج کنیم. بنابراین به عنوان یک پیش نیاز، ابتدا باید یک توکن دسترسی JWT (بر اساس اعتبار مشتری) هنگام اجرای دستور زیر ایجاد کنیم.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

هنگامی که رمز JWT را داریم، باید دستور زیر را اجرا کنیم تا همه موارد متن در سند PDF استخراج شود.

curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/input.pdf/text?splitRects=true&LLX=0&LLY=0&URX=800&URY=800" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

نتیجه

در این مقاله جزئیات نحوه تبدیل PDF به TXT با استفاده از Java Cloud SDK توضیح داده شده است. در عین حال، گزینه های استخراج متن از PDF با استفاده از دستورات cURL را نیز بررسی کرده ایم. بنابراین با انعطاف‌پذیری پیمایش بین چندین صفحه PDF، کنترلی در مورد جایی که محتوا را استخراج کنیم دریافت می‌کنیم. ما شدیداً به شما توصیه می‌کنیم که محصول [اسناد11 را کاوش کنید تا درباره سایر ویژگی‌های هیجان‌انگیز ارائه شده توسط Java Cloud API بیشتر بدانید. همچنین، از آنجایی که همه کیت‌های توسعه نرم‌افزار ابری ما تحت مجوز MIT منتشر شده‌اند، می‌توانید کد منبع کامل را از GitHub دانلود کنید و آن را مطابق با نیاز خود تغییر دهید. در صورت بروز هر گونه مشکلی، می توانید برای حل سریع از طریق [تالار گفتمان پشتیبانی محصول] رایگان به ما مراجعه کنید.

مقالات مرتبط

لطفا برای کسب اطلاعات بیشتر به لینک های زیر مراجعه کنید: