متن یا تصاویر را از اسناد OneNote با استفاده از جاوا استخراج کنید

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

موضوعات زیر در این مقاله پوشش داده خواهد شد:

Java API برای استخراج متن یا تصاویر از OneNote

برای استخراج متن و تصاویر از سند OneNote، از API Aspose.Note for Java استفاده خواهیم کرد. این امکان ایجاد، خواندن و تبدیل اسناد OneNote را به صورت برنامه‌نویسی بدون استفاده از MS OneNote فراهم می‌کند. لطفاً JAR API را دانلود کنید یا پیکربندی pom.xml زیر را در یک برنامه جاوا مبتنی بر Maven اضافه کنید.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-note</artifactId>
    <version>22.1</version>
    <classifier>jdk17</classifier>
</dependency>

تمام متن را از سند OneNote با استفاده از جاوا استخراج کنید

با دنبال کردن مراحل زیر می‌توانیم به راحتی تمام متن را از سند OneNote استخراج کنیم:

  1. ابتدا یک فایل OneNote را با استفاده از کلاس Document بارگیری کنید.
  2. پس از آن، متد GetChildNodes را با RichText.class به عنوان آرگومان برای استخراج متن فراخوانی کنید.
  3. در نهایت متن استخراج شده را نشان دهید.

نمونه کد زیر نحوه استخراج تمام متن از یک فایل OneNote با استفاده از جاوا را نشان می دهد.

// این مثال کد نحوه استخراج تمام متن از سند OneNode را نشان می دهد.
// سند را در Aspose.Note بارگذاری کنید.
Document oneFile = new Document("D:\\Files\\Note\\Sample1.one");

// بازیابی متن
List<RichText> textNodes = (List<RichText>) oneFile.getChildNodes(RichText.class);

for (RichText richText : textNodes) {
  if(!richText.getText().isBlank())
    System.out.println(richText.getText().toString());
}
تمام متن را از سند OneNote با استفاده از جاوا استخراج کنید

تمام متن را از سند OneNote با استفاده از جاوا استخراج کنید

دریافت متن از صفحات خاص سند OneNote در جاوا

با دنبال کردن مراحل زیر می‌توانیم متن را از صفحات خاصی از سند OneNote استخراج کنیم:

  1. ابتدا یک فایل OneNote را با استفاده از کلاس Document بارگیری کنید.
  2. سپس، متد GetChildNodes را با Page.class به عنوان آرگومان برای استخراج صفحات فراخوانی کنید.
  3. سپس، یک صفحه خاص را با شاخص آن از لیست صفحات دریافت کنید.
  4. پس از آن، با استفاده از روش GetChildNodes با RichText.class به عنوان آرگومان، فهرستی از موارد متنی را برای صفحه دریافت کنید.
  5. در نهایت متن استخراج شده را نشان دهید.

نمونه کد زیر نحوه استخراج متن از یک صفحه خاص از یک فایل OneNote با استفاده از جاوا را نشان می دهد.

// این مثال کد نحوه استخراج متن از یک صفحه خاص از یک سند OneNode را نشان می دهد.
// سند را در Aspose.Note بارگذاری کنید
Document doc = new Document("D:\\Files\\Note\\Sample1.one");

// دریافت لیست گره های صفحه
List<Page> pages = doc.getChildNodes(Page.class);

// صفحه به فهرست دریافت کنید
Page page = pages.get(0);

// دریافت متن صفحه
List<RichText> textNodes = (List<RichText>) page.getChildNodes(RichText.class);

// نمایش متن
for (RichText richText : textNodes) {
  if(!richText.getText().isBlank())
    System.out.println(richText.getText().toString());
}
Extract Text from a Specific Page of OneNote Document in Java

ممکن است تمام صفحات را یکی یکی تکرار کنیم و متن هر صفحه را همانطور که در نمونه کد زیر نشان داده شده است استخراج کنیم:

// این مثال کد نحوه استخراج متن از صفحات یک سند OneNode را نشان می دهد.
// سند را در Aspose.Note بارگذاری کنید.
Document doc = new Document("D:\\Files\\Note\\Sample1.one");

// دریافت لیست گره های صفحه
List<Page> pages = doc.getChildNodes(Page.class);

for (Page p : pages) {
  System.out.println("---- Page Started Here ----");

  List<RichText> textNodes = (List<RichText>) p.getChildNodes(RichText.class);

 for (RichText richText : textNodes) {
    if(!richText.getText().isBlank())
      System.out.println(richText.getText().toString());
  }

  System.out.println("---- Page Ended Here ----");
  System.out.println();
}
دریافت متن از صفحات خاص سند OneNote در جاوا

متن را از تمام صفحات یک به یک در جاوا دریافت کنید

استخراج تصاویر از سند OneNote با استفاده از جاوا

همچنین می‌توانیم با دنبال کردن مراحل زیر، تصاویر را از سند OneNote استخراج کنیم:

  1. ابتدا یک فایل OneNote را با استفاده از کلاس Document بارگیری کنید.
  2. پس از آن، فهرستی از تصاویر را با استفاده از روش GetChildNodes با Image.class به عنوان آرگومان دریافت کنید.
  3. در نهایت، ویژگی های تصویر را نشان داده و در دیسک محلی ذخیره کنید.

نمونه کد زیر نحوه استخراج تصاویر از فایل OneNote با استفاده از جاوا را نشان می دهد.

// این مثال کد نحوه استخراج تصاویر از سند OneNode را نشان می دهد.
// سند را در Aspose.Note بارگذاری کنید
Document doc = new Document("D:\\Files\\Note\\Sample1.one");

// دریافت همه تصاویر
List<Image> list = doc.getChildNodes(Image.class);
System.out.printf("Total Images: %s\n\n", list.size());

// از فهرست عبور کنید
for (int i = 0; i < list.size(); i++) {
  Image image = list.get(i);

  // نمایش مشخصات تصویر
  System.out.println("Width: " + image.getWidth());
  System.out.println("Height: " + image.getHeight());
  System.out.println("OriginalWidth: " + image.getOriginalWidth());
  System.out.println("OriginalHeight: " + image.getOriginalHeight());
  System.out.println("FileName: " + image.getFileName());
  System.out.println("LastModifiedTime: " + image.getLastModifiedTime());

  String outputFile = "ExtractImages_out" + i + "_" + image.getFileName();

  // تصویر را ذخیره کنید
  byte[] buffer = image.getBytes();
  Files.write(Paths.get("D:\\Files\\Note\\Images\\" + outputFile), buffer);
  System.out.printf("File saved: %s\n", outputFile);
}
استخراج تصاویر از سند OneNote با استفاده از جاوا

استخراج تصاویر از سند OneNote با استفاده از جاوا

مجوز رایگان دریافت کنید

شما می توانید یک مجوز موقت رایگان دریافت کنید تا کتابخانه را بدون محدودیت ارزیابی امتحان کنید.

نتیجه

در این مقاله، نحوه استخراج متن از کل سند OneNote یا از صفحه خاصی از سند را یاد گرفتیم. ما همچنین نحوه استخراج تصاویر از اسناد OneNote را به صورت برنامه‌ریزی دیده‌ایم. علاوه بر این، می‌توانید با استفاده از مستندات درباره Aspose.Note برای Java API اطلاعات بیشتری کسب کنید. در صورت وجود هرگونه ابهام، لطفاً با ما در [تالار] تماس بگیرید17.

همچنین ببینید