精华内容
下载资源
问答
  • 修改gif图片文件大小

    千次阅读 2017-09-08 08:41:54
    2,PS打开,发现有500多帧,工具栏>窗口>时间轴,最底下就出来类似幻灯片那样的一行,里面就是当前git中的帧,CTRL点击选中不要的,在底下有个垃圾桶图标,删除掉; 3,下面还有个播放器的几个按钮,就可以看到git动...

    1,找了一个.gif文件做loading图片,但是呢有300+kb,想弄小一点;

    2,PS打开,发现有500多帧,工具栏>窗口>时间轴,最底下就出来类似幻灯片那样的一行,里面就是当前gif中的帧,CTRL点击选中不要的,在底下有个垃圾桶图标,删除掉;

    3,下面还有个播放器的几个按钮,就可以看到gif动起来了;

    4,工具栏>图像>图像大小,调整一下长宽;

    5,工具栏>文件>存储为web所用格式;

    6,500帧变为23帧,1200*1000变为800*666,大小从320Kb变为12Kb了;

    展开全文
  • 网上下载的gif图很多都不透底,而且尺寸时间什么的都不合适,用ps简单修改一下就好了 1.抽帧 很多gif图帧数很多,抽帧可以大幅压缩gif大小 1.导入gif到ps 2.勾选动作和时间轴面板 这时我们发现帧和图层的隐藏...

    写网页少不了加载动画,用css写又麻烦,直接找现成的gif图就成了一种选择,
    但是网上下载的gif图很多都不透底,而且尺寸时间什么的都不合适,用ps简单修改一下就好了

    1.抽帧

    很多gif图帧数很多,抽帧可以大幅压缩gif大小

    1.导入gif到ps

    2.勾选动作和时间轴面板
    在这里插入图片描述
    这时我们发现帧和图层的隐藏显示是相对应的
    在这里插入图片描述
    在这里插入图片描述
    这样的话我们操作图层就会打乱帧,我们要让所有的图层都显示,但又不干扰帧的显示
    3.这时我们就要把它转换为视频时间轴
    在这里插入图片描述

    在这里插入图片描述
    4.然后再转换帧>>转换为帧动画
    在这里插入图片描述
    这时所有的图层都显示了,同时也不影响动画的播放
    在这里插入图片描述
    5.重点来了–抽帧
    5.1:选择最顶层图层
    5.2:新建一个动作脚本,名字随意
    在这里插入图片描述
    5.3:< alt+[ >选择下一个图层
    5.4:< delete >删除当前图岑
    5.5:录制完毕,点击停止按钮
    在这里插入图片描述
    5.6:然后直接点击播放按钮
    在这里插入图片描述
    5.7:一直点击播放按钮,我们就能得到所有的偶数层
    在这里插入图片描述
    5.8:如果想要奇数层,把动作步骤反过来录制就行了,先删除当前层,再选择下一层
    在这里插入图片描述
    5.9:在看时间轴,所有的奇数帧都变成了透明的,所有的偶数帧不变
    在这里插入图片描述
    5.1.1:先选中第一帧,然后再新建一个动作,用来删除透明的帧,开始录制>>>删除单帧>>转到>>下一帧
    在这里插入图片描述
    在这里插入图片描述
    好了录制完毕,点击停止录制,然后一直点击播放,当然你也可以多录制几个重复动作,这样可以少点几下播放,但这样可能在最后的时候删错帧!
    在这里插入图片描述

    在这里插入图片描述
    一直点,所有的透明帧就都被删除了,这样我们就完成了抽帧
    注意: 如果你删除的是偶数 ,那么删除帧的动作也要反过来录制,即先录制转到下一帧,再录制删除单帧

    2.修改时间

    抽完帧以后,播放速度会变快,录制修改时间的动作即可
    2.1:还是选择第一帧,然后新建动作,开始录制
    修改当前帧的时间,我这里原来是0.03,所以我要改成0.06
    2.2:转到>>下一帧,录制完毕,点击播放即可
    在这里插入图片描述

    3.去底

    每一帧都有白底(或其他底)怎么办,还是用动作
    3.1选择最顶层图层
    ----新建动作
    ----选择魔棒工具,容差和连续自己看着设置,我这里容差=0; 连续不勾选
    ----点击空白(一定要点击图片的边缘部分)
    ----点击delete
    ----alt+[ 选择下一图层
    ----录制完毕,点击播放即可
    ----最后白底就没有了
    在这里插入图片描述

    4.最后裁切一下,导出gif就好了,注意不要裁切到关键部分啊

    5.坑:

    • ps里播放速度比实际gif播放慢的多,所以要适当的调整一下每帧停留时间
    展开全文
  • 一帧的属性复制到了新的对象中,大家如果需要可以直接修改这些属性,比如设置间隔时间可以通过 res.GetPropertyItem(0x5100)这个方法可以得到间隔时间,然后设置得到的属性即可,每一帧有很多属性,具体大家可以去...
    一帧的属性复制到了新的对象中,大家如果需要可以直接修改这些属性,比如设置间隔时间可以通过
    

    res.GetPropertyItem(0x5100)这个方法可以得到间隔时间,然后设置得到的属性即可,每一帧有很多属性,具体大家可以去http://msdn.microsoft.com/zh-cn/library/system.drawing.imaging.propertyitem.id.aspx这里去找需要的值。

     

    在设置EncoderParameter的时候第一帧需要设置为MultiFrame这样表明这个图像对象是个多帧的图片,之后如果是GIF则要设置为FrameDimensionTime,TIFF为FrameDimensionPage。

    之后还必须给每一帧设置属性,我这里就使用原来的属性保持不变,所以直接将原文件的属性复制进去就好。

     

    我的代码里没有做压缩处理,如果大家的图片需要压缩,则直接可以在取道每一帧后对“图像操作对象”来压缩后再saveadd进去。

     

     

    C#
            /// <summary> 
     
            /// 设置GIF大小 
            /// </summary> 
            /// <param name="path">图片路径</param> 
            /// <param name="width">宽</param> 
            /// <param name="height">高</param> 
            private void setGifSize(string path, int width, int height) 
            { 
                Image gif = new Bitmap(width, height); 
                Image frame = new Bitmap(width, height); 
                Image res = Image.FromFile(path); 
                Graphics g = Graphics.FromImage(gif); 
                Rectangle rg = new Rectangle(00, width, height); 
                Graphics gFrame = Graphics.FromImage(frame); 
     
                foreach (Guid gd in res.FrameDimensionsList) 
                { 
                    FrameDimension fd = new FrameDimension(gd); 
     
    //因为是缩小GIF文件所以这里要设置为Time,如果是TIFF这里要设置为PAGE,因为GIF以时间分割,TIFF为页分割 
                    FrameDimension f = FrameDimension.Time; 
                    int count = res.GetFrameCount(fd); 
                    ImageCodecInfo codecInfo = GetEncoder(ImageFormat.Gif); 
                    System.Drawing.Imaging.Encoder encoder = System.Drawing.Imaging.Encoder.SaveFlag; 
                    EncoderParameters eps = null; 
     
                    for (int i = 0; i < count; i++) 
                    { 
                        res.SelectActiveFrame(f, i); 
                        if (0 == i) 
                        { 
                             
                            g.DrawImage(res, rg); 
     
                            eps = new EncoderParameters(1); 
     
    //第一帧需要设置为MultiFrame 
     
                            eps.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.MultiFrame); 
                            bindProperty(res, gif); 
                            gif.Save(@"C:\tmp\test\aaa.gif", codecInfo, eps); 
                        } 
                        else 
                        { 
                             
                            gFrame.DrawImage(res, rg); 
     
                            eps = new EncoderParameters(1); 
     
    //如果是GIF这里设置为FrameDimensionTime,如果为TIFF则设置为FrameDimensionPage 
     
                            eps.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.FrameDimensionTime); 
     
                            bindProperty(res, frame); 
                            gif.SaveAdd(frame, eps); 
                        } 
                    } 
     
                    eps = new EncoderParameters(1); 
                    eps.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.Flush); 
                    gif.SaveAdd(eps); 
                } 
            } 
     
            /// <summary> 
            /// 将源图片文件里每一帧的属性设置到新的图片对象里 
            /// </summary> 
            /// <param name="a">源图片帧</param> 
            /// <param name="b">新的图片帧</param> 
            private void bindProperty(Image a,Image b) 
     
            { 
     
    //这个东西就是每一帧所拥有的属性,可以用GetPropertyItem方法取得这里用为完全复制原有属性所以直接赋值了 
     
    //顺便说一下这个属性里包含每帧间隔的秒数和透明背景调色板等设置,这里具体那个值对应那个属性大家自己在msdn搜索GetPropertyItem方法说明就有了 
     
                for (int i = 0; i < a.PropertyItems.Length; i++) 
                { 
                    b.SetPropertyItem(a.PropertyItems[i]); 
                } 
            } 
     
            private ImageCodecInfo GetEncoder(ImageFormat format) 
            { 
     
                ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders(); 
     
                foreach (ImageCodecInfo codec in codecs) 
                { 
                    if (codec.FormatID == format.Guid) 
                    { 
                        return codec; 
                    } 
                } 
                return null; 
            }
    展开全文
  • 案例是将白色背景换成另一个颜色的背景。图是某女同事百度上搜到的,...第一步:把要修改GIF用PS打开。 选中“窗口-时间轴”。 浏览所有图层,确保只有最底下那个图层是可见的并且是选中状态,其余都隐藏。 ...

    案例是将白色背景换成另一个颜色的背景。图是某女同事百度上搜到的,共有83个图层。

    若是Windows系统的,Ctrl = Command

    若是要换背景图,而不是纯色背景,步骤一样,只需将那个填充颜色的图层替换成要换的背景图即可。

     

    第一步:把要修改的GIF用PS打开。 选中“窗口-时间轴”。

    浏览所有图层,确保只有最底下那个图层是可见的并且是选中状态,其余都隐藏。

    第二步:时间轴最右边有个更多选项的符号,点击,选择“删除动画”。

    这时,时间轴只剩下一个。

    第三步:将图层1的混合模式改成“正片叠底”,右击图层1,选中“拷贝图层样式”。按住shift键,点击图层1和图层83(即第一个和最后一个图层,这时就会选中所有图层),右击选择“粘贴图层样式”。

    若原本图的背景是黑色,混合模式则选“滤色”模式。

    第四步:时间轴最右边有个更多选项的符号,点击,选择“从图层建立帧”。

    第五步:3 键 + N 新建一个空白图层,Command + [(左括号)将其移至最底层,在“颜色”面板中选择你想要的颜色,并*3键:Command + Shift + Alt。

    更多快捷键参考文章 - PS快捷键大全    * Alt + Delete 填充前景色到空白图层。

    第六步:“文件”--“导出”--“存储为web所用格式”。弹出一个框,参数选择GIF,点存储。

    此步很重要,关系到你导出的GIF会不会动。导出前可先预览。参数可根据需要来选择

     

    大功告成啦~

     

    转载于:https://www.cnblogs.com/feixiablog/p/8276624.html

    展开全文
  • 在OnDraw里面创建了一个画刷,CreateSolidBrush,用完没有删除。倒是界面加载了一些gif.放在那里等一会,界面就变成白的了,在点击几下界面就奔溃了。 从奔溃的表象看,看不出来,检查了很长时间才看出来。
  • 169日期时间.gif

    2020-04-22 11:56:46
    帮助快速出图,解决一些图层问题,统计线长面积,能自定义快捷键。修改线性颜色!统计图层数量!修改帮助文本
  • 但是针对于新手,在初始安装PS,经常出现导出的默认格式是gif,这样会导致我们花了挺多时间,导出并不是自己需要的格式。   其实这个时候也很简单,只需要在“存储为web和设备所用格式”里面把我们的切片格式...
  • ps 处理gif

    2019-03-27 21:39:00
    ps打开gif后,做了修改(去掉了背景色),但之后发现本来是动图的gif不动了。 解决该问题需要注意两点: 一:保存时,要选择保存为web格式 二:在ps中打开时间轴,在时间轴中选中某一帧时,只能有多层中的一个层...
  • 用VB 检测一个网络的DAT或者EXE文件的修改时间或者MD5码之类的,主要就是想知道这个网络文件有没有改变,请不要说下载下来在检测,那个文件几G 根本不行!只要可以达到知道网络那个文件是不是有修改了就行了Private ...
  • 确认gdi_lfs会有leak file handle,...可以按以下方法进行修改: 把函数 BOOL gdi_image_is_gif_file(U8 *file_name) { /*----------------------------------------------------------------*/ /* Local...
  • 修改变量 :1. image_list: 这个列表用于存放生成动图的图片 :2. gif_name: 字符串,所生成gif文件名,带.gif后缀 :3. duration: 图像间隔时间 :4. 在IDLE 运行的时候,将 .py 文件保存在图片存在的文件夹中
  • 功能:获取指定目录下面符合一定规则的文件名称和文件修改时间,并保存到指定的文件中#!/usr/bin/env python# -*- coding: utf-8 -*-'''Created on 2010-7-2@author: forever'''import glob, os, datetime#...
  • 秋天视频批量生成GIF V1.3免费版 是一款可以批量将视频转换为GIF工具 ...6.修改查看GIF为生成完毕时显示实际大小. 7.增加娱乐生成结果时可选择查看模式. 8.修改查看结果页面单页时显示上一页问题.
  • win32显示gif图片

    千次阅读 2014-12-17 20:33:00
    由于要求适配gif格式,不得不强迫自己写了这么一个程序,主要参考了VC++ win32 sdk 显示 gif 图片,不过里面的每一帧的显示时间时间设成了固定值,我在代码中写了一个函数获取gif的间隔时间进行了修改 我把函数写到了一...
  • 软件的操作极其简单只需加载玩待剪辑的视频后,输入要转换的Gif图像的持续时间,平整度、 帧大小和质量等结果参数,单击创建就可以搞定了。软件界面美观简洁、简单全面、实用方便,无需培训,即可快速上手,轻轻松松...
  • PS生成gif图像前后帧混叠解决办法写在开头(不需了解可直接点击解决过程)问题描述修改前图片期望图片错误的修改解决过程去除背景生成gif需要重新建立时间轴导出为Web所用格式勾选参数结束(附赠所有的图)写在结尾 ...
  • Duilib 下关于Gif的使用

    千次阅读 2014-12-10 15:53:08
    Duilib是不支持Gif,而网上也有很多方法实现,这里说的是一种更加直接的方法,不需要修改duilib的库,直接按照duilib的内部机制实现gif的显示, 另一方面就是增加了资源管理类,同一个资源不会重复加载 原理:通过GDI...
  • 视频批量转GIF工具V1.3免费版

    千次阅读 2019-05-03 13:03:47
    秋天视频批量生成GIF V1.3是一款批量把视频程序生成为 GIF的批量处理程序, ...6.修改查看GIF为生成完毕时显示实际大小. 7.增加娱乐生成结果时可选择查看模式. 8.修改查看结果页面单页时显示上一...
  •  修改持续时间,可以控制显示的内容;  修改播放速度,可以快进或放慢播放内容。  文件--》导出--》存储为web格式  存储格式改为:gif--》循环默认为1次,可以设为“永远”--》存储 ...
  • PS制作gif表情包

    2020-05-17 22:41:12
    1、找到并显示出时间轴 在窗口中找到时间时间轴在图片正下方显示 2、创建视频时间轴 ...这里的时间是5秒,我后面修改成了1秒 6、存储为Web所用格式 需要将循环次数设置为永远,之后点击存储 效果如下: ...
  • 可以用提供的模板生成GIF表情,例如,我们选择“今天的风甚为喧闹”,我们可以自己修改台词,修改GIF这一帧延迟时间。 流量开销伤不起,模板图片都是自己主机做图床,舍不得提供过多图片序列,因此,生成GIF的...
  • SurfaceView 教程 GIF 制作

    千次阅读 2011-06-20 16:47:00
    在本教程中,介绍OPhone中提供的SurfaceView以及如何通过SurfaceView来编写一个显示GIF动画的View 。SurfaceView介绍 通常情况程序的View和用户响应都是在同一个线程中处理的,这也是为什么处理长时间事件(例如...
  • 网页中GIF不循环播放解决方案

    万次阅读 2018-06-10 19:27:49
    Photoshop中打开GIF图,打开时间轴看到左下角循环为1次 文件&gt;&gt;存储为Web所用格式,或使用快捷键alt+ctrl+shift+s 动画循环次数选择”永远”,存储 保存完成后嵌入网页就可以看到效果啦...
  • 一般第一情况都是想到PS,专门进行让图片设计的工具来制作,但是并不是每个人都掌握PS技术,也没有时间去进行学习,这该怎么办呢?现在线上有许多的GIF在线制作工具,比如使用GIF中文网http://www.gif.cn/,只需要...
  • 网页GIF图片不循环播放解决方案

    千次阅读 2019-02-26 15:24:57
    Photoshop中打开GIF图,打开时间轴看到左下角循环为1次 文件&gt;&gt;存储为Web所用格式,或使用快捷键alt+ctrl+shift+s 动画循环次数选择”永远”,存储 保存完成后嵌入网页就可以看到效果啦 ...
  • 本demo通过httpclient实现爬取并下载图片,仅供学习交流。代码中每次爬取时间定死随机3~6秒。注:请不要随意修改时间,若因个人原因导致服务器瘫痪,请自行承担责任。//代码里的代理自行设置
  • GIF图片的显示问题

    2006-10-26 15:26:00
    今天完成了GIF图片在自定义窗口上的绘制,但是问题是当GIF图片背景色为透明的时候,显示出来却是以黑色来代替,需要修改DC 的调色板,由于当前任务比较紧迫,以后再解决这个问题,CNLONG也要来北京了,好想念他啊,哈哈,不过...
  • 网上很多登录程序都很复杂,看不明白,这个应该比较好懂了。 ... ...src="images/login.gif" width=359> bgColor=#fafafa height=180> 帐号:  maxLength=20 size=15

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 404
精华内容 161
关键字:

修改gif时间