示例#1
0
文件: Auth.php 项目: aiddroid/php-sdk
 public function signWithData($data)
 {
     $data = \Qiniu\base64_urlSafeEncode($data);
     return $this->sign($data) . ':' . $data;
 }
示例#2
0
 /**
  * 文字水印
  *
  * @param  string $url 图片链接
  * @param  string $text 文字
  * @param  string $font 文字字体
  * @param  string $fontSize 文字字号
  * @param  string $fontColor 文字颜色
  * @param  numeric $dissolve 透明度
  * @param  string $gravity 水印位置
  * @param  numeric $dx 横轴边距
  * @param  numeric $dy 纵轴边距
  * @link   http://developer.qiniu.com/code/v6/api/kodo-api/image/watermark.html#text-watermark
  * @return string
  * @author Sherlock Ren <*****@*****.**>
  */
 public function waterText($url, $text, $font = '黑体', $fontSize = 0, $fontColor = null, $dissolve = 100, $gravity = 'SouthEast', $dx = null, $dy = null)
 {
     // url合法效验
     if (!$this->isUrl($url)) {
         return $url;
     }
     $waterStr = 'watermark/2/text/' . \Qiniu\base64_urlSafeEncode($text) . '/font/' . \Qiniu\base64_urlSafeEncode($font) . '/';
     // 拼接文字大小
     if (is_int($fontSize)) {
         $waterStr .= 'fontsize/' . $fontSize . '/';
     }
     // 拼接文字颜色
     if (!is_null($fontColor) && $fontColor) {
         $waterStr .= 'fill/' . \Qiniu\base64_urlSafeEncode($fontColor) . '/';
     }
     // 拼接水印透明度
     if (is_numeric($dissolve) && $dissolve <= 100) {
         $waterStr .= 'dissolve/' . $dissolve . '/';
     }
     // 拼接水印位置
     if (in_array($gravity, $this->gravityArr, true)) {
         $waterStr .= 'gravity/' . $gravity . '/';
     }
     // 拼接横轴边距
     if (!is_null($dx) && is_numeric($dx)) {
         $waterStr .= 'dx/' . $dx . '/';
     }
     // 拼接纵轴边距
     if (!is_null($dy) && is_numeric($dy)) {
         $waterStr .= 'dy/' . $dy . '/';
     }
     // 如果有query_string用|线分割实现多参数
     return $url . ($this->hasQuery($url) ? '|' : '?') . $waterStr;
 }
示例#3
0
 public function testUrlSafe()
 {
     $a = '你好';
     $b = \Qiniu\base64_urlSafeEncode($a);
     $this->assertEquals($a, \Qiniu\base64_urlSafeDecode($b));
 }