> php教程 > php手册 > JPG,PNG,GIF转Ascii

JPG,PNG,GIF转Ascii

WBOY
풀어 주다: 2016-06-21 09:05:46
원래의
1204명이 탐색했습니다.

这个范例可以用来图形转xpm给PHP_GTK用的,不过大家先看一下这个简单程序码,先了解原理,说xpm大概没几个知道,只好改写成这个范例。图形转Ascii。

 
<code><font color="#000000"><font color="#0000bb"></font><font face="新宋体" color="#007700"><br></font><font face="新宋体"><font color="#ff8000">## 转换图档<br></font><font color="#0000bb">$Pic   </font><font color="#007700">= </font><font color="#dd0000">"jerry.jpg"</font></font><font face="新宋体" color="#007700">;<br></font><font face="新宋体"><font color="#ff8000">## 欲转换之字符串<br></font><font color="#0000bb">$Ascii </font><font color="#007700">= </font><font color="#dd0000">"#"</font></font><font face="新宋体"><font color="#007700">;    <br><br></font><font color="#0000bb">$ImageSize</font><font color="#007700">=</font><font color="#0000bb">GetImageSize</font><font color="#007700">(</font><font color="#0000bb">$Pic</font></font><font face="新宋体"><font color="#007700">);<br><br>If(</font><font color="#0000bb">Is_Array</font><font color="#007700">(</font><font color="#0000bb">$ImageSize</font></font><font face="新宋体"><font color="#007700">)):<br>   </font><font color="#0000bb">$Width  </font><font color="#007700">=</font><font color="#0000bb">$ImageSize</font><font color="#007700">[</font><font color="#0000bb">0</font><font color="#007700">]; </font></font><font face="新宋体"><font color="#ff8000">## 获取宽度<br>   </font><font color="#0000bb">$Height </font><font color="#007700">=</font><font color="#0000bb">$ImageSize</font><font color="#007700">[</font><font color="#0000bb">1</font><font color="#007700">]; </font></font><font face="新宋体"><font color="#ff8000">## 获取长度 <br>   </font><font color="#007700">Switch(</font><font color="#0000bb">$ImageSize</font><font color="#007700">[</font><font color="#0000bb">2</font><font color="#007700">]):  </font></font><font face="新宋体"><font color="#ff8000">## 判断格式,因为4是SWF,所以就没写出来<br>      </font><font color="#007700">Case </font><font color="#dd0000">'1'</font></font><font face="新宋体"><font color="#007700">:<br>         If(</font><font color="#0000bb">ImageTypes</font><font color="#007700">() & </font><font color="#0000bb">IMG_GIF</font></font><font face="新宋体"><font color="#007700">):<br>            </font><font color="#0000bb">$img</font><font color="#007700">=</font><font color="#0000bb">ImageCreateFromGIF</font><font color="#007700">(</font><font color="#0000bb">$Pic</font></font><font face="新宋体"><font color="#007700">);            <br>         Else:<br>            Exit(</font><font color="#dd0000">"系统不支持GIF格式图档"</font></font><font face="新宋体"><font color="#007700">);<br>         EndIf;<br>      Break;<br>      Case </font><font color="#dd0000">'2'</font></font><font face="新宋体"><font color="#007700">:<br>         If(</font><font color="#0000bb">ImageTypes</font><font color="#007700">() & </font><font color="#0000bb">IMG_JPG</font></font><font face="新宋体"><font color="#007700">):<br>            </font><font color="#0000bb">$img</font><font color="#007700">=</font><font color="#0000bb">ImageCreateFromJPEG</font><font color="#007700">(</font><font color="#0000bb">$Pic</font></font><font face="新宋体"><font color="#007700">);<br>         Else:<br>            Exit(</font><font color="#dd0000">"系统不支持JPG格式图档"</font></font><font face="新宋体"><font color="#007700">);<br>         EndIf;<br>      Break;<br>      Case </font><font color="#dd0000">'3'</font></font><font face="新宋体"><font color="#007700">:<br>         If(</font><font color="#0000bb">ImageTypes</font><font color="#007700">() & </font><font color="#0000bb">IMG_PNG</font></font><font face="新宋体"><font color="#007700">):<br>            </font><font color="#0000bb">$img</font><font color="#007700">=</font><font color="#0000bb">ImageCreateFromPNG</font><font color="#007700">(</font><font color="#0000bb">$Pic</font></font><font face="新宋体"><font color="#007700">);<br>         Else:<br>            Exit(</font><font color="#dd0000">"系统不支持PNG格式图档"</font></font><font face="新宋体"><font color="#007700">);<br>         EndIf;<br>      Break;<br>      Default:<br>         Exit(</font><font color="#dd0000">"系统无法辨识"</font></font><font face="新宋体"><font color="#007700">);<br>      Break;<br>   EndSwitch;<br>   For(</font><font color="#0000bb">$y</font><font color="#007700">=</font><font color="#0000bb">1</font><font color="#007700">;</font><font color="#0000bb">$y</font><font color="#007700"><font color="#0000bb">$Height</font><font color="#007700">;</font><font color="#0000bb">$y</font></font><font face="新宋体"><font color="#007700">++):<br>      For(</font><font color="#0000bb">$x</font><font color="#007700">=</font><font color="#0000bb">1</font><font color="#007700">;</font><font color="#0000bb">$x</font><font color="#007700"><font color="#0000bb">$Width</font><font color="#007700">;</font><font color="#0000bb">$x</font></font><font face="新宋体" color="#007700">++):<br>         </font><font face="新宋体"><font color="#ff8000">## 取点索引<br>         </font><font color="#0000bb">$index </font><font color="#007700">= </font><font color="#0000bb">ImageColorAt</font><font color="#007700">(</font><font color="#0000bb">$img</font><font color="#007700">,</font><font color="#0000bb">$x</font><font color="#007700">,</font><font color="#0000bb">$y</font></font><font face="新宋体" color="#007700">); <br>         </font><font face="新宋体"><font color="#ff8000">## 获取RGB颜色<br>         </font><font color="#0000bb">$rgb   </font><font color="#007700">= </font><font color="#0000bb">ImageColorsForIndex</font><font color="#007700">(</font><font color="#0000bb">$img</font><font color="#007700">,</font><font color="#0000bb">$index</font></font><font face="新宋体" color="#007700">);<br>         </font><font face="新宋体"><font color="#ff8000">## 255,255,255(RGB)转FFFFFF(HTML用的)此种格式<br>         </font><font color="#0000bb">$color </font><font color="#007700">= </font><font color="#0000bb">dechex</font><font color="#007700">(</font><font color="#0000bb">$rgb</font><font color="#007700">[</font><font color="#0000bb">red</font><font color="#007700">]).</font><font color="#0000bb">dechex</font><font color="#007700">(</font><font color="#0000bb">$rgb</font><font color="#007700">[</font><font color="#0000bb">green</font><font color="#007700">]).</font><font color="#0000bb">dechex</font><font color="#007700">(</font><font color="#0000bb">$rgb</font><font color="#007700">[</font><font color="#0000bb">blue</font></font><font face="新宋体"><font color="#007700">]); <br>         Echo </font><font color="#dd0000">"<font>$Ascii</font>"</font></font><font face="新宋体"><font color="#007700">;   <br>      EndFor;<br>      Echo </font><font color="#dd0000">"<br>"</font></font><font face="新宋体"><font color="#007700">;<br>   EndFor;<br>EndIf;<br></font><font color="#0000bb">?></font></font></font></font></font>



관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿