با استفاده از جاوا با تصاویر PDF کار کنید

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

Java API برای افزودن و دستکاری تصاویر در PDF - دانلود رایگان

Aspose.PDF for Java یک API قدرتمند است که طیف گسترده ای از ویژگی های دستکاری PDF را در اختیار شما قرار می دهد. API به شما امکان می دهد با متن، حاشیه نویسی یا تصاویر موجود در فایل های PDF به طور یکپارچه کار کنید. می توانید JAR API را دانلود یا با استفاده از تنظیمات Maven زیر نصب کنید.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.2</version>
</dependency>

اضافه کردن تصویر به فایل PDF در جاوا

مراحل زیر برای افزودن تصویر به فایل PDF در جاوا آمده است.

  • ابتدا یک نمونه از کلاس Document برای بارگیری سند PDF ایجاد کنید.
  • با استفاده از روش Document.getPages().getItem(int) Page را که می‌خواهید یک تصویر به آن اضافه کنید، دریافت کنید.
  • فایل تصویر را در یک شیء FileInputStream بارگیری کنید.
  • با استفاده از روش Page.getResources().getImages().add(FileInputStream) تصویر را به منابع صفحه اضافه کنید.
  • از عملگرها برای قرار دادن تصویر در صفحه استفاده کنید:
    1. اپراتور GSave برای ذخیره وضعیت گرافیکی فعلی.
    2. عملگر ConcatenateMatrix برای تعیین محل قرارگیری تصویر.
    3. عملگر 12 برای ترسیم تصویر روی صفحه.
    4. اپراتور GRestore برای ذخیره وضعیت گرافیکی به روز شده.
  • در نهایت فایل PDF به روز شده را با استفاده از روش Document.save(string) ذخیره کنید.

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

// یک سند باز کنید
Document pdfDocument1 = new Document("input.pdf");

// مختصات را تنظیم کنید
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// صفحه ای را که می خواهید تصویر را به آن اضافه کنید دریافت کنید
Page page = pdfDocument1.getPages().get_Item(1);

// بارگذاری تصویر در جریان
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File("input_image1.jpg"));

// یک تصویر به مجموعه Images منابع صفحه اضافه کنید
page.getResources().getImages().add(imageStream);

// استفاده از عملگر GSave: این عملگر وضعیت گرافیکی فعلی را ذخیره می کند
page.getContents().add(new Operator.GSave());

// اشیاء Rectangle و Matrix ایجاد کنید
Rectangle rectangle = new Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.getURX() - rectangle.getLLX(), 0, 0, rectangle.getURY() - rectangle.getLLY(), rectangle.getLLX(), rectangle.getLLY() });

// با استفاده از عملگر ConcatenateMatrix (ماتریس پیوست): نحوه قرار دادن تصویر را مشخص می کند
page.getContents().add(new Operator.ConcatenateMatrix(matrix));
XImage ximage = page.getResources().getImages().get_Item(page.getResources().getImages().size());

// استفاده از عملگر Do: این عملگر تصویر را ترسیم می کند
page.getContents().add(new Operator.Do(ximage.getName()));

// استفاده از عملگر GRestore: این عملگر حالت گرافیکی را بازیابی می کند
page.getContents().add(new Operator.GRestore());

// PDF جدید را ذخیره کنید
pdfDocument1.save("Updated_document.pdf");

// بستن جریان تصویر
imageStream.close();

استخراج تصاویر از یک فایل PDF با استفاده از جاوا

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

  • یک نمونه از کلاس Document برای بارگیری سند PDF ایجاد کنید.
  • با استفاده از روش Document.getPages().getItem(int).getResources().getImages().getItem(int) تصویر مورد نظر را در شیء XImage استخراج کنید.
  • همچنین می توانید از طریق مجموعه تصاویر حلقه بزنید تا تمام تصاویر را استخراج و ذخیره کنید.
  • در نهایت با استفاده از OutputStream تصویر استخراج شده را به صورت فایل ذخیره کنید.

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

// یک سند باز کنید
Document pdfDocument = new Document("input.pdf");

// یک تصویر خاص را استخراج کنید
XImage xImage = pdfDocument.getPages().get_Item(1).getResources().getImages().get_Item(1);

// برای ذخیره تصویر خروجی، شی جریان ایجاد کنید
java.io.OutputStream output = new java.io.FileOutputStream("output.jpg");

// تصویر خروجی را ذخیره کنید
xImage.save(output);

// بستن جریان
output.close();

با استفاده از جاوا، تصاویر را از یک فایل PDF حذف کنید

در زیر مراحل حذف یک تصویر از فایل PDF با استفاده از جاوا آمده است.

  • فایل PDF را در یک شیء Document بارگیری کنید.
  • با استفاده از یکی از روش های زیر تصویر(های) مورد نظر را حذف کنید.
  • در نهایت، فایل PDF به روز شده را با استفاده از روش Document.save(string) ذخیره کنید.

نمونه کد زیر نحوه حذف یک تصویر در PDF با استفاده از جاوا را نشان می دهد.

// یک سند باز کنید
Document pdfDocument = new Document("input.pdf");

// حذف یک تصویر خاص
pdfDocument.getPages().get_Item(1).getResources().getImages().delete(1);

// فایل PDF به روز شده را ذخیره کنید
pdfDocument.save("output.pdf");

با استفاده از جاوا یک تصویر را در یک فایل PDF جایگزین کنید

مراحل زیر برای جایگزینی تصویر در فایل PDF با استفاده از جاوا آورده شده است.

نمونه کد زیر نحوه جایگزینی یک تصویر در PDF را با استفاده از جاوا نشان می دهد.

// یک سند باز کنید
Document pdfDocument = new Document("input.pdf");

// یک تصویر خاص را جایگزین کنید
pdfDocument.getPages().get_Item(1).getResources().getImages().replace(1, new java.io.FileInputStream(new java.io.File("aspose.png")));

// فایل PDF به روز شده را ذخیره کنید
pdfDocument.save("output.pdf");

Java API برای افزودن تصاویر در PDF - مجوز API رایگان دریافت کنید

می توانید Aspose.PDF را برای جاوا به صورت رایگان با دریافت مجوز موقت امتحان کنید.

نتیجه

در این مقاله نحوه دستکاری تصاویر در فایل های PDF با استفاده از جاوا را یاد گرفتید. راهنمای گام به گام و نمونه کد نحوه استخراج، افزودن، حذف و جایگزینی تصاویر را در یک فایل PDF نشان داده است. می توانید سایر ویژگی های Aspose.PDF برای جاوا را با استفاده از مستندات کاوش کنید. در صورت وجود هرگونه سوال، می توانید از طریق [ انجمن 30 ما با ما تماس بگیرید.

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