検索
ホームページphp教程php手册画像に透かしを追加するための PHP クラス

画像に透かしを追加するための PHP クラス

Jun 13, 2016 pm 12:29 PM
phpコード関数追加パラメータ写真コピーサポート文字透かし使用親切

コードをコピー コードは次のとおりです:


/*
* 関数: PHP 画像透かし (透かしは画像またはテキストをサポートします)
* パラメーター:
* $groundImage 背景画像、つまり透かしは必須です。現在、画像は GIF、JPG、PNG 形式のみをサポートしています。
* $waterPos ウォーターマークの位置、10 個の状態があり、0 はランダムな位置です。
* 1 は左上、2 は中央上、3 は上です。中央右;
* 4 は左側の中央、5 は中央の中央、6 は右側の中央、7 は左側の下部、8 は中央の下部、9 は中央の中央です。右下。waterImage 透かしとして使用される画像である画像透かしは、現在 GIF、JPG、PNG 形式のみをサポートします。
* $waterText 透かしとしてテキストを使用し、ASCII コードをサポートします。
* $textFont テキストのサイズ、値は 1、2、3、4、または 5、デフォルトは 5 です。
* $textColor テキストの色、値は 16 進数の色の値です。
*
* 注: GD 2.0 をサポート、FreeType、GIF 読み取り、GIF 作成、JPG、PNG をサポート
*同時に、そのうちの 1 つを選択し、最初に $waterImage を使用します。
* $waterImage が有効な場合、パラメータ $waterString、$stringFont、および $stringColor は無効になります。
* 透かし入り画像のファイル名は$groundImageと同じです。
* 著者:longware @ 2004-11-3 14:15:13
*/
function imageWaterMark($groundImage,$waterPos=0,$waterImage=””,$waterText=””,$ textFont=5,$textColor=”#FF0000″)
{
$isWaterImage = FALSE;
$formatMsg = “このファイル形式はまだサポートされていません。画像を GIF に変換するには画像処理ソフトウェアを使用してください、JPG、PNG形式。”; $water_info = getimagesize($waterImage);
$water_w = $water_info[0];// ウォーターマーク画像の幅を取得
$water_h = $water_info[1];//ウォーターマーク画像

switch($water_info[2])//ウォーターマーク画像の形式を取得
{
case 1:$water_im = imagecreatefromgif($waterImage);break;
ケース 2:$water_im = imagecreatefromjpeg($waterImage);break;
case 3:$water_im = imagecreatefrompng($waterImage);break;
デフォルト:die($formatMsg);

//背景画像を読み取ります IF (! Emptyempty ($ GROUNDIMAGE) && FILE_EXISTS ($ Group))
{
$ Group_Info = GetimageSize ($ GROUNDIMAGE);
$ GROUND_W = $ GROUND_INFO [0]; // 背景画像の幅を取得
$ground_h = $ground_info[1];// 背景画像の高さを取得

switch($ground_info[2] )//背景画像の形式を取得します
{ > case 1:$ground_im = imagecreatefromgif($groundImage);break;
case 2:$ground_im = imagecreatefromjpeg($groundImage);break; 3:$ground_im = imagecreatefrompng($groundImage) ;break;
default:die($formatMsg);
} }
else
die("透かしを入れる必要のある画像が存在しません! ”);
} $water_h ;
$label = "画像"
}
else//テキストウォーターマーク
{ $temp = imagettfbbox(ceil($textFont*5),0 ,"./cour .ttf",$waterText);//TrueType フォントを使用してテキストの範囲を取得します
$w = $temp[2] - $temp[6];
$h = $temp[ 3] - $temp [7];
unset($temp);
$label = "テキストエリア";
if( ($ground_w {
echo "ウォーターマークを挿入する必要がある画像の長さまたは幅がウォーターマーク ".$label." より小さいため、ウォーターマークを生成できません。";
return;
switch($waterPos)
{
case 0://random w)) ;
$posY = rand(0,($ground_h - $h)) ;
ブレーク;
ケース 1://1 は左上です
$posX = 0;
ケース 2://2 は上です。 -centered Break; 🎜> case 3://3 が右側の先頭です
$posY = 0;
case 4:/ /4 は左側です
$posX = 0;
$posY = ($ground_h - $h) / 2;
ケース 5://5 は中央にあります
$posX = ($ground_w - $ w)/2; > $ posy = ($ GROUND_H-$ h)/2;
ブレーク
ケース 6: // 6 は右中央です。 🎜> $ POSX = $ Ground_w-$ $ $ w;
$posY = ($ground_h - $h) / 2;
7://7 の場合は左下です。 > $posX = 0;
$posY = $ground_h - $h;
ケース 8://8 は下中央になります
$posX = ($ground_w - $w) / 2 ;
$posY = $ground_h - $ h;
ケース 9://9 は右下です
$posX = $ground_w - $w; $ground_h - $h;
ブレーク;
デフォルト://ランダム
$posX = rand(0,($ground_w - $w)); ground_h - $h)) ブレーク ;
}

//画像のカラーブレンドモードを設定します
imagealphablending($ground_im, true);

if($isWaterImage)//画像ウォーターマーク
{ ground_im, $water_im , $posX, $posY, 0, 0, $water_w,$water_h);//ウォーターマークをターゲット ファイルにコピーします!emptyempty($textColor) && (strlen($textColor)==7) )
{ $ R = hexdec(substr($textColor,1,2));
$G = hexdec(substr ($ TextColor, 3,2));
$ B = HexDEC (Substr ($ TextColor, 5)) ; 正しい!”);
//透かし後の画像を生成
@unlink($groundImage)
switch($ground_info[2])//背景画像の形式を取得します
{
ケース 1:imagegif($ground_im,$groundImage); ブレーク
ケース 2:imagejpeg($ground_im,$groundImage); ブレーク; ケース 3:imagepng($ground_im,$groundImage); );
}

//メモリを解放します
if(isset($water_info)) unset($water_info);
if(isset($water_im)) imagedestroy($water_im );
unset($ground_info);
imagedestroy($ground_im)
}
//———————————————————— —————
$id=$_REQUEST['id'];
$num = count($_FILES['userfile']['name']);
print_r($ _FILES['ユーザーファイル']);
print_r($_FILES['ユーザーファイル']['名前']);

echo "
"; isset($id)){
for($i=0;$i
if(isset($_FILES) && !emptyempty($_FILES[ 'userfile' ]) && $_FILES['userfile']['size']>0)
{
$uploadfile = “./”.time().”_”.$_FILES['userfile '][ name][$i];
echo "
";
echo $uploadfile;
if ($_FILES['userfile']['tmp_name'], $ Uploadfile))
{ echo “OK
”;

//テキスト透かし
//imageWaterMark($uploadfile,5,"","HTTP:/ /www.lvye.info ",5,"#cccccc");

//画像のウォーターマーク
$waterImage="logo_ok1.gif";//ウォーターマーク画像のパス
imageWaterMark($uploadfile ,9,$waterImage) ;

echo “画像に透かしを追加するための PHP クラス”; 🎜> echo “失敗
”;
}
}
}
} method="POST">
for($a=0;$aecho "ファイル:
";
🎜>

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター