Se hai bisogno di aggiungere una filigrana a PDF in Java, una sovrapposizione visiva può proteggere i tuoi documenti da utilizzi non autorizzati. Conholdate.Total for Java offre un SDK potente che semplifica la manipolazione dei PDF sul lato server. In questa guida vedrai un esempio completo, pronto‑all‑uso, imparerai come funziona ogni riga, configurerai la dipendenza Maven e scoprirai le opzioni per regolare finemente opacità, rotazione e allineamento per risultati professionali.
Esempio di codice completo: aggiungere una filigrana di testo a PDF in Java
Il seguente esempio dimostra come aggiungere una filigrana di testo a un PDF utilizzando Conholdate.Total for Java.
import com.groupdocs.watermark.Watermark;
import com.groupdocs.watermark.options.PdfLoadOptions;
import com.groupdocs.watermark.options.PdfSaveOptions;
import com.groupdocs.watermark.watermarks.TextWatermark;
import com.groupdocs.watermark.watermarks.HorizontalAlignment;
import com.groupdocs.watermark.watermarks.VerticalAlignment;
import java.awt.Color;
import java.awt.Font;
public class AddPdfWatermark {
public static void main(String[] args) {
String inputFile = "input.pdf";
String outputFile = "output.pdf";
// Create a text watermark
Font font = new Font("Arial", Font.BOLD, 48);
TextWatermark textWatermark = new TextWatermark("CONFIDENTIAL", font);
textWatermark.setColor(Color.RED);
textWatermark.setOpacity(0.3);
textWatermark.setRotationAngle(45);
textWatermark.setHorizontalAlignment(HorizontalAlignment.Center);
textWatermark.setVerticalAlignment(VerticalAlignment.Center);
// Load options for the source PDF (enable caching for large files)
PdfLoadOptions loadOptions = new PdfLoadOptions(inputFile);
loadOptions.setCacheSize(100 * 1024 * 1024); // 100 MB cache
// Initialize the Watermark processor
Watermark watermark = new Watermark();
try {
// Apply the watermark to every page of the PDF
watermark.add(textWatermark, loadOptions);
// Save the watermarked PDF
PdfSaveOptions saveOptions = new PdfSaveOptions();
watermark.save(outputFile, saveOptions);
} catch (Exception e) {
System.err.println("Failed to add watermark: " + e.getMessage());
e.printStackTrace();
}
}
}
Nota: Questo esempio di codice dimostra la funzionalità principale. Prima di utilizzarlo nel tuo progetto, assicurati di aggiornare i percorsi dei file (
input.pdf,output.pdf, ecc.) per corrispondere alle tue effettive posizioni dei file, verifica che tutte le dipendenze richieste siano correttamente installate e testa accuratamente nel tuo ambiente di sviluppo. Se riscontri problemi, consulta la documentazione ufficiale o contatta il team di supporto per assistenza.
Comprendere l’aggiunta di filigrana a PDF in codice Java
Il codice per aggiungere una filigrana a PDF in Java segue una sequenza chiara che puoi adattare a qualsiasi documento PDF.
- Inizializzare il Processore di Filigrana -
Watermark watermark = new Watermark();crea il motore che applicherà le filigrane. - Creare un TextWatermark - L’oggetto
TextWatermarkcontiene il testo, il font, il colore, l’opacità e la rotazione.Font font = new Font("Arial", Font.BOLD, 48); TextWatermark textWatermark = new TextWatermark("CONFIDENTIAL", font); - Configurare l’Aspetto - Metodi come
setColor,setOpacityesetRotationAngledefiniscono come appare la filigrana sulla pagina. - Caricare il PDF di Origine -
PdfLoadOptionscarica il file di input e abilita la cache per documenti di grandi dimensioni, riducendo la pressione sulla memoria. - Applicare e Salvare -
watermark.add(textWatermark, loadOptions);applica la filigrana a ogni pagina, ewatermark.save(outputFile, saveOptions);scrive il risultato.
Caricamento del PDF di origine con caching
Quando lavori con PDF di più megabyte, abilitare una cache impedisce al SDK di caricare l’intero documento in memoria. La riga loadOptions.setCacheSize(100 * 1024 * 1024); riserva 100 MB per l’archiviazione temporanea, consentendo al processore di trasmettere le pagine secondo necessità. Questo approccio è particolarmente utile negli ambienti server dove possono essere eseguiti molti lavori di watermarking concorrenti.
Per informazioni dettagliate sull’API, consulta il riferimento API Java.
Preparare l’ambiente per l’aggiunta di filigrane PDF
Il flusso di lavoro per aggiungere una filigrana a PDF in Java inizia aggiungendo la dipendenza Maven. Dopo di ciò, è necessario un JDK compatibile e una piccola quantità di configurazione.
Prerequisiti e versione Java
- È necessario Java 8 o versioni successive; l’SDK utilizza funzionalità linguistiche moderne e stream.
- Maven 3.5+ semplifica la gestione delle dipendenze.
- Assicurati che il file
pom.xmldel tuo progetto includa il repository Conholdate in modo che Maven possa risolvere l’artifact.
<repositories>
<repository>
<id>conholdate-repo</id>
<name>Conholdate Maven Repository</name>
<url>https://repository.conholdate.com/repo/</url>
</repository>
</repositories>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.9</version>
<type>pom</type>
</dependency>
Puoi anche ottenere i file JAR direttamente dalla pagina di download. Dopo aver aggiunto la dipendenza, esegui mvn clean install per verificare che l’SDK sia nel tuo classpath.
Utilizzo dell’API REST (Opzionale)
Se preferisci un approccio indipendente dal linguaggio, Conholdate.Total offre anche un endpoint REST che può aggiungere filigrane senza alcun codice Java. Un semplice comando curl è il seguente:
curl -X POST "https://api.conholdate.com/v1/pdf/watermark" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-F "file=@input.pdf" \
-F "text=CONFIDENTIAL" \
-F "font=Arial" \
-F "fontSize=48" \
-F "color=FF0000" \
-F "opacity=0.3" \
-F "angle=45" \
-F "horizontalAlignment=center" \
-F "verticalAlignment=center" \
-o output.pdf
La versione REST segue gli stessi passaggi logici di caricamento, configurazione, applicazione e salvataggio, così puoi scegliere l’approccio che meglio si adatta alla tua architettura.
Configurazione dell’aspetto e della posizione della filigrana
L’SDK espone diverse proprietà che consentono di regolare fin‑tune la filigrana. Di seguito sono riportate le impostazioni più frequentemente modificate.
Personalizzazione del carattere e del colore
Puoi sostituire il font Arial predefinito con qualsiasi font TrueType disponibile sul server. Cambiare il colore è semplice come passare una costante java.awt.Color diversa o creare un valore RGB personalizzato.
Font customFont = new Font("Times New Roman", Font.ITALIC, 36);
textWatermark.setColor(new Color(0, 102, 204)); // Deep blue
textWatermark.setFont(customFont);
Regolazione dell’opacità e della rotazione
L’opacità controlla quanto è trasparente la filigrana. I valori vanno da 0.0 (completamente invisibile) a 1.0 (completamente opaco). La rotazione consente di inclinare il testo per renderlo più difficile da rimuovere.
textWatermark.setOpacity(0.45); // 45% opacity
textWatermark.setRotationAngle(30); // 30 degrees clockwise
Allineare la filigrana sulla pagina
Le proprietà di allineamento orizzontale e verticale accettano Left, Center, Right e Top, Center, Bottom. La centratura è comune per i timbri riservati, ma è possibile posizionare il watermark in un angolo per scopi di branding.
textWatermark.setHorizontalAlignment(HorizontalAlignment.Right);
textWatermark.setVerticalAlignment(VerticalAlignment.Bottom);
Se vuoi aggiungere una filigrana di testo a PDF in Java con un layout diverso su ogni pagina, puoi modificare queste proprietà all’interno di un ciclo che elabora le pagine singolarmente. L’SDK supporta anche filigrane immagine, riempimenti a gradiente e testo multilinea se il tuo caso d’uso richiede una maggiore complessità visiva.
Conclusione
Aggiungere una filigrana a un PDF in Java è semplice con Conholdate.Total for Java. L’SDK gestisce il caricamento, l’elaborazione e il salvataggio dei PDF in modo efficiente, anche per file di grandi dimensioni grazie alla cache integrata. Personalizzando opacità, rotazione, carattere, colore e allineamento è possibile creare filigrane dall’aspetto professionale che scoraggiano la distribuzione non autorizzata. Ricorda di acquisire una licenza adeguata per l’uso in produzione; puoi richiedere una licenza temporanea dalla pagina della licenza temporanea o consultare le opzioni di prezzo nella pagina dei prezzi. Con il codice e i passaggi di configurazione coperti, sei pronto a integrare la filigrana PDF nelle tue applicazioni Java.
FAQs
Come posso aggiungere una filigrana a un PDF in Java senza scrivere codice PDF a basso livello?
Usa la classe Watermark di Conholdate.Total for Java. Essa astrae la struttura del PDF, consentendoti di concentrarti sulle proprietà della filigrana come testo, carattere e posizionamento.
Quali opzioni sono disponibili per formattare il watermark di testo?
È possibile impostare il carattere (new Font(...)), la dimensione, lo stile (grassetto, corsivo), il colore (setColor), l’opacità (setOpacity), la rotazione (setRotationAngle) e l’allineamento (setHorizontalAlignment, setVerticalAlignment). Queste opzioni sono illustrate nell’esempio di codice completo.
L’SDK è in grado di elaborare PDF di grandi dimensioni in modo efficiente?
Sì. Configurando PdfLoadOptions.setCacheSize, si abilita lo streaming e la memorizzazione nella cache, il che riduce il consumo di memoria per PDF multi‑megabyte. Questo rende il flusso di lavoro add Watermark to PDF in Java adatto all’elaborazione batch sui server.
Devo acquistare una licenza per eseguire questo esempio?
È necessaria una licenza per le distribuzioni in produzione. Ottieni una licenza temporanea dalla pagina della licenza temporanea o consulta i dettagli completi dei prezzi nella pagina dei prezzi.
