欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

JPG,PNG,GIF转Ascii

程序员文章站 2022-06-09 21:37:51
...
这个范例可以用来图形转xpm给PHP_GTK用的,不过大家先看一下这个简单程序码,先了解原理,说xpm大概没几个知道,只好改写成这个范例。图形转Ascii。


## 转换图档
$Pic = "jerry.jpg"
;
## 欲转换之字符串
$Ascii = "#"
;

$ImageSize=GetImageSize($Pic
);

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