php二进制流转图片,php将图片文件转换成二进制输出的方法?

用户投稿 74 0

关于“php_二进制流转图片”的问题,小编就整理了【3】个相关介绍“php_二进制流转图片”的解答:

php将图片文件转换成二进制输出的方法?

本文实例讲述了php将图片文件转换成二进制输出的方法。分享给大家供大家参考。

具体实现方法如下:

header("Content-type:image/jpeg")

;$PSize=filesize('1.jpg')

;$picturedata=fread(fopen('1.jpg',"r"),$PSize)

;echo$picturedata;就这么简单4行代码,就将图片以二进制流的形式输出到客户端了,和打开一张图片没有任何区别。这里需要注意的是,发送的header要根据具体情况而定,不一定都是image/jpeg。JPG的就是image/jpeg,但PNG的就是image/png.不同类型的图片输出不同的头部。希望本文所述对大家的php程序设计有所帮助。

二进制图像原理?

1、二进制图片是指图片是二进制文件,图片保存在磁盘是二进制文件。实际就是称作文本文件。它在磁盘保存时也是一种二进制文件。计算机的存储在物理上是都二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。

2、通过分割从彩色图像生成二进制图像。分割是将源图像中的每个像素分配给两个或更多个类的过程。如果有两个以上的类,则通常的结果是几个二进制图像。最简单的分割方式可能是基于灰度强度将像素分配给前景或背景。

3、基本思路是在图片文件以二进制流的方式读入到计算机中后,将该二进制流转换为字符串,即“图片字符串”,最后保存到XML文档中。显示时,则将XML文档中的“图片字符串”转换为二进制流,并用可视组件(如web网页中的组件)进行显示。

Java中如何把图片转换成二进制流?

使用java的IO流对图片进行二进制读取操作即可

示例为:读取图片为二进制流,并写入到其他图片中

static void testCopyImage(){ File source=new File("E:\\share\\Wallpaper\\Bliss.jpg"); File desk=new File("d:\\images"); if(!desk.exists()){ desk.mkdir(); } try { FileInputStream inputStream=new FileInputStream(source); FileOutputStream outputStream=new FileOutputStream(new File("d:/images/Bliss.jpg")); int ch=inputStream.read(); while(ch!=-1){ outputStream.write(ch); ch=inputStream.read(); } inputStream.close(); outputStream.close(); System.out.println("图片复制成功!"); } catch (FileNotFoundException e) { System.out.println("文件不存在:"+e.getMessage()); } catch (IOException e) { System.out.println("文件读取错误:"+e.getMessage()); } }

到此,以上就是小编对于“php_二进制流转图片”的问题就介绍到这了,希望介绍关于“php_二进制流转图片”的【3】点解答对大家有用。

抱歉,评论功能暂时关闭!