如何使用php代碼實現印章的摳圖(代碼)

來源:互聯網
上載者:User
本篇文章給大家分享的內容是關於如何使用php代碼實現印章的摳圖(代碼),內容很詳細,有需要的朋友可以參考一下,希望可以協助到你們.

能將白底紅字的印章摳出來,用的是php,架構是laravel,其他架構請自行調節。扣其他顏色也可以,把裡面的那段rgb參數判斷改改就行了,最後摳出來的效果就是白底變透明,然後只留下紅色的章,放在其他頁面上就能形成蓋章的效果了。代碼自己寫的,可能有bug,但是做做測試還是ok的,用到工作上的話請自行測試和最佳化。(在我自己測試對比下,能做到和PS差不多的摳圖效果)

function getStamp(){  $path = storage_path('2018052411173848180.png');  $image = file_get_contents($path);  $info = getimagesize($path);  $im = imagecreatefromstring($image);  $width = $info[0];  $height = $info[1];  for($i=0;$i<$height;$i+=1){    for($j=0;$j<$width;$j+=1){      $rgb = ImageColorAt($im, $j, $i);      $r = ($rgb >> 16) & 0xFF;      $g = ($rgb >> 8) & 0xFF;      $b = $rgb & 0xFF;      echo $r.'.'.$g.'.'.$b.'.='.$rgb.'<br>x='.$j.', y='.$i.'<br>';      if(intval($r)>220 && $g >220 && $b>220){        $hex = imagecolorallocate($im, 255, 255, 255);        imagesetpixel($im,$j, $i, $hex);      }    }  }  $white = imagecolorallocate($im , 255 , 255 , 255);//拾取白色  imagefill($im , 0 , 0 , $white);//把畫布染成白色  imagecolortransparent($im , $white ) ;//把圖片中白色設定為透明色  imagepng($im , storage_path('test2.png'));//產生圖片  return false;}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.