Jump to content

marca d'agua em imagens


jcfr
 Share

Recommended Posts

boas tardes a todos, já experimentei vários exemplos que encontrei na internet e os que consegui colocar a funcionar davam sempre algum erro....

queria adicionar uma marca de agua a uma imagem quando mostro a imagem...

de preferencia utilizando codigo php, mas se der com javascript ou css tb pode ser...

alguém me consegue ajudar nisso ou indicar um tutorial que seja realente bom para isso dentro das linguagens que indiquei?

obrigado a toda a comunidade que me tem ajudado emenso....

Link to comment
Share on other sites

obrigado pela correcção e pela ajuda, entretanto já tinha conseguido resolver a questão deixo aqui o codigo que encontrei porque pode ser util a alguem:

u8tiliza-se um fixeiro que mostra a imagem e uma que cria a imagem com a marca de agua, a que cria a imagem com marca de agua é a water.php:

<?php
#variavel que recebe a url/caminho da imagem
$filename = $_GET['img'];
header('Content-type: image/jpeg');

#dados da mascara [caminho do arquivo que serve de mascara]
$marca =  "img/logo.gif";
$imagem_marca =   ImageCreateFromGif($marca);
$pontoX1 =   ImagesX($imagem_marca);
$pontoY1 =   ImagesY($imagem_marca);

#recupera as dimensoes da imagem
list($width, $height) = getimagesize($filename);

#definindo tamanho padrão para as fotos
$new_width = 513;
$new_height = 343;

#redesenhando a imagem
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

#Habilitando a opcao abaixo irá criar a mascara com a imagem marca d’agua
ImageCopyMerge($image_p, $imagem_marca, 10, 10, 0, 0, $pontoX1, $pontoY1, 30);

imagejpeg($image_p, null, 100);
imagedestroy($image_p);
?>

noutra página chamada teste.php coloca-se a exibição da imagem:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" target="_top" href="../estilos.css">
<title>Untitled Document</title>

</head>

<body>

<img src="water.php?img=http://www.ump.edu.br/metro/files/image/japao2.jpg">
</body>
</html>

a imagem será mostrada no teste.php já com a marca de água, este codigo não foi criado por mim mas deixo-o pois pode ser bastante util a quem precisar.

Link to comment
Share on other sites

Suponho que por marca de água queiras proteger a imagem de direitos de autor, etc. Não experimentei a função, mas olhando para o código que apresentas (HTML), parece-me ser bastante simples obter uma versão sem marca de água (tens ali o endereço da imagem original bem visivel).

Talvez fosse melhor uma função de PHP que aceitasse como parâmetro uma imagem, criasse uma imagem temporária numa pasta e devolvesse o endereço da imagem gerada. Apenas esse endereço era visível no código fonte HTML, não havendo possibilidade do utilizador obter uma versão sem marca de água.

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

a imagem que coloquei é apenas um exemplo, procurei uma imagem qualquer na net e meti como exemplo, no meu caso em vez do caminho da imagem na net aparece algo do genero <?php echo $row[28] ?> sendo que o caminho está a ser retirado da base de dados e nao directamente do directorio, a ideia é usar a função para aplicar a varias imagens e nao a uma fixa....

o exemplo que dei da base de dados é apenas um exemplo também...

Link to comment
Share on other sites

Tudo bem, mas como a lógica é fazer com que o utilizador apenas tenha acesso à versão com marca de água, não ficaria muito bem o url original ali acessível no código fonte, foi só mesmo por isso. 😄

Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.