Ir para conteúdo
Rogério Dias

Marca D'água

Recommended Posts

Prezados amigos, bom dia.

Estou criando uma rede social onde os usuários publicarão suas fotos e preciso colocar a marca dágua nas fotos para evitar o roubo e uso indevido da imagem. Porém, essa marca dágua será com o nome do usuário logado. Exemplo: O meu nome de usuário é rdiasf e caso eu salve a imagem no meu PC, a foto será salva com a marca dágua com o meu nome de usuário espalhado pela imagem. Desta forma, se a pessoa utilizar a imagem ficará fácil identificar quem fez o download da imagem.

 

Exemplo:

O usuário X acessa o perfil do usuário Y.... clica para ver as fotos...
Quero que as fotos tenham uma marca d'agua com o nome do usuário visitante, pois, caso ele "roube" esta foto, ela será salva com o nome do usuário que fez o download. Daí, será possível identificar quem fez o download e banir este usuário da rede.

 

Se o usuário X visitar uma foto de um outro perfil... esta foto terá a marca "usuário X" espalhado por ela.

Se o usuário Z visitar a mesma foto no mesmo momento, a foto terá a marca "usuário Z" espalhado por ela.

 

Como faço isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por velys
      Tenho uma classe de redimensionamento de imagens e gostaria de acrescentar Marca d'agua nela e não estou conseguindo alguem pode me ajudar?
      ai vai minha classe

      //CLASSE DE IMAGEM, GERA MINIATURA class manipulaImagens{ function manipulaImagens(){ $this->imagem=''; $this->tipo=''; $this->maxLargura=0; $this->maxAltura=0; $this->radical=''; $this->id=0; $this->tabela=''; $this->campoimg=''; $this->campoid=''; $this->destino=''; $this->quad=false; $this->ext=''; $this->msg=''; $this->imgInfos=''; } function verificaTipo($imagem, $tipo){ $this->imagem=$imagem; $this->tipo=$tipo; if($this->imagem!='none'){ if($this->tipo=='image/pjpeg' || $this->tipo=='image/jpeg'){ $this->ext='.jpg'; $this->img = imagecreatefromjpeg($this->imagem); }else if($this->tipo=='image/gif'){ $this->ext='.gif'; $this->img = imagecreatefromgif($this->imagem); }else{ $this->msg="Tipo inválido de arquivo"; } $this->finaliza(); } } function verificaTamanhoImg($imagem){ $this->maxLargura=$maxLargura; $this->maxAltura=$maxAltura; $this->imgInfos = getimagesize($this->imagem); // PEGANDO INFORMAÇÕES DA IMAGEM $this->larguraAtual = $this->imgInfos[0]; $larguraAtual = $this->imgInfos[0]; $this->alturaAtual = $alturaAtual = $this->imgInfos[1]; if( $larguraAtual < 500 or $alturaAtual < 600 ){ $this->msg="Tipo inválido de imagem. </br>Essa Imagem é muito pequena. </br>Envie uma imagem maior</br></br> Imagem enviada tem o tamanho de ".$alturaAtual."x".$larguraAtual." pixels e deve ter no minimo 800x800pxls"; } $this->finaliza(); } function verificaImgIgual($imagem){ $this->maxLargura=$maxLargura; $this->maxAltura=$maxAltura; $this->imgInfos = getimagesize($this->imagem); // PEGANDO INFORMAÇÕES DA IMAGEM $this->larguraAtual = $this->imgInfos[0]; $larguraAtual = $this->imgInfos[0]; $this->alturaAtual = $alturaAtual = $this->imgInfos[1]; if( $larguraAtual == 300 and $alturaAtual == 250 ){ } else{ $this->msg="Tipo inválido de imagem. </br>Envie uma imagem do tamanho exato de 300x250px</br></br> Imagem enviada tem o tamanho de altura de".$alturaAtual."px e comprimento de".$larguraAtual." px e deve ter exatamente altura = 250px e comprimento = 300px"; } $this->finaliza(); } function setaDimensoes($maxLargura, $maxAltura, $quad=false){ $this->maxLargura=$maxLargura; $this->maxAltura=$maxAltura; $this->imgInfos = getimagesize($this->imagem); // PEGANDO INFORMAÇÕES DA IMAGEM $this->larguraAtual = $this->imgInfos[0]; $larguraAtual = $this->imgInfos[0]; $this->alturaAtual = $alturaAtual = $this->imgInfos[1]; if( $larguraAtual < 600 or $alturaAtual < 600 ){ $this->msg="Tipo inválido de imagem. </br>Essa Imagem é muito pequena. </br>Envie uma imagem maior</br></br> Imagem enviada tem o tamanho de ".$alturaAtual."x".$larguraAtual." pixels e deve ter no minimo 800x800pxls"; } if( $larguraAtual > $maxLargura && $alturaAtual <= $maxAltura ){ $ratio = $maxLargura / $larguraAtual; }elseif( $alturaAtual > $maxAltura && $larguraAtual <= $maxLargura ){ $ratio = $maxAltura / $alturaAtual; }elseif( $larguraAtual > $maxLargura && $alturaAtual > $maxAltura ){ $ratio1 = $maxLargura / $larguraAtual; $ratio2 = $maxAltura / $alturaAtual; $ratio = ($ratio1 < $ratio2)? $ratio1:$ratio2; }else{ $ratio = 1; } $larguraNova = floor($larguraAtual*$ratio); $alturaNova = floor($alturaAtual*$ratio); $canvas = imagecreatetruecolor ($larguraNova,$alturaNova); $posx=0; $posy=0; //SETANDO IMAGEM QUADRADINHA if($quad==true){ $dim=$maxLargura; if($larguraNova>$alturaNova){ $alturaNova = $dim; $larguraNova = $larguraAtual * $dim / $alturaAtual; $sobra = ($larguraNova - $dim) / 2; $posx=-$sobra; }else{ $larguraNova = $dim; $alturaNova = $alturaAtual * $dim / $larguraAtual; $sobra = ($alturaAtual - $dim) / 2; $posy=-$sobra; } $canvas = imagecreatetruecolor ($dim,$dim); } $this->larguraNova=$larguraNova; $this->alturaNova=$alturaNova; $this->canvas=$canvas; $this->posx=$posx; $this->posy=$posy; } function salvaImagem($radical,$id, $destino, $tabela, $campoImg, $campoId){ $dt=date("Hidmy"); $nome=$radical.'_'.md5($id).$dt.$this->ext; $bgc = imagecolorallocate($this->canvas, 255, 255, 255); imagefilledrectangle($this->canvas, 0, 0, 60, 60, $bgc); imagecopyresampled($this->canvas, $this->img, $this->posx, $this->posy, 0, 0, $this->larguraNova, $this->alturaNova, $this->larguraAtual, $this->alturaAtual); if(file_exists($destino.$nome)){ unlink($destino.$nome); } imagejpeg($this->canvas,$destino.$nome); $db= new bancoDeDados(); $sql="UPDATE $tabela SET $campoImg= '$nome' where $campoId=$id"; $rs=mysql_query($sql, $db->con); } // SE TEM MSG DE ERRO MANDA PRA PAGINA msg.php function finaliza(){ if($this->msg!=''){ $_SESSION['MENSAGEM'] = $this->msg; header('location: msg.php#msg'); exit; } } } // FIM DA CLASSE manipulaImagens
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.