ホームページ >バックエンド開発 >PHPチュートリアル >PHP が画像を TXT ストレージに変換する方法の詳細な説明
PHP で画像を TXT ストレージに変換するにはどうすればよいですか?今日、PHP で小さなプラグインを作成していたときに、小さな問題に遭遇しました。それは、画像を TXT テキスト コンテンツに変換する必要があるということです。簡単に言えば、画像を ASCII コードに変換することです。以下にコードを共有します。お役に立てれば幸いです。
PHP によって実装された画像を TXT に変換する
<?php // 打开一幅图像 $file_name='d:\ascii_dora.png'; $chars = "$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>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);
関連する推奨事項:
PHP が数百万のデータを素早く重複排除できる方法の詳細な説明
以上がPHP が画像を TXT ストレージに変換する方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。