利用php给图片添加文字水印--面向对象与面向过程俩种方法的实现,
Jun 13, 2016 am 08:55 AM
php
그리고
사용
그림
성취하다
물체
문자
방법
양수표
다음에 추가
~의
프로세스
을 위한
利用php给图片添加文字水印--面向对象与面向过程俩种方法的实现,
1: 面向过程的编写方法
<span>//</span><span>指定图片路径</span> <span>$src</span> = '001.png'<span>; </span><span>//</span><span>获取图片信息</span> <span>$info</span> = <span>getimagesize</span>(<span>$src</span><span>); </span><span>//</span><span>获取图片扩展名</span> <span>$type</span> = image_type_to_extension(<span>$info</span>[2],<span>false</span><span>); </span><span>//</span><span>动态的把图片导入内存中</span> <span>$fun</span> = "imagecreatefrom{<span>$type</span>}"<span>; </span><span>$image</span> = <span>$fun</span>('001.png'<span>); </span><span>//</span><span>指定字体颜色</span> <span>$col</span> = imagecolorallocatealpha(<span>$image</span>,255,255,255,50<span>); </span><span>//</span><span>指定字体内容</span> <span>$content</span> = 'helloworld'<span>; </span><span>//</span><span>给图片添加文字</span> imagestring(<span>$image</span>,5,20,30,<span>$content</span>,<span>$col</span><span>); </span><span>//</span><span>指定输入类型</span> <span>header</span>('Content-type:'.<span>$info</span>['mime'<span>]); </span><span>//</span><span>动态的输出图片到浏览器中</span> <span>$func</span> = "image{<span>$type</span>}"<span>; </span><span>$func</span>(<span>$image</span><span>); </span><span>//</span><span>销毁图片</span> imagedestroy(<span>$image</span>);
로그인 후 복사
2:面向对象的实现方法
<span>class</span><span> Image_class { </span><span>private</span> <span>$image</span><span>; </span><span>private</span> <span>$info</span><span>; </span><span>/*</span><span>* * @param $src:图片路径 * 加载图片到内存中 </span><span>*/</span> <span>function</span> __construct(<span>$src</span><span>){ </span><span>$info</span> = <span>getimagesize</span>(<span>$src</span><span>); </span><span>$type</span> = image_type_to_extension(<span>$info</span>[2],<span>false</span><span>); </span><span>$this</span> -> info =<span>$info</span><span>; </span><span>$this</span>->info['type'] = <span>$type</span><span>; </span><span>$fun</span> = "imagecreatefrom" .<span>$type</span><span>; </span><span>$this</span> -> image = <span>$fun</span>(<span>$src</span><span>); } </span><span>/*</span><span>* * @param $fontsize: 字体大小 * @param $x: 字体在图片中的x位置 * @param $y: 字体在图片中的y位置 * @param $color: 字体的颜色是一个包含rgba的数组 * @param $text: 想要添加的内容 * 操作内存中的图片,给图片添加文字水印 </span><span>*/</span> <span>public</span> <span>function</span> fontMark(<span>$fontsize</span>,<span>$x</span>,<span>$y</span>,<span>$color</span>,<span>$text</span><span>){ </span><span>$col</span> = imagecolorallocatealpha(<span>$this</span>->image,<span>$color</span>[0],<span>$color</span>[1],<span>$color</span>[2],<span>$color</span>[3<span>]); imagestring(</span><span>$this</span>->image,<span>$fontsize</span>,<span>$x</span>,<span>$y</span>,<span>$text</span>,<span>$col</span><span>); } </span><span>/*</span><span> * 输出图片到浏览器中 </span><span>*/</span> <span>public</span> <span>function</span><span> show(){ </span><span>header</span>('content-type:' . <span>$this</span> -> info['mime'<span>]); </span><span>$fun</span>='image' . <span>$this</span>->info['type'<span>]; </span><span>$fun</span>(<span>$this</span>-><span>image); } </span><span>/*</span><span>* * 销毁图片 </span><span>*/</span> <span>function</span><span> __destruct(){ imagedestroy(</span><span>$this</span>-><span>image); } } </span><span>//</span><span>对类的调用</span> <span>$obj</span> = <span>new</span> Image_class('001.png'<span>); </span><span>$obj</span>->fontMark(20,20,30,<span>array</span>(255,255,255,60),'hello'<span>); </span><span>$obj</span>->show();
로그인 후 복사
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

인기 기사
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

인기 기사
스플릿 소설을이기는 데 얼마나 걸립니까?
3 몇 주 전
By DDD
Repo : 팀원을 부활시키는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
헬로 키티 아일랜드 어드벤처 : 거대한 씨앗을 얻는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7135
9


자바 튜토리얼
1534
14


라라벨 튜토리얼
1257
25


PHP 튜토리얼
1205
29


Cakephp 튜토리얼
1155
46



Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법
