Home >Backend Development >PHP Tutorial >PHP implementation of converting images to TXT, _PHP tutorial

PHP implementation of converting images to TXT, _PHP tutorial

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-07-12 09:07:00851browse

PHP implements the conversion of images into TXT,

PHP implements the conversion of images into TXT

<&#63;php
/*
2015年10月19日10:24:59

*/
// 打开一幅图像

$file_name='d:\ascii_dora.png';
$chars = "$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]&#63;-_+~<>i!lI;:,\"^`'. ";
function getimgchars($color_tran,$chars){
  $length = strlen($chars);
  $alpha=$color_tran['alpha'];
  $r=$color_tran['red'];
  $g=$color_tran['green'];
  $b=$color_tran['blue'];
  $gray = intval(0.2126 * $r + 0.7152 * $g + 0.0722 * $b);

  if($gray==0){
    return '.';
  }

  if($gray<196){
     $unit = (256.0 + 1)/$length;
    return $chars[intval($gray/$unit)];
  }

  return " ";

}

function color_img($color_tran,$chars){
  $length = strlen($chars);
  $alpha=$color_tran['alpha'];

  $r=$color_tran['red'];
  $g=$color_tran['green'];
  $b=$color_tran['blue'];
  $gray = intval(0.2126 * $r + 0.7152 * $g + 0.0722 * $b);
  $rand=rand (0, $length-1);
  $color="rgb(".$r.",".$g.",".$b.")";
  $char=$chars[$rand];
  return '<span style="color:'.$color.'" >'.$char."</span>";;
  
}

function resize_img($file_name,$chars,$flage=true){
  //header('Content-Type: image/jpeg');
  list($width, $height,$type) = getimagesize($file_name);
  $fun='imagecreatefrom' . image_type_to_extension($type, false);
  if($type==3){
    $flage=false;
  }
  $fun($file_name);
  $new_height =100;
  $percent=$height/$new_height;
  $new_width=$width/$percent;
  $image_p = imagecreatetruecolor($new_width, $new_height);
  $image = $fun($file_name);
  imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
  if($flage){
    return $image_p;
  }else{
    return $image;
  }

}

$im=resize_img($file_name,$chars);

$width=imagesx($im);
$height=imagesy($im);

$back_text="";

for($i=1;$i<=$height;$i++){
  for($j=1;$j<=$width;$j++){
    $color_index = imagecolorat($im, $j-1, $i-1);
    $color_tran = imagecolorsforindex($im, $color_index);
    $back_text.=color_img($color_tran,$chars,false);
  }
  $back_text.="<br/>";
}
 
echo "<pre class="brush:php;toolbar:false">";
echo $back_text;
echo "
"; //file_put_contents('1.txt',$back_text);

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/1063229.htmlTechArticlePHP implements the conversion of images into TXT, PHP implements the conversion of images into TXT php/*October 2015 10:24:59 on the 19th*/// Open an image $file_name='d:ascii_dora.png';$chars = "$@B%8#63;-_ ~...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn