Vodoznaky se používají k ochraně dokumentů PDF nebo nárokování jejich vlastnictví. V různých případech se také přidávají vodoznaky, které zobrazují stav dokumentu PDF, jako je koncept, rukopis atd. Za účelem automatizace vodoznaku tento článek popisuje, jak přidat textový nebo obrázkový vodoznak do PDF pomocí Java.
- API pro přidání vodoznaku do PDF
- Přidejte textový vodoznak do dokumentu PDF
- Přidat vodoznak obrázku do dokumentu PDF
Java API pro přidání vodoznaku do PDF
Pro přidání vodoznaku do PDF dokumentů použijeme Aspose.PDF for Java. Jedná se o funkčně bohaté API pro vytváření, zpracování a převod souborů PDF z aplikací Java. JAR API si můžete buď stáhnout, nebo jej nainstalovat pomocí následujících konfigurací 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>
Přidejte textový vodoznak do PDF v Javě
Níže jsou uvedeny kroky pro přidání textového vodoznaku do PDF pomocí Java.
- Načtěte PDF pomocí třídy Document.
- Vytvořte instanci třídy FormattedText a nastavte text vodoznaku a jeho vlastnosti.
- Vytvořte instanci třídy WatermarkArtifact.
- Přidejte k artefaktu text a nastavte vlastnosti, jako je zarovnání, úhel otočení, neprůhlednost, pozadí atd.
- Přidejte textový vodoznak na požadovanou stránku PDF pomocí metody Document.getPages().getItem(index).getArtifacts().add(WatermarkArtifact).
- Uložte aktualizovaný dokument PDF pomocí metody Document.save(String).
Následující ukázka kódu ukazuje, jak přidat textový vodoznak do dokumentu PDF.
// Načíst dokument PDF
Document doc = new Document("input.pdf");
// Vytvořte formátovaný text
FormattedText formattedText = new FormattedText("Confidential Document", java.awt.Color.RED, FontStyle.Courier, EncodingType.Identity_h, true, 40.0F);
// Vytvořte artefakt vodoznaku a nastavte jeho vlastnosti
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);
// Přidejte vodoznak na první stránku PDF
doc.getPages().get_Item(1).getArtifacts().add(artifact);
// Uložte dokument PDF s vodoznakem
doc.save("watermark.pdf");
Výstup
Následuje snímek obrazovky PDF s vodoznakem.
Přidat vodoznak obrázku do PDF v Javě
Níže jsou uvedeny kroky pro přidání vodoznaku obrázku do PDF pomocí Java.
- Načtěte PDF pomocí třídy Document.
- Vytvořte instanci třídy BackgroundArtifact a nastavte její obrázek na pozadí a další vlastnosti.
- Přidejte vodoznak obrázku na požadovanou stránku PDF pomocí metody Document.getPages().getItem(index).getArtifacts().add(BackgroundArtifact).
- Uložte aktualizovaný dokument PDF pomocí metody Document.save(String).
Následující ukázka kódu ukazuje, jak přidat vodoznak obrázku do dokumentu PDF.
// Načíst dokument PDF
Document doc = new Document("input.pdf");
// Vytvořte artefakt na pozadí
BackgroundArtifact background = new BackgroundArtifact();
// Zadejte obrázek pro objekt artefaktu pozadí
background.setBackgroundImage(new FileInputStream("logo.png"));
background.setOpacity(0.5);
background.setArtifactHorizontalAlignment(HorizontalAlignment.Center);
background.setArtifactVerticalAlignment(VerticalAlignment.Center);
// Přidejte vodoznak na první stránku PDF
doc.getPages().get_Item(1).getArtifacts().add(background);
// Uložte dokument PDF s vodoznakem
doc.save("watermark.pdf");
Výstup
Následuje snímek obrazovky PDF s vodoznakem.
Získejte bezplatnou licenci API
Můžete získat dočasnou licenci, abyste mohli používat API bez omezení hodnocení.
Závěr
V tomto článku jste se naučili, jak přidat textový nebo obrázkový vodoznak do PDF pomocí Java. Také jste viděli, jak upravit vzhled vodoznaku pomocí různých vlastností. Více o Java PDF API se můžete dozvědět pomocí dokumentace. Pokud byste měli nějaké dotazy, dejte nám vědět prostřednictvím našeho fóra.