Watermark برای محافظت از اسناد PDF یا ادعای مالکیت آنها استفاده می شود. همچنین در موارد مختلف واترمارک برای نمایش وضعیت یک سند PDF مانند پیش نویس، دستنوشته و … اضافه می شود. به منظور خودکارسازی واترمارک، در این مقاله نحوه افزودن واترمارک متن یا تصویر به PDF با استفاده از جاوا توضیح داده شده است.
- API برای افزودن واترمارک به PDF
- اضافه کردن واترمارک متنی به یک سند PDF
- اضافه کردن واترمارک تصویر به سند PDF
Java API برای افزودن واترمارک به PDF
برای افزودن واترمارک به اسناد PDF، از Aspose.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.6</version>
</dependency>
اضافه کردن متن واترمارک به PDF در جاوا
مراحل زیر برای افزودن واترمارک متنی به PDF با استفاده از جاوا آمده است.
- PDF را با استفاده از کلاس Document بارگیری کنید.
- یک نمونه از کلاس FormattedText ایجاد کنید و متن واترمارک و خصوصیات آن را تنظیم کنید.
- یک نمونه از کلاس WatermarkArtifact ایجاد کنید.
- متن را به آرتیفکت اضافه کنید و ویژگی هایی مانند تراز، زاویه چرخش، کدورت، پس زمینه و غیره را تنظیم کنید.
- با استفاده از روش Document.getPages().getItem(index).getArtifacts().add(WatermarkArtifact) واترمارک متنی را به صفحه مورد نظر PDF اضافه کنید.
- سند PDF به روز شده را با استفاده از روش Document.save(String) ذخیره کنید.
نمونه کد زیر نحوه افزودن واترمارک متنی به سند PDF را نشان می دهد.
// سند PDF را بارگیری کنید
Document doc = new Document("input.pdf");
// یک متن فرمت شده ایجاد کنید
FormattedText formattedText = new FormattedText("Confidential Document", java.awt.Color.RED, FontStyle.Courier, EncodingType.Identity_h, true, 40.0F);
// آرتیفکت واترمارک ایجاد کنید و ویژگی های آن را تنظیم کنید
WatermarkArtifact artifact = new WatermarkArtifact();
artifact.setText(formattedText);
artifact.setArtifactHorizontalAlignment (HorizontalAlignment.Center);
artifact.setArtifactVerticalAlignment (VerticalAlignment.Center);
artifact.setRotation (25);
artifact.setOpacity (0.5);
artifact.setBackground (false);
// اضافه کردن واترمارک به صفحه اول PDF
doc.getPages().get_Item(1).getArtifacts().add(artifact);
// سند PDF دارای واترمارک را ذخیره کنید
doc.save("watermark.pdf");
خروجی
تصویر زیر اسکرین شات پی دی اف واترمارک شده است.
اضافه کردن واترمارک تصویر به PDF در جاوا
مراحل زیر برای افزودن واترمارک تصویر به PDF با استفاده از جاوا آمده است.
- PDF را با استفاده از کلاس Document بارگیری کنید.
- نمونه ای از کلاس BackgroundArtifact ایجاد کنید و تصویر پس زمینه و سایر ویژگی های آن را تنظیم کنید.
- با استفاده از روش Document.getPages().getItem(index).getArtifacts().add(BackgroundArtifact) واترمارک تصویر را به صفحه مورد نظر PDF اضافه کنید.
- سند PDF به روز شده را با استفاده از روش Document.save(String) ذخیره کنید.
نمونه کد زیر نحوه افزودن واترمارک تصویر را به یک سند PDF نشان می دهد.
// سند PDF را بارگیری کنید
Document doc = new Document("input.pdf");
// یک مصنوع پس زمینه ایجاد کنید
BackgroundArtifact background = new BackgroundArtifact();
// تصویر را برای شی مصنوع پس زمینه مشخص کنید
background.setBackgroundImage(new FileInputStream("logo.png"));
background.setOpacity(0.5);
background.setArtifactHorizontalAlignment(HorizontalAlignment.Center);
background.setArtifactVerticalAlignment(VerticalAlignment.Center);
// اضافه کردن واترمارک به صفحه اول PDF
doc.getPages().get_Item(1).getArtifacts().add(background);
// سند PDF دارای واترمارک را ذخیره کنید
doc.save("watermark.pdf");
خروجی
تصویر زیر اسکرین شات پی دی اف واترمارک شده است.
مجوز API رایگان دریافت کنید
برای استفاده از API بدون محدودیت ارزیابی، می توانید مجوز موقت دریافت کنید.
نتیجه
در این مقاله نحوه افزودن واترمارک متن یا تصویر به PDF را با استفاده از جاوا یاد گرفتید. همچنین، نحوه سفارشی سازی ظاهر واترمارک را با استفاده از ویژگی های مختلف مشاهده کرده اید. میتوانید با استفاده از مستندات درباره Java PDF API اطلاعات بیشتری کسب کنید. در صورت داشتن هرگونه سوال، از طریق [فروم 15 ما به ما اطلاع دهید.