Autor Zpráva
MilanJ
Profil
Potřeboval bych na fotkách, posílaných na můj web, vytvářet automaticky vodoznak s určitým textem.
Je to možné? A pokud ano, jak?

Děkuji.
MilanJ
Profil
Nemusí jít o vodoznak v pravým slova smyslu, spíše o text, který znesnadní kopírování...
Anonymní
Profil *
pomocí php těžko, ale mohl bys ty fotky třeba dávkově upravit pomocí nějakého softu, free je jich celkem dost stačí hledat. Jen platí takové pravidlo, pokud chceš uvěřejnit fotky a dát je tak vlastně každému k volnému použití, nenič je vodoznakem ani ničim podobnym, je to hrozný, když pak něco na tý fotce hledáš a je to přepláclý nějakym hnusnym textem. Pokud nehceš, aby ti fotky někdo ukradl, nedávej je na web.
nightfish
Profil
samozřejmě není problém
při uploadu se pomocí PHP fotka upraví tak, aby se do ní zobrazil text
a nebo ještě jiná - náročnější - možnost, vkládat do nich text až při zobrazení (takže zůstane nepoškozený originál)

http://cz.php.net/image
Anonymní
Profil *
nightfisch--> jde o to jestli myslí posílání na web jako upload pomocí formuláře a PHP scriptu, nebo nahrání přes FTP
MilanJ
Profil
Anonymní
Myslel jsem Upload z formuláře.

nightfish
Díky, mrknu na to.
Dolphi
Profil
Moc pěkná třída určená přesně k tomuto se nachází zde:

http://www.verot.net/php_class_upload_overview.htm
P_T_
Profil
Zkus následující kód, někde jsem ho před časem našel, ale ještě jsem ho nezkoušel.
Do obrázku se vloží obrázek logo.png


$file = $_REQUEST['image']; //Je jedno , zda prijde metodou GET,POST nebo COOKIE
$max_width = $_REQUEST['max_width']; //Max sirka
$max_height = $_REQUEST['max_height']; //Max vyska

function image_resample($src,$x,$y){ //Funkce pro zmeneni rozliseni
$width_orig = imagesx($src);
$height_orig = imagesy($src);
$image_new = imagecreatetruecolor($x,$y);
imagecopyresampled($image_new, $src, 0, 0, 0, 0, $x,$y, $width_orig, $height_orig);
return $image_new;
}

$image = imagecreatefromjpeg($file);
$img_logo = imagecreatefrompng("logo.png");

$img_logo_x = imagesx($img_logo); //Rozliseni loga X
$img_logo_y = imagesy($img_logo);//Rozliseni loga Y

$image_x = imagesx($image); //Rozliseni obrazku X
$image_y = imagesy($image); //Rozliseni obrazku Y

$log_ratio_x = $img_logo_x/$image_x; //Nasobek pro X
$log_ratio_y = $img_logo_y/$image_y; //Nasobek pro Y

imagecopy($image,$img_logo, 0,0,0,0,$img_logo_x*$log_ratio_x,$img_logo_y*$log_ratio_y); //Nakopirujeme logo do obrazku
$image = image_resample($image,$max_width,$max_height); //Zmeni rozliseni
header('Content-type: image/jpeg'); //Odesleme hlavicku o jaky typ souboru jde
imagejpeg($image,null,-1); //Odesleme vystup
imagedestroy($image); //Zrusime obrazek v pameti
imagedestroy($img_logo); //Zrusime obrazek loga v pameti
Toto téma je uzamčeno. Odpověď nelze zaslat.