如何将 16 进制的文本还原成 png 图像

2015-03-15 23:16:47 +08:00
 jacy
现在有一段文本,是把png图片转成文本了,也就是用16进制写出来了。现在我想还原出来,比如:

89504e470d0a1a0a0000000d4948445200000064000000280403000000fa5642700000001874455874313432363433313337303a2d3236373339333237303a3331c7cf7c0300000030504c5445ffffffefefefdfdfdf9f9f9f2f2f2f5f5f5f7f7f7fafafaf8f8f8fcfcfcfbfbfbf3f3f3f6f6f6f4f4f4f1f1f1f0f0f0f9488379c000003b549444154388d6360188e404891541dc22e6145e8628c65a19d708ee04474e9d5e1366e02a8424cbdefff7f0986a8149adeba67219a96b3cb16f9226be19cc060fd7f5b95c9bfbdc70c1898969b857609f64c40d1c1e9dcc1f80d488b5742f8e22ebeb5ffb70b30b0feffffffd1e4b69c740506069d04142d6c0f2f327b02755ed9bb07d52ca199ab8ab48c17828287391245862fb241b5818141f4d94a88eb0405943043501c8557d7acd00ab4bbaf00c8066a628fa9f47fc1c038cdffffbf27bbaf2e9cc4c0a0a9304152015907e3dd7226908b663170ee7f92047467c4b2ffd719d4deff07830023cd8ab39d51750f90b5b0bf28624acb00458ceebb58b7090cbc974dfe9d64580dd1f1ee71735a8e5f5766fe01642d323b2630489919727529d879cc0839c9b024d3eedf21063160bcec8df5fff7252679d1bee949f106c85a966430300a320ac8182bc4474a9ade9999dd64f7ff0003e3aa

最好是php代码,能够在Html里显示出来
我的思路是取每两位写成二进制文件,然后读出来,不过感觉好麻烦啊,不知有没有现成的库或者函数,不用写文件的
4450 次点击
所在节点    问与答
4 条回复
yangqi
2015-03-15 23:26:30 +08:00
VYSE
2015-03-15 23:51:46 +08:00
js就行啊。
例如这个页面
http://tomeko.net/online_tools/hex_to_base64.php?lang=en
就是用js把hexstring转成base64
然后在html里base64 img
jacy
2015-03-15 23:52:31 +08:00
@yangqi 感谢,不过不太明白string参数是文本还是二进制流,我直接用上面的文本不行。而且奇葩的是他给的例子我都运行报错。。。
jacy
2015-03-16 00:10:46 +08:00
@VYSE 感谢提供思路,用php实现了。
base64_encode(pack('H*',$orig))

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/177128

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX