Ir para conteúdo

POWERED BY:

Arquivado

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

diasgabrie

chamar função

Recommended Posts

Bom dia amigoss,

 

Gostaria de ajuda no meu script de upload de fotos:

 


 global $arq;
 $arq = $_FILES['arquivo']['tmp_name'];

 // instancia objeto m2brimagem  
 $oImg = new m2brimagem($arq);

 // define diretórios  
 $diretorio = "$pasta_dir/";  
 $dir_thumbs = "$pasta_dir/";

         $oImg->carrega($arq);  
         $valida = $oImg->valida();  
         if ($valida == 'OK') {  
             // redimensiona  
             $oImg->redimensiona(90,80,'crop');  
             // salva no diretório das miniaturas  
             $oImg->grava($mini,100);  
	}

exit;  

Até este ponto tudo bem, ele recebe o upload e salva a foto. O problema é que ele tem mais opções como a de colocar legenda em fotos:

 

$rgb = array(255,255,255);
$oImg->legenda('teste legenda','11','20','20',$rgb,false,NULL); 

Só que não funciona quando coloca esta função, acho q deve ser algum erro ao chamá-la. Alguem poderia me ajudar?

Obrigada,

Gabriela

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos por partes

 

Primeiro: Que classe é essa? Poderia postar um link?

 

Segundo: Há alguma documentação sobre a mesma? Especialmente na parte de adicionar "legenda" (que ao meu ver seria marca d'água)? Se sim, você leu e entendeu?

 

Terceiro: Mesmo sem conhecer a classe, eu diria que esse método deveria ser invocado, das duas uma: Ou antes de redimensionar, para que o redimensionamento seja feito já com o texto, para evitar distorções; ou depois dele, mas nesse caso você teria problemas do tipo texto muito grande, imagem muito pequena.

 

Quarto: A título de observação: Como que esse objeto pode gravar a imagem corretamente, se $mini não aparece em mais nenhum lugar? Tem certeza de que as miniaturas são gravadas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos por partes

 

Primeiro: Que classe é essa? Poderia postar um link?

 

Segundo: Há alguma documentação sobre a mesma? Especialmente na parte de adicionar "legenda" (que ao meu ver seria marca d'água)? Se sim, você leu e entendeu?

 

Terceiro: Mesmo sem conhecer a classe, eu diria que esse método deveria ser invocado, das duas uma: Ou antes de redimensionar, para que o redimensionamento seja feito já com o texto, para evitar distorções; ou depois dele, mas nesse caso você teria problemas do tipo texto muito grande, imagem muito pequena.

 

Quarto: A título de observação: Como que esse objeto pode gravar a imagem corretamente, se $mini não aparece em mais nenhum lugar? Tem certeza de que as miniaturas são gravadas?

 

Olá, vou numerar para responder ok?

1- Vou postar a class pois não lembro mais o link

2- Não, somente o código:

$rgb = array(255,255,255);
$oImg->legenda('teste legenda','11','20','20',$rgb,false,NULL); 

 

4- O $mini esta em outra parte do código, não postei pra dar uma resumida. mas esta gravando sim!

 

A class é esta:

 


public function legenda( $texto, $tamanho = 10, $x = 0, $y = 0, $rgb = array( 255,255,255 ), $truetype = false, $fonte = '' ) 
	{     
		$cortexto = imagecolorallocate( $this->img, $rgb[0], $rgb[1], $rgb[2] );
		
		// truetype ou fonte do sistema?
		if ( $truetype === true ) 
		{
			imagettftext( $this->img, $tamanho, 0, $x, $y, $cortexto, $fonte, $texto );
		} 
		else 
		{
			imagestring( $this->img, $tamanho, $x, $y, $texto, $cortexto );
		}
	} // fim legenda

Obrigada

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.