Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Good

Colocar marca dágua

Recommended Posts

Peguei o código deste site: http://www.devmedia.com.br/aplicando-marca-dagua-com-php/17768

 

Fiz minhas adaptações e coloquei pra funcionar na hostgator, funcionou normalmente.. aí precisei migrar o site pra um servidor dedicado. Logo parou de funcionar o código. Em algumas imagens dava o erro:

Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error

Warning: imagecreatefromjpeg(): 'imagens/1446036780.jpg' is not a valid JPEG file in

 

E em outras imagens simplesmente aparece aquele quadrado, avisando que a imagem não existe.

 

Olha o código:

<?php
$name = $_GET['f'];
if (!empty($name)) {
	$imagem_original = "imagens/comprovante/" . $name;
	if (file_exists($imagem_original)) {
		//nome da imagem original
		$logo_img = "img/logo_comprovante.gif";

		$padding = 25;
		//define o espaco que a logo tera no lado esquerdo e na aprte de baixo
		$opacidade = 20;
		//define a porcentagem de transparencia da logo
		$logo = imagecreatefromgif($logo_img);
		//cria a logo
		$imagem = imagecreatefromjpeg($imagem_original);
		//cria a imagem original
		if (!$imagem || !$logo)
			die("Erro: imagem original ou logo não foram carregadas!");
		//vereficar se as imagens foram carredas

		$imagem_size = getimagesize($imagem_original);
		//obtem as dimensões da imagem original

		$logo_size = getimagesize($logo_img);
		//obtem as dimensões da logo
		$logo_width = $logo_size[0];
		//atribui a largura da logo
		$logo_height = $logo_size[1];
		//atribui a altura da logo

		$dest_x = ($imagem_size[0] - $logo_width) / 2;
		//define a posição horizontal que a logo se posicionará
		$dest_y = (($imagem_size[0] - ($logo_height)) / 2) + ($logo_height / 2);
		//define a posição vertical que a logo se posicionará

		imagecopymerge($imagem, $logo, $dest_x, $dest_y, 0, 0, $logo_width, $logo_height, $opacidade);
		//cópia marca d'água na imagem original

		// exibe a imagem com a marca d'agua aplicada
		header("content-type: image/jpeg");
		imagejpeg($imagem);
		imagedestroy($imagem);
		imagedestroy($logo);
	}
}
?>

A linha que dá aqueles erros que mostrei ali em cima fica na linha 15: $imagem = imagecreatefromjpeg($imagem_original);

 

OBS.: estou usando wamp serv, php 5.5.12

 

obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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