public function mark($img) { $options = $this->widget('Widget_Options'); $cfg = $options->plugin('Watermark'); $img1 = self::lujin(__TYPECHO_ROOT_DIR__ . base64_decode($img)); $dir = '.' . __TYPECHO_PLUGIN_DIR__ . '/Watermark/'; $ck_p = 0; $ck_t = 0; if (in_array('pic', $cfg->vm_type) && file_exists($dir . $cfg->vm_pic)) { $ck_p = 1; } if (in_array('text', $cfg->vm_type) && file_exists($dir . $cfg->vm_font)) { $ck_t = 1; } $pos_p = $cfg->vm_pos_pic; $pos_t = $cfg->vm_pos_text; $font = $dir . $cfg->vm_font; $text = $cfg->vm_text; $size = $cfg->vm_size; $color = $cfg->vm_color; $mic_x = $cfg->vm_m_x; $mic_y = $cfg->vm_m_y; $width = $cfg->vm_width; $wmpic = $cfg->vm_pic ? $cfg->vm_pic : 'WM.png'; $alpha = $cfg->vm_alpha; $file = false; if (file_exists($img1)) { require_once $dir . 'class.php'; $wm = new WaterMark(); $wm->setImSrc($img1, $width); // 设置背景图 $wm->setImWater($dir . $wmpic); // 设置水印图 $wm->setFont($font, $text, $size, $color); // 设置水印文字相关(字体库、文本、字体大小、颜色) if (isset($cfg->vm_cache) && 'cache' == $cfg->vm_cache) { $file = base64_decode($img); $ext = pathinfo($file, PATHINFO_EXTENSION); $dir_cache = __TYPECHO_ROOT_DIR__ . '/usr/img'; if (!is_dir($dir_cache)) { @mkdir($dir_cache, 0777); } //检测缓存目录是否存在,自动创建 $file = './usr/img/' . md5($file) . '.' . $ext; } $wm->mark($ck_p, $pos_p, $ck_t, $pos_t, $mic_x, $mic_y, $alpha, $file); } else { $this->widget('Widget_Archive@404', 'type=404')->render(); } }
/** * create image with watermark */ public function output($source, $watermarked_destination = null, $watermark_options = null) { try { $img = \WaterMark::output($source, $watermarked_destination, $watermark_options); } catch (Exception $e) { die($e->getMessage()); } return $img; }
public function dealPicture($param) { $config = $this->getConfig(); if ($config['switch']) { if ($config['water']) { $water = $config['water']; } else { $water = './Addons/Water/water.png'; } $water_open = file_exists($water); require_once './Addons/Water/WaterMark.class.php'; if ($water_open) { $watermark = new \WaterMark($param, $config['position']); $watermark->setWaterImage($water); $watermark->imageWaterMark(); } } return $param; }
<?php require_once 'watermark.php'; $src_im = '../car.jpg'; $dst_im = '../watermark.png'; $watermark = new WaterMark($src_im); $watermark->water($dst_im); $watermark->save('./output');
} if ($filesize) { if (@copy($_FILES[$upload_name]['tmp_name'], $filepath . $original_url) || function_exists('move_uploaded_file') && @move_uploaded_file($_FILES[$upload_name]['tmp_name'], $filepath . $original_url)) { @unlink($_FILES[$upload_name]['tmp_name']); } @copy($filepath . $original_url, $filepath . $shrink_url); } else { HandleError(iconv($_G['charset'], 'utf-8', $php_lang['daxiaoxz'])); exit(0); } $pic = $filepath . $shrink_url; new myThumbClass($pic, 276, 195, $pic, 0, 0); $imgwater = $_G["gp_imgwater"]; if ($imgwater) { $imgwater_wz = intval($_G["gp_imgwater_wz"]); $wm = new WaterMark(); $wm->setImSrc($filepath . $original_url); $wm->setImWater($imgwater); $wm->mark(1, $imgwater_wz, 0, 0); } $curtime = time(); if ($albums) { if (!$albums['img_url'] || !file_exists($albums['img_url'])) { DB::update('forum_alliance_albums', array('imgnum' => $albums[imgnum] + 1, 'revisedate' => $curtime, 'img_url' => $pic), "id='{$albums['id']}'"); DB::insert('forum_alliance_albums_img', array('id' => '', 'title' => $title, 'shrink_url' => $filepath . $shrink_url, 'original_url' => $filepath . $original_url, 'albums_id' => $albums[id], 'createdate' => $curtime, 'status' => 1)); } else { DB::update('forum_alliance_albums', array('imgnum' => $albums[imgnum] + 1, 'revisedate' => $curtime), "id='{$albums['id']}'"); DB::insert('forum_alliance_albums_img', array('id' => '', 'title' => $title, 'shrink_url' => $filepath . $shrink_url, 'original_url' => $filepath . $original_url, 'albums_id' => $albums[id], 'createdate' => $curtime)); } } else { DB::insert('forum_alliance_albums', array('id' => '', 'title' => $title, 'img_url' => $pic, 'uid' => $uid, 'uname' => $uname, 'arid' => $aid, 'createdate' => $curtime, 'revisedate' => $curtime, 'imgnum' => 1));
private function _publishWeiboTypeData($type_data) { if (!file_exists($type_data)) { $type_data = '/data/uploads/' . $type_data; } else { $type_data = preg_replace("/^\\./", '', $type_data); } $info = X('Xattach')->addFile('weibo_image', SITE_PATH . $type_data); if ($info['status']) { //缩图规格 $size['small']['x'] = 120; $size['small']['y'] = 120; $size['middle']['x'] = 465; $size['middle']['y'] = -1; //不限制 //缩图路径-文件名 $bigpic = $info['info']['savepath'] . $info['info']['savename']; $smallpic = $info['info']['savepath'] . 'small_' . $info['info']['savename']; $middlepic = $info['info']['savepath'] . 'middle_' . $info['info']['savename']; //缩图 if (extension_loaded("imagick")) { $this->_imageickThumb(UPLOAD_PATH . '/' . $bigpic, UPLOAD_PATH . '/' . $smallpic, $size['small']['x'], $size['small']['y'], false); $this->_imageickThumb(UPLOAD_PATH . '/' . $bigpic, UPLOAD_PATH . '/' . $middlepic, $size['middle']['x'], $size['middle']['y'], false); } else { include_once SITE_PATH . '/addons/libs/Image.class.php'; Image::thumb(UPLOAD_PATH . '/' . $bigpic, UPLOAD_PATH . '/' . $smallpic, '', $size['small']['x'], $size['small']['y']); Image::thumb(UPLOAD_PATH . '/' . $bigpic, UPLOAD_PATH . '/' . $middlepic, '', $size['middle']['x'], $size['middle']['y'] == -1 ? 'auto' : $size['middle']['y']); } $typedata['thumburl'] = $smallpic; $typedata['thumbmiddleurl'] = $info['info']['extension'] == 'gif' ? $bigpic : $middlepic; $typedata['picurl'] = $bigpic; $typedata['attach_id'] = $info['info']['id']; //为微博缩略图-小图不加水印,大图、中图加水印 if ($fileext != 'gif') { require_cache(SITE_PATH . "/addons/libs/WaterMark/WaterMark.class.php"); WaterMark::iswater(UPLOAD_PATH . '/' . $bigpic); WaterMark::iswater(UPLOAD_PATH . '/' . $middlepic); } return $typedata; } else { return false; } }
<?php require_once 'watermark.php'; $src_im = '../car.jpg'; $dsc_im = '../watermark.png'; $word = '抵押车交易网'; $watermark = new WaterMark($src_im); $watermark->text($word); $watermark->thumb(200, 100); $watermark->water($dsc_im); $watermark->show();
<?php require_once 'watermark.php'; $src = '../car.jpg'; $watermark = new WaterMark($src); $watermark->thumb(100, 100); $watermark->show();
<?php include "./../WaterMark.class.php"; // 水印对象 $water = new WaterMark(); //公共参数 /** 初始化参照点参数 默认为随机 setLocation('下面的参数'); left_up 左上角 left_down 左上角 right_up 右上角 right_down 右下角 */ $water->setLocation('right_up'); //左下角 /** 设置水印与参照点距离 默认(0,0) setMargin(X,Y); */ $water->setMargin(100, 100); // 文字水印参数 /** 设置文字颜色 默认(0,0,0)黑色 setTextColor(arra(R,G,B)); */ $water->setTextColor(array(0, 0, 0)); /** 设置文字大小 默认20 setFontSize('文字大小'); */ $water->setFontSize(16);