ホームページ >バックエンド開発 >PHPチュートリアル >ThinkPHP ウォーターマーク機能は PNG 透明ウォーターマークを修復し、調整可能な品質で JPEG 画質を向上させます。_PHP チュートリアル
TPには画像クラスが付属しており、画像にウォーターマークを追加する機能があります。
ここで完璧です:
1.png透かし透過
2.ウォーターマーク追加後の画質調整(JPG形式のみ)
コードは次のとおりです:
$wInfo = self::getImageInfo($water);
//画像がウォーターマーク画像より小さい場合、画像は生成されません
false を返します;
//画像を作成する
$sImage = $sCreateFun($source);
$wCreateFun = "imagecreatefrom" . $wInfo['type'];
$wImage = $wCreateFun($water);
//画像のカラーブレンドモードを設定します
//画像の位置、デフォルトは右下隅の右揃えです
$posX = $sInfo["width"] – $wInfo["width"];
/* PNG の透明性を維持するために、imagecopy を使用します。修正したものは次のとおりです*/
//混合画像を生成します。これは体系的です
// imagecopymerge($sImage, $wImage, $posX, $posY, 0, 0, $wInfo['width'],$wInfo['height'], $alpha);
//出力画像
$ImageFun = '画像' . $sInfo['タイプ'];
//保存ファイル名が指定されていない場合、デフォルトは元の画像名です
if (!$savename) {
$savename = $source;
@unlink($source);
}
// 画像を保存します。jpg の場合は、ウォーターマークの品質を設定します。
if ($sInfo['type'] == "jpg" || $sInfo['type'] == "jpeg") {
imagejpeg($sImage, $savename, 90);//imagejpeg のみがこのパラメータをサポートしているため、3 番目のパラメータは品質です
} その他 {
$ImageFun($sImage, $savename);
}
//$ImageFun($sImage, $savename);//これはシステムです
imagedestroy($sImage);
}
http://www.bkjia.com/PHPjc/906679.html