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

JPG,PNG,GIF转Ascii

WBOY
WBOY原創
2016-06-21 09:05:461208瀏覽

这个范例可以用来图形转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>



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn