با استفاده از جاوا، هایپرلینک ها را در PDF اضافه یا به روز کنید

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

Aspose.PDF برای جاوا یک API شگفت انگیز برای تولید و دستکاری PDF است. با استفاده از 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>22.4</version>
</dependency>

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

  • یک PDF جدید ایجاد کنید یا یک فایل موجود را با استفاده از کلاس Document بارگیری کنید.
  • از مجموعه Document.getPages() مرجع صفحه ای را که می خواهید هایپرلینک را در آن اضافه کنید، دریافت کنید.
  • یک شی از کلاس LinkAnnotation ایجاد کنید و ویژگی های آن را تنظیم کنید.
  • از روش LinkAnnotation.setAction() برای اختصاص دادن شیء GoToURIAction حاوی URL استفاده کنید.
  • با استفاده از روش Page.getAnnotations().add() لینک به صفحه اضافه کنید.
  • PDF را با استفاده از روش Document.save(String) ذخیره کنید.

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

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

// دریافت مرجع صفحه
Page page = document.getPages().get_Item(1);

// شیء حاشیه نویسی پیوند ایجاد کنید
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));

// شیء مرزی برای LinkAnnotation ایجاد کنید
Border border = new Border(link);

// مقدار عرض حاشیه را 0 تنظیم کنید
border.setWidth ( 0);

// مرز را برای LinkAnnotation تنظیم کنید
link.setBorder(border);

// نوع پیوند را به عنوان URI راه دور مشخص کنید
link.setAction( new GoToURIAction("www.aspose.com"));

// اضافه کردن حاشیه نویسی لینک به مجموعه حاشیه نویسی صفحه اول فایل PDF
page.getAnnotations().add(link);

// سند به روز شده را ذخیره کنید
document.save("output.pdf");

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

  • با استفاده از کلاس Document یک PDF جدید ایجاد کنید یا یک فایل موجود را بارگیری کنید.
  • از مجموعه Document.getPages() مرجع صفحه‌ای را که می‌خواهید لینک اضافه کنید، دریافت کنید.
  • یک شی از کلاس LinkAnnotation ایجاد کنید و ویژگی های آن را تنظیم کنید.
  • از روش LinkAnnotation.setAction() برای تنظیم عملکرد روی شیء GoToRemoteAction که حاوی مسیر PDF خارجی است استفاده کنید.
  • با استفاده از روش Page.getAnnotations().add() لینک به صفحه اضافه کنید.
  • PDF را با استفاده از روش Document.save(String) ذخیره کنید.

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

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

// دریافت مرجع صفحه
Page page = document.getPages().get_Item(1);

// ایجاد هایپرلینک
LinkAnnotation link = new LinkAnnotation(page, new com.aspose.pdf.Rectangle(100, 100, 300, 300));
link.setColor(Color.getGreen());

// اقدام را تنظیم کنید
link.setAction( new GoToRemoteAction("external.pdf", 1));

// اضافه کردن حاشیه نویسی لینک به مجموعه حاشیه نویسی صفحه اول فایل PDF
page.getAnnotations().add(link);

// سند به روز شده را ذخیره کنید
document.save("output.pdf");

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

  • با استفاده از کلاس Document یک PDF جدید ایجاد کنید یا یک فایل موجود را بارگیری کنید.
  • از مجموعه Document.getPages() مرجع صفحه ای را که می خواهید هایپرلینک را در آن اضافه کنید، دریافت کنید.
  • یک نمونه از کلاس TextFragment برای تنظیم متن هایپرلینک ایجاد کنید.
  • یک نمونه از کلاس LocalHyperlink ایجاد کنید و از روش LocalHyperlink.setTargetPageNumber() برای تنظیم شماره صفحه هدف استفاده کنید.
  • شیء LocalHyperlink را با استفاده از روش TextFragment.setHyperlink() اختصاص دهید.
  • متن را با استفاده از روش Page.getParagraphs().add(TextFragment) به صفحه اضافه کنید.
  • PDF را با استفاده از روش Document.save(String) ذخیره کنید.

نمونه کد زیر نشان می دهد که چگونه می توان یک لینک برای پیمایش به یک صفحه خاص در PDF اضافه کرد.

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

// دریافت مرجع صفحه
Page page = document.getPages().get_Item(1);

// نمونه TextFragment ایجاد کنید
TextFragment text = new TextFragment("link page number test to page 7");

// نمونه هایپرلینک محلی ایجاد کنید
LocalHyperlink link = new LocalHyperlink();

// صفحه هدف را برای نمونه پیوند تنظیم کنید
link.setTargetPageNumber( 7);

// Hyperlink TextFragment را تنظیم کنید
text.setHyperlink(link);

// متن را به مجموعه پاراگراف های صفحه اضافه کنید
page.getParagraphs().add(text);

// سند به روز شده را ذخیره کنید
document.save("output.pdf");

همچنین می توانید یک هایپرلینک را از یک فایل PDF بازیابی کنید و ویژگی های آن را به روز کنید. مراحل زیر برای انجام این عملیات آورده شده است.

  • با استفاده از کلاس Document یک PDF جدید ایجاد کنید یا یک فایل موجود را بارگیری کنید.
  • مرجع صفحه ای که لینک در آن قرار دارد را از مجموعه Document.getPages() دریافت کنید.
  • با استفاده از روش Page.getAnnotations().getitem() شی مورد نظر LinkAnnotation را با نمایه استخراج کنید.
  • با استفاده از روش Document.save(String) ویژگی های مورد نیاز هایپرلینک را به روز کنید و PDF را ذخیره کنید.

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

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

// اولین حاشیه نویسی پیوند را از صفحه اول سند دریافت کنید
LinkAnnotation linkAnnot = (LinkAnnotation)document.getPages().get_Item(1).getAnnotations().get_Item(1);

// عمل پیوند را تغییر دهید و هدف را به عنوان آدرس وب تنظیم کنید
linkAnnot.setAction(new GoToURIAction("www.aspose.com"));

// سایر خصوصیات را در صورت لزوم تغییر دهید

// سند به روز شده را ذخیره کنید
document.save("output.pdf");

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

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

نتیجه

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

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