ホームページ  >  記事  >  バックエンド開発  >  php_PHP チュートリアルでアップロードされた画像に画像透かしを追加する

php_PHP チュートリアルでアップロードされた画像に画像透かしを追加する

WBOY
WBOYオリジナル
2016-07-21 14:52:141076ブラウズ

 

    相信大家都知道怎么用PHP为图片增加文字水印,可是如果水印效果为图片呢?该怎么办?别担心,下文就为您分解。我也是近日用到此功能,所以去百度上搜集到了这篇文档,希望对各位有所帮助.

 


 
   
     
   
   
     
   
   
     












ドラゴンズハートコラム phpshao.cublog.cn
if($_POST['アクション']=='ドアップ')
{
$uptypes=array('image/jpg','image/jpeg','image/pjpeg','image/gif');//画像ファイルタイプリストをアップロードします
$wFile=$_FILES['upfile'];//ファイルパスを取得します
$waterimg="water.gif";//透かし画像のパス
//print_r($wFile);
if(in_array($w​​File['type'], $uptypes))
{//ファイルの種類を確認し、アップロードしたファイルが jpg または gif 画像の場合は、ウォーターマークを追加します
if(strstr($wFile['type'],"jp"))
{ //アップロードされた画像タイプがjpg、pjpeg、jpegの場合、imagecreatefromjpegを使用して対象ファイルを読み込みます
$im = imageCreatefromjpeg($wFile['tmp_name']);
$wfilew=imagesx($im);//画像の幅を取得します
$wfileh=imagesy($im);//画像の高さを取得します
}
それ以外
{//そうでない場合、アップロードされた画像タイプが gif の場合は、imagecreatefromgif を使用してターゲット ファイルを読み取ります
$im = imageCreatefromgif($wFile['tmp_name']);
$wfilew=imagesx($im);//画像の幅を取得します
$wfileh=imagesy($im);//画像の高さを取得します
}
// 描画モードを設定します
Imagealphablending($im, true);
//ウォーターマークファイルを読み込みます
$im2 = imagecreatefrompng($waterimg);//ウォーターマーク画像がjpgの場合は、$im2 = imagecreatefromjpeg($waterimg)に変更できます
//$white = imagecolorallocate($im2, 255, 255, 255); // imagecolortransparent($im2,$white); // 透明色を設定します。これらの 2 つの文は必要ありません
$waterw=imagesx($im2);//ウォーターマーク画像の幅を取得します $waterh=imagesy($im2);//ウォーターマーク画像の高さを取得します
//画像にランダムにウォーターマークを入れます
$randval = rand(0,9);//0~9の乱数を生成します
if($randval==0||$randval==3||$randval==2||$randval==8||$randval==7){//ここでさらに多くのポジションを改善できます
$wimgx=5;$wimgy=5;//左上隅に配置します
}その他{
$wimgx=$wfilew-5-$waterw;$wimgy=$wfileh-5-$waterh;//右上隅に配置します
}
//ウォーターマークをターゲットファイルにコピーします imagecopy($im, $im2, $wimgx, $wimgy, 0, 0, $waterw,$waterh);

//画像を出力します
If(strstr($wFile['type'],"jp")){ //上と同じ
imagejpeg($im,$wFile['tmp_name']);
}その他{
imagegif($im,$wFile['tmp_name']);
}
画像破壊($im);
Imagedestroy($im2);
copy($wFile['tmp_name'],$wFile['name']); //アップロード
}
else echo "写真が一致しません!!";
}
?>

http://www.bkjia.com/PHPjc/371650.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/371650.html技術記事 PHP を使用して画像にテキストの透かしを追加する方法は誰もが知っていると思いますが、透かし効果が画像の場合はどうなるでしょうか?何をするか?心配しないでください。以下で詳しく説明します。私も最近この機能を使っています...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
上传图片

       
         
           
           
         
         
         
           
         
       
路径: