php实现图片转换成ASCII码的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php实现图片转换成ASCII码的方法。分享给大家供大家参考。具体如下:

php图片转换成ASCII码,转换后可以直接通过字符串显示图片

<html>
 <head>
  <title>Ascii</title>
  <style>
   body{
    line-height:0;
    font-size:1px;
   }
  </style>
 </head>
 <body>
   <?php
  $image = 'image.jpg';
  // Supports http if allow_url_fopen is enabled
  $image = file_get_contents($image);
  $img = imagecreatefromstring($image);
  $width = imagesx($img);
  $height = imagesy($img);
  for($h=0;$h<$height;$h++){
   for($w=0;$w<=$width;$w++){
    $rgb = imagecolorat($img, $w, $h);
    $a = ($rgb >> 24) & 0xFF;
    $r = ($rgb >> 16) & 0xFF;
    $g = ($rgb >> 8) & 0xFF;
    $b = $rgb & 0xFF;
    $a = abs(($a / 127) - 1);
    if($w == $width){
     echo '<br>';
    }else{
      echo '<span style="color:rgba('.$r.','.$g.','.$b.','.$a.');">#</span>';
    }
   }
  }
  ?>
 </body>
</html>

希望本文所述对大家的php程序设计有所帮助。

相关文章

用sql命令修改数据表中的一个字段为非空(not null)的语句

用sql命令修改数据表中的一个字段为非空(not null)的语句

ALTER TABLE table1 ALTER COLUMN [name] varchar(60) NULL; table1 表名 name 字段名 为什么加上[],因为na...

PHP中session变量的销毁

1.何为session?相当于一个客户端(可以是浏览器、app、ftp等其他,而且同一个浏览器多开几个又算是不同的客户端)对服务器的一个访问,这个期间服务器为此建立一个唯一的标示(ses...

php以fastCGI的方式运行时文件系统权限问题及解决方法

php以fastCGI的方式运行时文件系统权限问题及解决方法

今天准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的: 应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fas...

基于PHPexecl类生成复杂的报表表头示例

基于PHPexecl类生成复杂的报表表头示例

本文实例讲述了基于PHPexecl类生成复杂的报表表头。分享给大家供大家参考,具体如下: 以前一直有需求,能把Execl里面的数据导入数据库,并且把数据库里面的数据导出到Execl中。...

关于PHP结束标签的使用细节探讨及联想

当PHP解析一个文件时,会寻找开始<?php和结束标记?>,标记告诉PHP开始和停止解释其中的代码。此种方式的解析可以使PHP嵌入到各种不同的文档中,凡是在一对开始和结束标记...