从十六进制数创建图像的其他任何方法? 我使用签名板来获取签名并将其保存为图像并放入PDF中; 我已经从十六进制代码创建了图像(* .PNG)(签名板生成了十六进制数);图像似乎很好(我可以打开它看到它!),但由于某种原因,这个图像无法通过FPDF放入PDF中;但是我可以使用FPDF将任何其他图像放到我的PDF中;所以我猜我创建的图像有问题(HEX to Image)。我通过以下代码创建了我的图像:
$binary = pack("H*", $MyHex);
file_put_contents("../img/Sign_Representative.png", $binary);
您是否知道我可以通过HEX创建图像的任何其他方式或我可以处理此问题的任何方式?
感谢您的指导!
答案 0 :(得分:1)
你确定签名板在HEX中提供PNG数据吗?
如果第一行包含字母“PNG”(不含引号),请检查生成的文件内容。
尝试正确地追踪你的并关注所有数据:
// test 1
$binary = pack("H" . strlen($MyHex), $MyHex);
file_put_contents("../img/Sign_Representative-1.png", $binary);
// test 2
$binary = hextobin($MyHex);
file_put_contents("../img/Sign_Representative-2.png", $binary);
// @src http://www.php.net/manual/en/function.hex2bin.php#110973
function hextobin($hexstr)
{
$n = strlen($hexstr);
$sbin="";
$i=0;
while($i < $n) {
$a =substr($hexstr,$i,2);
$c = pack("H*",$a);
if ($i == 0) {
$sbin = $c;
} else {
$sbin .= $c;
}
$i += 2;
}
return $sbin;
}
顺便问一下,你有什么样的/型号签名板?即霍尼韦尔TT8500?