繁体   English   中英

如何在php中将十六进制转换为图像?

[英]How to convert hexadecimal into image in php?

我有一个桌面应用程序。 在该应用程序中,我将图像存储为十六进制,并且运行良好。 但是现在我想将桌面应用程序转换为PHP中的Web应用程序。 当我将十六进制代码转换为图像时,该图像未完成意味着从底部裁剪图像。

以下是我用来渲染图像的php代码

    <?php
$image="visit on given link to get the hexadecimal code";   
$bin = pack("H*", $image);
?>

<img src="data:image/jpeg;base64,<?php echo base64_encode($bin);?>" />

十六进制代码在这里https://drive.google.com/file/d/1UU0tqTlZb-rvQIzT-6yaS8wIKGVlAZK6/view?usp=sharing

以下是执行以上代码后得到的图像

在此处输入图片说明

完整图片在这里

https://drive.google.com/file/d/1z-byehRMIBJqF-GlMGbGFa8hNUKpXn_w/view?usp=sharing

腰了两天后,我得到了上述问题的解决方案。 不幸的是,当我从SQL Server导出blob而不查询时,我得到的是不完整的blob。 这就是PHP脚本裁剪图像的原因。 但是现在我通过查询导出了blob,并获得了完整的blob,然后脚本将blob正确地转换为图像。 如果您还从SQL Server导出Blob数据,则应使用给定的查询。 感谢@Bhavesh Tailor和@Magnus Eriksson给您的时间。

DECLARE @sql VARCHAR(8000)

SET @sql = 'BCP "SELECT * FROM [DB].[schema].[table] " QUERYOUT c:\exportdir\exported_table.csv -c -t, -T -S DM-SQL'

EXEC master.dbo.xp_CmdShell @sql

我也浪费了两天时间寻找解决方案。 最后,执行以下mssql_query('SET TEXTSIZE 10000000');成功; //将限制设置为10MB当然,必须针对我的php框架Yii2对此进行修改。 感谢Wizzard。 从MSSQL DB检索的图像文件中缺少部分数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM