PHP代码实例:图片转成HTML
Jun 21, 2016 am 08:56 AMPHP的
body{}
a{display: inline-block;width:1px;height:1px;}
function createImFromFile($path){
if(!is_file($path)){
throw new Exception("File: $path not found!");
}
$info = getimagesize($path);
switch ($info[2]){
case 1:
//gif
$tim = imagecreatefromgif($path);
$w = imagesx($tim);
$h = imagesy($tim);
$im = imagecreatetruecolor( $w,$h );
imagecopy($im,$tim,0,0,0,0,$w,$h);
imagedestroy($tim);
break;
case 2:
//jpg
$im = imagecreatefromjpeg($path);
break;
case 3:
//png
$im = imagecreatefrompng($path);
break;
default:
throw new Exception("Not support file type.File:$path");
}
return $im;
}
$im = createImFromFile("d:\\aa.jpg");
$w = imagesx($im);
$h = imagesy($im);
$str = "
for($i = 0; $i
$str .= "
for($j = 0; $j
$rgb = str_pad(dechex(imagecolorat($im, $j, $i)), 6, "0", STR_PAD_LEFT);
}
$str .= "
}
$str .= "
imagedestroy($im);
echo $str;
/*$rgb = ImageColorAt($im, 100, 100);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;*/
?>
.NET 的:
protected string tmp = "";
protected void Page_Load(object sender , EventArgs e) {
Bitmap bm = new Bitmap("d:\\aa.jpg");
int w = bm.Width;
int h = bm.Height;
StringBuilder sb = new StringBuilder();
Color c;
sb.Append("
for( int i = 0 ; i
sb.Append("
for( int j = 0 ; j
c = bm.GetPixel(j,i);
sb.Append(string.Format("" , V(c.R) , V( c.G) , V(c.B)));
}
sb.Append("
}
sb.Append("
tmp = sb.ToString();
}
private string V( int v ) {
return string.Format("{0:X}" , v).PadLeft(2 , '0');
}
等我一步一步解开他的混淆后,发现:它只是一个笑话!
另外说明一下:
在PHP 里没有直接使用 createimagefromgif 是因为:
imagecolorat returns the color index (position in the palette) for palette based image or the color value for true color images. imagecreatefromjpeg creates true color images, always. imagecreatefromgif creates always palette based images and imagecreatefrompng creates either palette or true color images as PNG supports both image types. <br/>

熱門文章

熱門文章

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

OOBELANGUAGE錯誤Windows 11 / 10修復中出現問題的問題
