精华内容
下载资源
问答
  • python读取.hdr格式动态图片

    千次阅读 2019-02-26 16:28:28
    总结了两种在python中读取.hdr图片的方法 imageio读取.hdr import imageio imageio.plugins.freeimage.download() img = imageio.imread(hdr_path, format='HDR-FI') opencv读取 import cv2 ...

    总结了两种在python中读取.hdr图片的方法

    1. imageio读取.hdr
    import imageio
    
    imageio.plugins.freeimage.download()
    img = imageio.imread(hdr_path, format='HDR-FI')
    
    1. opencv读取
    import cv2
    
    img = cv2.imread(hdr_path, flags = cv2.IMREAD_ANYDEPTH)
    cv2.imshow('1',img)
    cv2.waitKey (0)
    

    请注意这里一定要使用cv2.IMREAD_ANYDEPTH,因为hdr图片的像素位宽比普通图片大很多,直接读取的话会被截断,故而读出来的值有误。
    显示结果如下所示:
    opencv read hdr
    当然这里的图片显示时自动ToneMapping了,但是img中读取的数据还是原先保存的完整数据。

    展开全文
  • android 记录手机操作行为并将其转换成gif图片
  • 在水晶报表中动态显示任意格式图片 如何在水晶报表中动态显示任意格式图片 前段时间,Accounting 项目内需要在水晶报表中动态显示任意格式图片。但是,水晶报表只支持OleDb的静态加载图片动态在 ...

      在水晶报表中动态显示任意格式的图片      

    如何在水晶报表中动态显示任意格式的图片  
      
     
    前段时间,Accounting 项目内需要在水晶报表中动态显示任意格式的图片。但是,水晶报表只支持OleDb的静态加载图片和动态在 IFieldObject中显示图片,显然,静态加载是不行的了,而后者仅支持JPEG和BMP格式的图片。因此,我们需要把任意格式的图片预先转换成受支持的JEPG或BMP格式,再填充到DataSet中,然后动态地推入到水晶报表中。

          下面的示例中将讲述如何将一个给定路径或从其它途径得到的一个图片流转换成JPEG格式并返回成一个字节数组,以提供给后续应用:


    using System;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.IO;

    namespace Common
    {
        /** <summary>
        /// 与图像相关的工具类。
        /// </summary>
        public class ImageUtil
        {
            public ImageUtil()
            {
            }

            /** <summary>
            /// 从指定路径中读取一个图像文件并保存到字节数组中。
            /// 此方法供水晶报表显示图片使用,所返回字节数组是 BMP 或 JEPG 格式图像数据的数组。
            /// </summary>
            /// <param name="path">指定的文件路径</param>
            /// <returns>从图像中读取出的数据。</returns>
            public static byte[] ReadImage(string path)
            {
                FileStream stream = null;
                try
                {
                    stream = File.OpenRead(path);
                    return ReadImage(stream);
                }
                finally
                {
                    if(stream != null)
                    {
                        stream.Close();
                    }
                }
            }

            /** <summary>
            /// 从给定的流中读取数据到一个字节数组中,并返回此数组。
            /// 如果给定的流不是一个图像格式的流,将报异常。
            /// 返回的字节数组中,将非BMP和JEPG格式的图像数据流转换为JEPG格式输出,以支持大多数应用。
            /// 适用于直接从数据库中读取的二进制图像流的处理。
            /// </summary>
            /// <param name="stream">给定的图像数据流。</param>
            /// <returns>从流中读取的数据。</returns>
            public static byte[] ReadImage(Stream stream)
            {
                Image image = Image.FromStream(stream);
                byte[] myImage = null;

                if(image.RawFormat.Guid != ImageFormat.Jpeg.Guid && image.RawFormat.Guid != ImageFormat.Bmp.Guid)
                {
                    MemoryStream memStream = new MemoryStream();
                    image.Save(memStream, ImageFormat.Jpeg);
                    myImage = memStream.GetBuffer();
                    memStream.Close();
                }
                else
                {
                    stream.Position = 0;
                    myImage = new byte[stream.Length];
                    stream.Read(myImage, 0, (int)stream.Length);
                }
                return myImage;
            }
        }
    }
    下面是应用上面代码的一个示例(非完整):


     private void Form7_Load(object sender, System.EventArgs e)
             {
                 string[] etc = new string[]{"jpg", "gif", "bmp", "tif", "png"};
                 string path = @"C:/Documents and Settings/sh12/My Documents/My Pictures/NeweggLogo.";
                 try
                 {
                     byte[] myImage = null;
     
                     Dataset2 ds = new Dataset2();
                    DataRow drNew = null;
                    for(int i=0; i<etc.Length; i++)
                    {
                        myImage = Newegg.Common.ImageUtil.ReadImage(path + etc);

                        drNew = ds.MyTable.NewRow();
                        drNew["ImageType"] = etc;
                        drNew["ImageData"] = myImage;
                        ds.MyTable.Rows.Add(drNew);
                    }

                    myImage = Newegg.Common.ImageUtil.ReadImage(@"C:/Documents and Settings/sh12/My Documents/My Pictures/untitled.JPG");
                    drNew = ds.MyTable.NewRow();
                    drNew["ImageType"] = "untitled.JPG";
                    drNew["ImageData"] = myImage;
                    ds.MyTable.Rows.Add(drNew);

                    ds.AcceptChanges();

                    CrystalReport1 rpt = new CrystalReport1();
                    rpt.SetDataSource(ds);
                    this.crystalReportViewer1.ReportSource = rpt;
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
    其实这个实现非常简单,思路也容量想到。只是,还是希望能够给大家提供一些帮助或启迪了。

    在水晶报表中动态显示任意格式的图片
     
    如何在水晶报表中动态显示任意格式的图片  
      
     
    前段时间,Accounting 项目内需要在水晶报表中动态显示任意格式的图片。但是,水晶报表只支持OleDb的静态加载图片和动态在 IFieldObject中显示图片,显然,静态加载是不行的了,而后者仅支持JPEG和BMP格式的图片。因此,我们需要把任意格式的图片预先转换成受支持的JEPG或BMP格式,再填充到DataSet中,然后动态地推入到水晶报表中。

          下面的示例中将讲述如何将一个给定路径或从其它途径得到的一个图片流转换成JPEG格式并返回成一个字节数组,以提供给后续应用:


    using System;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.IO;

    namespace Common
    {
        /** <summary>
        /// 与图像相关的工具类。
        /// </summary>
        public class ImageUtil
        {
            public ImageUtil()
            {
            }

            /** <summary>
            /// 从指定路径中读取一个图像文件并保存到字节数组中。
            /// 此方法供水晶报表显示图片使用,所返回字节数组是 BMP 或 JEPG 格式图像数据的数组。
            /// </summary>
            /// <param name="path">指定的文件路径</param>
            /// <returns>从图像中读取出的数据。</returns>
            public static byte[] ReadImage(string path)
            {
                FileStream stream = null;
                try
                {
                    stream = File.OpenRead(path);
                    return ReadImage(stream);
                }
                finally
                {
                    if(stream != null)
                    {
                        stream.Close();
                    }
                }
            }

            /** <summary>
            /// 从给定的流中读取数据到一个字节数组中,并返回此数组。
            /// 如果给定的流不是一个图像格式的流,将报异常。
            /// 返回的字节数组中,将非BMP和JEPG格式的图像数据流转换为JEPG格式输出,以支持大多数应用。
            /// 适用于直接从数据库中读取的二进制图像流的处理。
            /// </summary>
            /// <param name="stream">给定的图像数据流。</param>
            /// <returns>从流中读取的数据。</returns>
            public static byte[] ReadImage(Stream stream)
            {
                Image image = Image.FromStream(stream);
                byte[] myImage = null;

                if(image.RawFormat.Guid != ImageFormat.Jpeg.Guid && image.RawFormat.Guid != ImageFormat.Bmp.Guid)
                {
                    MemoryStream memStream = new MemoryStream();
                    image.Save(memStream, ImageFormat.Jpeg);
                    myImage = memStream.GetBuffer();
                    memStream.Close();
                }
                else
                {
                    stream.Position = 0;
                    myImage = new byte[stream.Length];
                    stream.Read(myImage, 0, (int)stream.Length);
                }
                return myImage;
            }
        }
    }
    下面是应用上面代码的一个示例(非完整):


     private void Form7_Load(object sender, System.EventArgs e)
             {
                 string[] etc = new string[]{"jpg", "gif", "bmp", "tif", "png"};
                 string path = @"C:/Documents and Settings/sh12/My Documents/My Pictures/NeweggLogo.";
                 try
                 {
                     byte[] myImage = null;
     
                     Dataset2 ds = new Dataset2();
                    DataRow drNew = null;
                    for(int i=0; i<etc.Length; i++)
                    {
                        myImage = Newegg.Common.ImageUtil.ReadImage(path + etc);

                        drNew = ds.MyTable.NewRow();
                        drNew["ImageType"] = etc;
                        drNew["ImageData"] = myImage;
                        ds.MyTable.Rows.Add(drNew);
                    }

                    myImage = Newegg.Common.ImageUtil.ReadImage(@"C:/Documents and Settings/sh12/My Documents/My Pictures/untitled.JPG");
                    drNew = ds.MyTable.NewRow();
                    drNew["ImageType"] = "untitled.JPG";
                    drNew["ImageData"] = myImage;
                    ds.MyTable.Rows.Add(drNew);

                    ds.AcceptChanges();

                    CrystalReport1 rpt = new CrystalReport1();
                    rpt.SetDataSource(ds);
                    this.crystalReportViewer1.ReportSource = rpt;
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
    其实这个实现非常简单,思路也容量想到。只是,还是希望能够给大家提供一些帮助或启迪了。

    展开全文
  • android图片格式

    千次阅读 2018-03-09 15:44:27
    目前移动端Android平台原生支持的图片格式主要:JPEG、PNG、GIF、BMP和WebP(自从android4.0开始支持),但是在Android应用开发中能够使用的编解码格式只有其中的三种: JPEG、PNG、WebP 图片格式可以通过...

    *

    android图片格式

    *
    目前移动端Android平台原生支持的图片格式主要有:JPEG、PNG、GIF、BMP和WebP(自从android4.0开始支持),但是在Android应用开发中能够使用的编解码格式只有其中的三种:
    JPEG、PNG、WebP
    图片格式可以通过查看Bitmap类的CompressFormat枚举值来确定。

    public static enum CompressFormat{
        JPEG,
        PNG,
        WEBP;
    
        private CompressFormat(){
    
        }
    }
    • JPEG
      JPEG(发音为/jay-peg/)是一种广泛使用的有损压缩图片标准格式,它不支持透明和多帧动画,一般摄影类作品最终都是以JPEG格式展示。通过控制压缩比,可以调整图片的大小。
    • PNG
      PNG是一种无损压缩图片格式,它支持完整的透明通道,从图像处理领域讲,JPEG只有RGB三个通道,而PNG有ARGB四个通道。由于是无损压缩,因此PNG图片占用空间一般比较大,会无形中添加最终APP的大小,在做APP瘦身时一般都要对PNG图片进行处理以减小其占用的体积。
    • GIF
      GIF 是- 一种古老的图片格式,它诞生于1987 年,随着初代互联网流行开来。它的特点是支持多帧动画。大家对这种格式肯定不陌生,社交平台上面发送的各种动态表情,大部分都是基于GIF 来实现的。
    • WebP
      相比前面几种图片格式,WebP (发音为/weppy/ )算是一一个初生儿了,由Google 在2010
      年发布,它支持有损和无损压缩、支持完整的透明通道、也支持多帧动画,是一种比较理想的图片格式。目前国内很多主流APP都已经应用了WebP,例如微信、微博.淘宝等。在既保证图片质量又要限制图片大小的需求下,WebP应该是首选。
    展开全文
  • 本篇博客记录如何使用 Jupyter Notebook 显示图片,第一种情况为使用 python 绘图时,网页中如何显示静态图片和动态图片;第二种情况为使用 Jupyter Notebook 做笔记时,在网页中调用本地的图片进行展示。 1. 显示...

    本篇博客记录如何使用 Jupyter Notebook 显示图片,第一种情况为使用 python 绘图时,网页中如何显示静态图片和动态图片;第二种情况为使用 Jupyter Notebook 做笔记时,在网页中调用本地的图片进行展示。

    1. 显示绘制的图片

    1)显示静态图片

    • 声明:%matplotlib inline
    import numpy as np
    import matplotlib.pyplot as plt
    %matplotlib inline
    
    fig = plt.figure(figsize=(4.5, 3))
    ax = fig.add_subplot(1, 1, 1)
    
    x = np.linspace(-5, 5, 100)
    y = x**2
    ax.plot(x, y, 'r-')
    
    fig.savefig('static_map.png')
    

    在这里插入图片描述

    2)显示动态图片(以弹出窗口的方式)

    • 声明:%matplotlib auto %matplotlib
    import numpy as np
    import matplotlib.pyplot as plt
    %matplotlib auto
    
    def expand(mi, mx):
        inter = (mx - mi) * 0.05
        return mi-inter, mx+inter
    
    x_min, x_max = expand(-5, 5)
    y_min, y_max = expand(0, 25)
    
    fig = plt.figure(figsize=(4.5, 3))
    ax = fig.add_subplot(1, 1, 1)
    ax.axis([x_min, x_max, y_min, y_max])    # 固定 X 轴和 Y 轴坐标范围
    plt.ion()                                # 连续动态图
    
    # 初始化 (x, y) 坐标
    pre_x = -5 
    pre_y = pre_x ** 2
    
    for _ in range(100):                    # 以 0.1 的步长更新 x,绘制 y=x**2 的动态图
        cur_x = pre_x + 0.1
        cur_y = cur_x ** 2
        
        ax.plot([pre_x, cur_x], [pre_y, cur_y], 'r-')
        plt.pause(0.1)                       # 每次绘制后暂停 0.1 秒
        
        pre_x, pre_y = cur_x, cur_y
    

    在这里插入图片描述

    2. 显示本地的图片

    步骤

    1. 将单元格设置为 MarkDown 格式

      在这里插入图片描述

    2. 输入:![title](图片路径),即以 MarkDown 的方式打开图片

      示例:![title](static_map.png)

      在这里插入图片描述

    3. 运行该单元格

      在这里插入图片描述

    展开全文
  • //播放网络的gif格式图片 } public GifView(Context context, AttributeSet attrs) { super(context, attrs); readGifFormNet(); //setFocusable(true); //readGifFormNative(); } ...
  • 移动端图片格式调研

    千次阅读 2015-11-05 10:56:59
    本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。原文地址: ...合理的图片格式选用和优化可以为你节省带宽、提升视觉效果。在这篇文章里我会分析一下目前主流和新兴的几种图片格式...
  • 生成条码的算法是现成的,只要把条码图片展示在流水号文字之下就行。 本想用jQuery的ajax调用ashx返回二进制流,正如返回json或text、html那样,但查了一下好像dataType暂还不支持这么做。但我们知道ashx可以...
  • HEIF图片存储格式探秘

    千次阅读 2017-12-11 18:30:43
    HEIF图片存储格式
  • 最近老总说要把视图里的图标改成动态的,让其能够更形象的显示状态,所以我就百度了一下,还真没很详细的资料,但最终我还是东凑凑,西凑凑给凑出来了,下面说一下详细步骤吧: 1。下载 PictureEx.h和PictureEx.cpp...
  • 当转换远程图片时,可借助canvas的toDataURL方法:1. 通过Image对象或是img元素发起请求,不存在跨域问题;2. 由于canvas固有限制,该方法只能转换静态图片。或借助FileReader的readAsDataURL方法:1. 通过fetch或是...
  • 但是可以通过Import, Export的方式, 把动态图片的帧导出到视频格式的文件中, 再导入Mathematica中, 然后重导出最终生成gif格式 http://community.wolfram.com/groups/-/m/t/86994;jsessionid=F81DC17EA304180AFB...
  • 先放上js,getBase64Image是用canvas转化base64的核心函数,main是通过创建一个新的img图片节点来触发getBase64Image。 function getBase64Image(img) { var canvas = document.createElement("canvas"); canvas....
  • 用ps制作动态图片教程

    千次阅读 2012-03-20 10:56:21
    动态图片其实是一种.gif格式的动画文件,它是由一帧帧的静态图片组合起来的。 上次我们一起利用Ulead GIF Animator 5制作了简单的动态图片, 利用Ulead GIF Animator 5制作了简单的动态图片教程进入》》 这次我们...
  • 常见图片格式及其区别小结

    千次阅读 2019-02-17 16:50:39
    .jpg的全称是Joint Photographic ...静态的GIF格式图片和JPG格式图片无异,而动态的GIF图片则是由多幅图片保存为一个图片,形成动画效果而制成的.然而,它们只能包含最多 256 种颜色,因此并不适合用在照片上,...
  • 其实修改gif动态图片的方式很多,这里就不列举了。闲话不多说 使用PS修改的必要条件是必须安装Quick Time Play软件支持,很多软件的多媒体设计都离不开它,如,绘声绘影等。 安装完以后即可实现如下按照图片操作...
  • Android显示gif格式图片

    千次阅读 2013-08-07 13:41:09
    大家知道,在Android中使用ImageView来显示gif格式图片,我们无法得到gif格式图片的效果,它只会停在第一帧上,而不会继续。这时只能看到一张静态的图片,这里我们可以使用个简单的方法,即是使用Movie来显示...
  • 图片格式WEBP全面解析

    万次阅读 2018-03-03 23:07:24
    前言 不管是 PC 还是移动端,图片一直是流量大头,...但如今对于 JPEG、PNG 和 GIF 这些图片格式的优化几乎已经达到了极致, 若想改变现状开辟新局面,便要釜底抽薪的胆量和气魄,而 Google 给了我们一个新选择...
  • 基于C++ GDI+技术实现多张图片合并生成Gif动画格式图片的方案。 【1】支持bmp、jpg、tif、png等格式图片的合并 【2】支持图片尺寸、循环次数、图片持续时间的设定
  • 博主声明: 转载请在开头附加本文链接及作者信息,并标记为转载。... Android UI 中最离不开的就是图片了,图片可以由很多种格式构成,比如 png、jpeg、webp 格式等等。我们时候会发现同一张的图片不同的大...
  • vb添加GIF动态图片

    万次阅读 热门讨论 2012-04-28 16:52:18
    众说周知,GIF格式动画文件具有小巧、制作方便等特点,因此在网上得到广泛应用,在vb的picturebox和image控件添加图片后变成静止的了,这给我们设计VB应用程序带来了不便。原来以为实现起来特别的麻烦,又要注册控件...
  • C# pictureBox 动态调用图片方法

    千次阅读 2019-01-10 16:36:29
    C# pictureBox 动态调用图片方法 pictureBox1.BackgroundImage = new System.Drawing.Bitmap(@“Resources\image.png”) 注意:在代码里设置好路径名称后,将需要的图片放到路径下,并改成设定好的名称就可以了,...
  • 前端常见图片格式整理

    千次阅读 2016-06-26 22:30:32
    前端常见图片格式整理
  • 通过文件头判断图片格式

    千次阅读 2018-08-08 13:29:11
    通过16进制准确的判断出图片的真实格式
  • WordPress 支持 WebP格式图片上传方法

    千次阅读 2019-12-26 20:49:51
    WebP(发音:weppy)是一种同时提供了有损压缩与无损压缩(可逆压缩)的图片文件格式,派生自影像编码格式VP8,被认为是WebM多媒体格式的姊妹项目,是由Google在购买On2 Technologies后发展出来,以BSD授权条款发布...
  • 图片格式-AVIF

    千次阅读 2020-11-23 10:42:51
    一、前言 打开caniuse首页(https://caniuse.com/),在最新的特性这里看到一个陌生的东西,一个名为AVIF的图片格式,...于是我就参考相关文档,终于大致搞清楚了AVIF图片格式…………的表面一些支持,对,就表面这点

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 194,993
精华内容 77,997
关键字:

动态图片有哪些格式