<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>java pdf on Conholdate Blog</title>
    <link>https://blog-qa.conholdate.com/pt/tag/java-pdf/</link>
    <description>Recent content in java pdf on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>pt</language>
    <lastBuildDate>Mon, 07 Sep 2026 03:41:37 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/pt/tag/java-pdf/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Adicionar marca d&#39;água a PDF em Java</title>
      <link>https://blog-qa.conholdate.com/pt/total/add-watermark-to-pdf-in-java/</link>
      <pubDate>Mon, 07 Sep 2026 03:41:37 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/pt/total/add-watermark-to-pdf-in-java/</guid>
      <description>Aprenda como adicionar uma marca d&amp;#39;água a arquivos PDF em Java usando Conholdate.Total for Java. Este guia passo a passo inclui código completo, dicas de configuração e instalação.</description>
      <content:encoded><![CDATA[<p>Se você precisar adicionar marca d&rsquo;água a <a href="https://docs.fileformat.com/pdf">PDF</a> em Java, uma sobreposição visual pode proteger seus documentos contra uso não autorizado. <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> fornece um SDK poderoso que simplifica a manipulação de PDF no lado do servidor. Neste guia você verá um exemplo completo, pronto‑para‑executar, aprenderá como cada linha funciona, configurará a dependência Maven e descobrirá opções para ajustar finamente a opacidade, rotação e alinhamento para resultados profissionais.</p>
<h2 id="exemplo-de-código-completo-adicionando-uma-marca-dágua-de-texto-ao-pdf-em-java">Exemplo de Código Completo: Adicionando uma Marca d&rsquo;água de Texto ao PDF em Java</h2>
<p>O exemplo a seguir demonstra como adicionar uma marca d&rsquo;água de texto a um PDF usando Conholdate.Total for Java.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.Watermark<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.options.PdfLoadOptions<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.options.PdfSaveOptions<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.watermarks.TextWatermark<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.watermarks.HorizontalAlignment<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.watermark.watermarks.VerticalAlignment<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.awt.Color<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.awt.Font<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">AddPdfWatermark</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">public</span> <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">main</span><span style="color:#f92672">(</span>String<span style="color:#f92672">[]</span> args<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        String inputFile <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.pdf&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>        String outputFile <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output.pdf&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Create a text watermark
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        Font font <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Font<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Arial&#34;</span><span style="color:#f92672">,</span> Font<span style="color:#f92672">.</span><span style="color:#a6e22e">BOLD</span><span style="color:#f92672">,</span> 48<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        TextWatermark textWatermark <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> TextWatermark<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;CONFIDENTIAL&#34;</span><span style="color:#f92672">,</span> font<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setColor</span><span style="color:#f92672">(</span>Color<span style="color:#f92672">.</span><span style="color:#a6e22e">RED</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setOpacity</span><span style="color:#f92672">(</span>0<span style="color:#f92672">.</span><span style="color:#a6e22e">3</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setRotationAngle</span><span style="color:#f92672">(</span>45<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setHorizontalAlignment</span><span style="color:#f92672">(</span>HorizontalAlignment<span style="color:#f92672">.</span><span style="color:#a6e22e">Center</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setVerticalAlignment</span><span style="color:#f92672">(</span>VerticalAlignment<span style="color:#f92672">.</span><span style="color:#a6e22e">Center</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Load options for the source PDF (enable caching for large files)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        PdfLoadOptions loadOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> PdfLoadOptions<span style="color:#f92672">(</span>inputFile<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        loadOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setCacheSize</span><span style="color:#f92672">(</span>100 <span style="color:#f92672">*</span> 1024 <span style="color:#f92672">*</span> 1024<span style="color:#f92672">);</span> <span style="color:#75715e">// 100 MB cache
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Initialize the Watermark processor
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        Watermark watermark <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Watermark<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">try</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Apply the watermark to every page of the PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            watermark<span style="color:#f92672">.</span><span style="color:#a6e22e">add</span><span style="color:#f92672">(</span>textWatermark<span style="color:#f92672">,</span> loadOptions<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Save the watermarked PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            PdfSaveOptions saveOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> PdfSaveOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>            watermark<span style="color:#f92672">.</span><span style="color:#a6e22e">save</span><span style="color:#f92672">(</span>outputFile<span style="color:#f92672">,</span> saveOptions<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span> <span style="color:#66d9ef">catch</span> <span style="color:#f92672">(</span>Exception e<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            System<span style="color:#f92672">.</span><span style="color:#a6e22e">err</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Failed to add watermark: &#34;</span> <span style="color:#f92672">+</span> e<span style="color:#f92672">.</span><span style="color:#a6e22e">getMessage</span><span style="color:#f92672">());</span>
</span></span><span style="display:flex;"><span>            e<span style="color:#f92672">.</span><span style="color:#a6e22e">printStackTrace</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><blockquote>
<p><strong>Nota:</strong> Este exemplo de código demonstra a funcionalidade principal. Antes de usá‑lo em seu projeto, certifique‑se de atualizar os caminhos dos arquivos (<code>input.pdf</code>, <code>output.pdf</code>, etc.) para corresponder às suas localizações reais, verifique se todas as dependências necessárias estão corretamente instaladas e teste minuciosamente em seu ambiente de desenvolvimento. Se encontrar algum problema, consulte a <a href="https://docs.conholdate.com/java/">documentação oficial</a> ou entre em contato com a <a href="https://forum.conholdate.com/c/total/5">equipe de suporte</a> para obter assistência.</p>
</blockquote>
<h2 id="entendendo-a-adição-de-marca-dágua-a-pdf-em-código-java">Entendendo a Adição de Marca d&rsquo;água a PDF em Código Java</h2>
<p>O código para adicionar marca d&rsquo;água a PDF em Java segue uma sequência clara que você pode adaptar para qualquer documento PDF.</p>
<ol>
<li><strong>Inicializar o Processador de Marca d&rsquo;água</strong> - <code>Watermark watermark = new Watermark();</code> cria o mecanismo que aplicará marcas d&rsquo;água.</li>
<li><strong>Criar um TextWatermark</strong> - O objeto <code>TextWatermark</code> contém o texto, a fonte, a cor, a opacidade e a rotação.
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>Font font <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Font<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Arial&#34;</span><span style="color:#f92672">,</span> Font<span style="color:#f92672">.</span><span style="color:#a6e22e">BOLD</span><span style="color:#f92672">,</span> 48<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>TextWatermark textWatermark <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> TextWatermark<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;CONFIDENTIAL&#34;</span><span style="color:#f92672">,</span> font<span style="color:#f92672">);</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
</li>
<li><strong>Configurar a Aparência</strong> - Métodos como <code>setColor</code>, <code>setOpacity</code> e <code>setRotationAngle</code> definem como a marca d&rsquo;água aparece na página.</li>
<li><strong>Carregar o PDF de Origem</strong> - <code>PdfLoadOptions</code> carrega o arquivo de entrada e habilita o cache para documentos grandes, o que reduz a pressão de memória.</li>
<li><strong>Aplicar e Salvar</strong> - <code>watermark.add(textWatermark, loadOptions);</code> aplica a marca d&rsquo;água a todas as páginas, e <code>watermark.save(outputFile, saveOptions);</code> grava o resultado.</li>
</ol>
<h3 id="carregando-o-pdf-de-origem-com-cache">Carregando o PDF de origem com cache</h3>
<p>Quando você trabalha com PDFs de vários megabytes, habilitar um cache impede que o SDK carregue o documento inteiro na memória. A linha <code>loadOptions.setCacheSize(100 * 1024 * 1024);</code> reserva 100 MB para armazenamento temporário, permitindo que o processador faça streaming das páginas conforme necessário. Essa abordagem é especialmente útil em ambientes de servidor onde muitas tarefas de marca d&rsquo;água concorrentes podem ser executadas.</p>
<p>Para informações detalhadas da API, veja a <a href="https://reference.conholdate.com/java/">referência da API Java</a>.</p>
<h2 id="preparando-o-ambiente-para-marca-dágua-em-pdf">Preparando o Ambiente para Marca d&rsquo;água em PDF</h2>
<p>O fluxo de trabalho de adicionar marca d&rsquo;água a PDF em Java começa com a adição da dependência Maven. Depois disso, você precisa de um JDK compatível e de uma pequena quantidade de configuração.</p>
<h3 id="pré-requisitos-e-versão-do-java">Pré-requisitos e versão do Java</h3>
<ul>
<li>Java 8 ou superior é necessário; o SDK usa recursos modernos da linguagem e streams.</li>
<li>Maven 3.5+ simplifica o gerenciamento de dependências.</li>
<li>Certifique‑se de que o <code>pom.xml</code> do seu projeto inclua o repositório Conholdate para que o Maven possa resolver o artefato.</li>
</ul>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#f92672">&lt;repositories&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;repository&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;id&gt;</span>conholdate-repo<span style="color:#f92672">&lt;/id&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;name&gt;</span>Conholdate Maven Repository<span style="color:#f92672">&lt;/name&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;url&gt;</span>https://repository.conholdate.com/repo/<span style="color:#f92672">&lt;/url&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;/repository&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/repositories&gt;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;dependency&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;groupId&gt;</span>com.conholdate<span style="color:#f92672">&lt;/groupId&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;artifactId&gt;</span>conholdate-total<span style="color:#f92672">&lt;/artifactId&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;version&gt;</span>24.9<span style="color:#f92672">&lt;/version&gt;</span>
</span></span><span style="display:flex;"><span>  <span style="color:#f92672">&lt;type&gt;</span>pom<span style="color:#f92672">&lt;/type&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/dependency&gt;</span>
</span></span></code></pre></div><p>Você também pode obter os arquivos JAR diretamente da <a href="https://releases.conholdate.com/total/java/">página de download</a>. Depois de adicionar a dependência, execute <code>mvn clean install</code> para verificar se o SDK está no seu classpath.</p>
<h3 id="usando-a-api-rest-opcional">Usando a API REST (Opcional)</h3>
<p>Se você preferir uma abordagem independente de linguagem, o Conholdate.Total também oferece um endpoint REST que pode adicionar marcas d&rsquo;água sem nenhum código Java. Um comando <code>curl</code> simples se parece com isto:</p>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.conholdate.com/v1/pdf/watermark&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;file=@input.pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;text=CONFIDENTIAL&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;font=Arial&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;fontSize=48&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;color=FF0000&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;opacity=0.3&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;angle=45&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;horizontalAlignment=center&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -F <span style="color:#e6db74">&#34;verticalAlignment=center&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>  -o output.pdf
</span></span></code></pre></div><!-- raw HTML omitted -->
<p>A versão REST segue os mesmos passos lógicos de carregar, configurar, aplicar e salvar, de modo que você pode escolher a abordagem que melhor se adapta à sua arquitetura.</p>
<h2 id="configurando-a-aparência-e-a-posição-da-marca-dágua">Configurando a Aparência e a Posição da Marca d&rsquo;água</h2>
<p>O SDK expõe várias propriedades que permitem ajustar finamente a marca d&rsquo;água. Abaixo estão as configurações mais frequentemente ajustadas.</p>
<h3 id="personalizando-fonte-e-cor">Personalizando Fonte e Cor</h3>
<p>Você pode substituir a fonte Arial padrão por qualquer fonte TrueType disponível no servidor. Alterar a cor é tão simples quanto passar uma constante <code>java.awt.Color</code> diferente ou criar um valor RGB personalizado.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>Font customFont <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Font<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Times New Roman&#34;</span><span style="color:#f92672">,</span> Font<span style="color:#f92672">.</span><span style="color:#a6e22e">ITALIC</span><span style="color:#f92672">,</span> 36<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setColor</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> Color<span style="color:#f92672">(</span>0<span style="color:#f92672">,</span> 102<span style="color:#f92672">,</span> 204<span style="color:#f92672">));</span> <span style="color:#75715e">// Deep blue
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setFont</span><span style="color:#f92672">(</span>customFont<span style="color:#f92672">);</span>
</span></span></code></pre></div><h3 id="ajustando-opacidade-e-rotação">Ajustando Opacidade e Rotação</h3>
<p>A opacidade controla o quão transparente a marca d&rsquo;água aparece. Os valores variam de <code>0.0</code> (completamente invisível) a <code>1.0</code> (totalmente opaco). A rotação permite inclinar o texto para torná-lo mais difícil de remover.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setOpacity</span><span style="color:#f92672">(</span>0<span style="color:#f92672">.</span><span style="color:#a6e22e">45</span><span style="color:#f92672">);</span>      <span style="color:#75715e">// 45% opacity
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setRotationAngle</span><span style="color:#f92672">(</span>30<span style="color:#f92672">);</span> <span style="color:#75715e">// 30 degrees clockwise
</span></span></span></code></pre></div><h3 id="alinhando-a-marca-dágua-na-página">Alinhando a Marca d&rsquo;água na página</h3>
<p>As propriedades de alinhamento horizontal e vertical aceitam <code>Left</code>, <code>Center</code>, <code>Right</code> e <code>Top</code>, <code>Center</code>, <code>Bottom</code>. O centramento é comum para carimbos confidenciais, mas você pode posicionar a marca d&rsquo;água em um canto para fins de branding.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setHorizontalAlignment</span><span style="color:#f92672">(</span>HorizontalAlignment<span style="color:#f92672">.</span><span style="color:#a6e22e">Right</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>textWatermark<span style="color:#f92672">.</span><span style="color:#a6e22e">setVerticalAlignment</span><span style="color:#f92672">(</span>VerticalAlignment<span style="color:#f92672">.</span><span style="color:#a6e22e">Bottom</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><p>Se você quiser <strong>adicionar marca d&rsquo;água de texto ao PDF em Java</strong> com um layout diferente em cada página, pode modificar essas propriedades dentro de um loop que processa as páginas individualmente. O SDK também suporta marcas d&rsquo;água de imagem, preenchimentos em degradê e texto multilinha, caso seu caso de uso exija mais complexidade visual.</p>
<h2 id="conclusão">Conclusão</h2>
<p>Adicionar uma marca d&rsquo;água a PDF em Java é simples com <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a>. O SDK lida com carregamento, processamento e salvamento de PDFs de forma eficiente, mesmo para arquivos grandes graças ao cache interno. Ao personalizar opacidade, rotação, fonte, cor e alinhamento, você pode criar marcas d&rsquo;água com aparência profissional que desencorajam a distribuição não autorizada. Lembre‑se de adquirir uma licença adequada para uso em produção; você pode solicitar uma licença temporária na <a href="https://purchase.conholdate.com/temporary-license/">página de licença temporária</a> ou revisar as opções de preços na <a href="https://purchase.conholdate.com/pricing/total/family/">página de preços</a>. Com o código e as etapas de configuração cobertos, você está pronto para integrar a marca d&rsquo;água de PDF em suas aplicações Java.</p>
<h2 id="perguntas-frequentes">Perguntas Frequentes</h2>
<p><strong>Como posso adicionar marca d&rsquo;água a um PDF em Java sem escrever código PDF de baixo nível?</strong><br>
Use a classe <code>Watermark</code> de <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a>. Ela abstrai a estrutura do PDF, permitindo que você se concentre nas propriedades da marca d&rsquo;água, como texto, fonte e posicionamento.</p>
<p><strong>Quais opções estão disponíveis para estilizar a marca d&rsquo;água de texto?</strong><br>
Você pode definir a fonte (<code>new Font(...)</code>), tamanho, estilo (negrito, itálico), cor (<code>setColor</code>), opacidade (<code>setOpacity</code>), rotação (<code>setRotationAngle</code>) e alinhamento (<code>setHorizontalAlignment</code>, <code>setVerticalAlignment</code>). Essas opções são demonstradas no exemplo de código completo.</p>
<p><strong>O SDK pode processar PDFs grandes de forma eficiente?</strong><br>
Sim. Ao configurar <code>PdfLoadOptions.setCacheSize</code>, você habilita streaming e cache, o que reduz o consumo de memória para PDFs de vários megabytes. Isso torna o fluxo de trabalho de adicionar marca d&rsquo;água a PDF em Java adequado para processamento em lote em servidores.</p>
<p><strong>Preciso comprar uma licença para executar este exemplo?</strong><br>
É necessária uma licença para implantações de produção. Obtenha uma licença temporária na <a href="https://purchase.conholdate.com/temporary-license/">página de licença temporária</a> ou explore os detalhes completos de preços na <a href="https://purchase.conholdate.com/pricing/total/family/">página de preços</a>.</p>
<h2 id="leia-mais">Leia Mais</h2>
<ul>
<li><a href="https://blog.conholdate.com/pt/total/add-text-to-pdf-in-java/">Adicionar Texto ao PDF em Java</a></li>
<li><a href="https://blog.conholdate.com/pt/total/add-shapes-to-pdf-in-java/">Adicionar Formas ao PDF em Java</a></li>
<li><a href="https://blog.conholdate.com/pt/total/add-barcode-to-pdf-in-java/">Adicionar Código de Barras ao PDF em Java</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
