watermark con php

alessandromonti

Utente Attivo
25 Mar 2012
62
0
0
salve..per applicare un watermark ad una img ho buttato giù questo codice in 2 file...il 1 col form per caricare l'img cui applicare il watermark (una png con background trasparente):

HTML:
<?php
require 'func/images.func.php';

if (isset($_FILES['image'])){
	$file_name =       $_FILES['image']['name']; 
	$file_tmp   =       $_FILES['image']['tmp_name'];
	
	$name = explode('.', $file_name);
	$img_name = $name['0'];
	
	if (ammessa_immagine($file_name) === true){		
		$file_name = $img_name .'.png';
		watermark_image($file_tmp, 'images-watermark/uploads/' . $file_name);		
	} else{
		echo '<p>non hai selezionato l'immagine o formato file non ammesso</p>';
	}
}
?>
<!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" />
<title>Documento senza titolo</title>
</head>
<body>
<form action="" method="POST" enctype="multipart/form-data">
seleziona immagine:
<input type="file" name="image" />
<input type="invia" value="watermark"/>
</form>
</body>
</html>

..e il file images.func.php per applicare il watermark:

PHP:
function ammessa_immagine($file_name){
	$img_set = array('jpg', 'jpeg', 'gif', 'png');
	$file_ext =   (explode('.', $file_name));
	$end = end($file_ext); 
	
	return (in_array($end , $img_set) === true) ? true : false;
	
}

function watermark_image($file, $destination){
	$watermark = imagecreatefrompng('images-watermark/watermark.png');	
	$source = getimagesize($file);  
	$source_mime = $source['mime'];
	
	if ($source_mime === 'image/png'){
		$image = imagecreatefrompng($file);		
	}else if($source_mime === 'image/jpeg'){
		$image = imagecreatefromjpeg($file);	
	}else if($source_mime === 'image/gif'){
		$image = imagecreatefromgif($file);			
	}
	
	imagecopy($image, $watermark, 70, 160, 0, 0, imagesx($watermark), imagesy($watermark));	
	imagepng($image, $destination);	
}

il problema: non riesco a produrre un watermark a background trasparente se l'img è una gif....con jpeg/jpg/png il watermark invece è con sfondo trasparente...qualcuno sa spiegarmi come risolvere?

grazie in anticipo
 
Discussioni simili
Autore Titolo Forum Risposte Data
C problemi con il watermark PHP 0
Jam1 proteggere foto con watermark da accessi tramite $_GET[''] PHP 16
R How to add text watermark direct on the HTML page? HTML e CSS 1
Shyson Togliere scritta in watermark Webdesign e Grafica 0
G inserire watermark su immagine in upload PHP 2
D watermark non viene decodificato PHP 1
G Watermark PHP 6
F access ricerca record con apostrofo. MS Access 0
F Cerco Hosting con VECCHIE versioni di php Hosting 0
C Come ricreare questo calcolatore di prezzi a step con woocommerce? WordPress 0
C Segnalo barra laterale di navigazione ASSENTE con Chrome Comunicazioni dallo Staff 5
G Guadagna dalla Vendita di Articoli Sponsorizzati con GuestPostMax.com! Guadagnare col Sito 0
P Hosting multidominio con Plesk Hosting 0
L Soluzione con INNER JOIN Database 0
S passare un valore da un form a un file .php con metodo post PHP 4
A Redirect 301 genera url statico con variabili Web Server 0
T problemi con dati menu a tendina HTML e CSS 2
T Query con date MS Access 1
F Url dinamiche da cambiare con categoria, subcategoria e title PHP 2
L Aiuto con DataGridView Visual Basic 1
O problema con dvr dahua xvr5116 IP Cam e Videosorveglianza 0
G Problema con Xampp Web Server 1
M Aggiunta prodotti nel carrello con lo stesso in e varianti diverse PHP 0
andrea barletta Problema con miniature comandi Photoshop 0
I problema con alice Posta Elettronica 0
B Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365) MS Access 0
N Problema con position absolute e overflow HTML e CSS 4
M Estrarre soltanto i prodotti con stessa descrizione PHP 10
felino [Wordpress] Gallery con foto selezionabili dall'utente WordPress 0
G Invio di più valori con la stessa checkbox PHP 4
csi Inviare file jpg in locale alla stampante con php PHP 0
otto9due Proteggere una cartella e file con password tramite .htaccess e .htpasswd Web Server 0
I Form con selettore HTML e CSS 0
G phpmailer e php 8.1 con estensione mysqli PHP 6
L Problema con inner join PHP 11
K [php] Problema con inner join PHP 4
N Vendo sito web di casino online con 1000 giochi Compravendita siti e domini 0
G form invio multiplo con checkbox PHP 12
L Query e selezione DB con $_POST PHP 2
K [PHP] Problema con variabili concatenate. PHP 1
R Dubbi su siti sviluppati con Wordpress e con codice WordPress 6
B Router e telecamere con pannello solare IP Cam e Videosorveglianza 0
Z Cerco ecommerce gratuito meglio se realizzato con Woocommerce di Wordpress. E-Commerce 0
S [CERCO] scambio di articoli con link Offerte e Richieste di scambio links 0
A Immagine decentrata con sfondo trasparente Photoshop 0
O problema con query PHP 4
Jensen Errore di sintassi con DELETE PHP 3
D Casella di testo con grassetto ecc... HTML e CSS 2
R Aprire maschera con Openform filtrando un campo testuale con un valore recuperato da un'altra maschera MS Access 10
G Query con i giorni della settimana MySQL 10

Discussioni simili