As marcas d'água são uma maneira clara, mas sutil, de identificar o proprietário de um arquivo específico. Embora as pessoas possam achá-los irritantes, eles servem ao seu propósito graciosamente.
Com uma marca d'água, você pode não apenas proteger seus arquivos, mas também adicionar texto descritivo, local, hora de geração e muito mais. Então, da próxima vez que você entregar sua tarefa ou papel de jornal, certifique-se de adicionar uma marca d'água usando este programa Python simples.
O que é o módulo ReportLab?
Para adicionar uma marca d'água a um arquivo PDF, você precisará de uma boa biblioteca como o módulo ReportLab. É uma biblioteca de código aberto que permite criar PDFs, além de adicionar gráficos, dados e gráficos a eles. Este módulo ajuda você a gerar PDFs dinâmicos, converter arquivos XML em PDFs e gerar relatórios. Para instalar o ReportLab em seu sistema, abra um terminal e digite:
pip instalar relatório de laboratório
Isso instala o ReportLab em seu ambiente Python.
O que é o módulo PyPDF2?
PyPDF2 é uma biblioteca popular que você pode usar para executar uma variedade de operações úteis de PDF. Isso inclui cortar, mesclar, dividir, girar, transformar, adicionar dados, carimbar e marca d'água. Você também pode criptografar e descriptografar, extrair texto, imagens e metadados e ler ou adicionar anotações em PDF. Para instalar o PyPDF2 em seu sistema, abra um terminal e digite:
pip instalar PyPDF2
Isso instala o PyPDF2 em seu ambiente Python.
Como adicionar a marca d'água desejada ao PDF usando Python
Adicionar uma marca d'água a um arquivo PDF usando Python é bastante simples. Você criará uma tela e desenhará a marca d'água de texto usando sua cor e direção favoritas e, em seguida, salve-a como PDF.
Após a geração desse design de marca d'água de uma página, você pode abrir os dois PDFs e mesclá-los página por página. Voilà, seu PDF com marca d'água está pronto.
Comece seu programa importando tela de pdfgen, localizado no relatório de laboratório módulo. A interface pdfgen atua no nível mais baixo para gerar PDFs. Você pode visualizá-lo pintando o design e a estrutura de um documento em uma página. A classe canvas fornece as operações necessárias para isso.
Você pode pensar na tela como uma folha de papel comum com coordenadas cartesianas. O ponto de origem (0,0) está no canto inferior esquerdo. Os valores das coordenadas x e y aumentam à medida que os pontos se afastam da origem, para cima e para a direita.
Da biblioteca ReportLab, importe polegada, cor, e tamanho da página. O programa usará polegadas como unidade de medida. Existem dois formatos de cores disponíveis no ReportLab: o RGB modelo, e o CYMK modelo. RGB é preferível, mas se você quiser mais controle sobre o nível de cores que aparecem ao imprimir o PDF, pode optar por CYMK.
Como o nome sugere, o tamanho da página é definido para A4. Além disso, importe o PDFFileReader e PdfFileWriter de PyPDF2 para executar operações de leitura e gravação em arquivos PDF.
de reportlab.pdfgen importar tela
de relatóriolab.lib.unidades importar polegada
de reportlab.lib importar cores
de reportlab.lib.pagesizes importar A4
de PyPDF2 importar PdfFileReader, PdfFileWriter
Defina uma função chamada makeWatermark() para criar o arquivo PDF de marca d'água de uma página que você usará posteriormente para aplicar nas páginas do documento desejado. Peça ao usuário para inserir o texto da marca d'água usando a instrução de entrada.
Use a tela para gerar uma área de desenho com o nome watermark.pdf e tamanho de página A4. O traduzir() A função move a origem para o canto superior esquerdo.
Defina o arquivo do texto para cinza com uma opacidade de 0,6; em uma escala de 0-1, 0 é o mais transparente e 1 é o mais opaco. Defina o estilo da fonte para Helvetica com um tamanho de 50. Aplique uma rotação de 45 graus no sentido anti-horário. Passe as coordenadas x e y junto com o texto para desenhá-lo sobre a tela e salve-o usando a função save().
deffazer marca d'água():
texto = entrada("Digite o texto da marca d'água aqui:")
pdf = tela. Tela("marca d'água.pdf", tamanho da página=A4)
pdf.traduzir(polegada, polegada)
pdf.setFillColor (colors.grey, alpha=0.6)
pdf.setFonte("Helvética", 50)
pdf.girar(45)
pdf.drawCenteredString(400, 100, texto)
pdf.salvar()
O arquivo PDF de marca d'água que a função acima gera tem a seguinte aparência:
Defina uma função chamada makepdf() para marcar as páginas do PDF. Insira o nome do arquivo que você deseja marca d'água, incluindo qualquer .pdf extensão. Inicialize uma variável para armazenar o nome do PDF com marca d'água. Abra ambos os arquivos no modo binário de leitura.
Use o PdfFileReader() para instanciar um objeto que representa cada PDF. Use o getPage() função para obter a primeira e única página do PDF com marca d'água.
defmakepdf():
arquivo_pdf = entrada("Ficheiro PDF: ")
marca d'água = 'marca d'água.pdf'
mesclado = "Marca d'água.pdf"
comabrir(ficheiro PDF, "rb") como Arquivo de entrada, abrir(marca d'água, "rb") como marca d'água_arquivo:
input_pdf = PdfFileReader (input_file)
watermark_pdf = PdfFileReader (watermark_file)
watermark_page = watermark_pdf.getPage (0)
Agora é hora de mesclar a página da marca d'água com cada página do PDF de destino.
Crie um objeto da classe PdfFileWriter para usar para gerar o PDF de saída. Defina um loop que repita cada página no PDF desejado. A função getNumPages() retorna o número total de páginas em um PDF. Use a função getPage() para obter a página e mesclá-la com a página de marca d'água armazenada anteriormente.
Use o objeto PdfFileWriter para adicionar cada página mesclada ao PDF final. Depois de criar o PDF de saída, abra o arquivo de saída no modo binário de gravação e use a função write() para salvar o pdf com marca d'água neste arquivo.
output = PdfFileWriter()
paraeuemfaixa(input_pdf.getNumPages()):
pdf_page = input_pdf.getPage (i)
pdf_page.mergePage(marca d'água_page)
saída.adicionar Página(pdf_page)
comabrir(fundido, "wb") como arquivo_mesclado:
saída.escrever(arquivo_mesclado)
Por fim, chame as duas funções — makeWatermark() e makepdf() — para criar o arquivo PDF com marca d'água:
makeWatermark()
makepdf()
O PDF de texto com marca d'água gerado usando o programa Python acima se parece com isto:
Além disso, você pode seguir este método de cinco etapas para crie e adicione uma marca d'água a qualquer imagem usando o Canva. Você também pode usar técnicas para marca d'água em seus vídeos em apenas alguns minutos.
Pode haver momentos em que você adicionou uma marca d'água por engano e deseja removê-la. Você pode usar ferramentas online como Soda PDF, Microsoft Word, Google Docs e PDF Zorro gratuitamente. Para imagens, você pode explorar ferramentas como Wondershare PixCut, Inpaint, Aiseesoft, Apowersoft e Cutout.pro.
Para remoção gratuita de marca d'água em vídeos, use Apowersoft, 123apps, PickFrom Blur e BeeCut.
No entanto, lembre-se de não usar nenhum material protegido por direitos autorais sem a permissão do proprietário.