用ue 打开一张图片,动动手脚,出现卡碟的画面效果。

可不可以用C#来做一个图片编辑器? 怎么做?路线怎么走?

稍后揭晓答案

根据实际操作获取类一些基础知识:

1. 文件是二进制存储的,为了便于查看编辑器只提供16进制显示 图片文档结构复杂 不益展示

2. 16进制文件每一行都有行标

3. 可能会有分块数据 通过某些标识来区分

上述了解的信息让我想到了一件事,找标准!找标准!

答案应该是可以的。首先来找一个标准

http://baike.baidu.com/link?url=lPvVtKyy_NM8ZGsaOj5NNgaNraK2KYbuwg3tqyXCuRtSulra4Tw9Nh5DRTEv6w5WQVy4pMzwChXoZ7R1K5RGka

万能的互联网告诉我们jpeg的前世今生,写图片编辑器的作者一定要看这个标准。

bmp:

http://baike.baidu.com/link?url=2S5uLAjqyO3IgSCdXqKjrdwSY8qUBXAgsu9sk1y5IY6JJ6py_f2Q2W0IPSqbQFRtC5Oc-bRJsHRVvE3arRfmHjI6ZEHFnV11Toafp6fUc3K

size:52270

jpg

size:2417

bmp,jpg,png 格式还挺多

bmp 大白话 一五一十的描述;

jpg 会用概况总结了, 用简短的方式准确的描述;

性格决定命运, bmp表达时显得比较啰嗦,如果太复杂的事情是不能指望bmp来做的,他会烦死你 极其费存储(讲的都对但都是废话),但电脑喜欢这货,因为电脑就是一个直脑子,你最好是把让我干的事情一是一二是二的告诉我,所以小bmp打开的速度极快,但是复杂的图片bmp是无能为力的,一张图片几百兆 谁都受不了。

jpg可以把bmp的表达提炼总结成很短的内容, 那么问题来了,总结概要就要牺牲细节,所以jpg比起bmp不够细,但是压缩后占空间非常小。这就决定了jpg可以扮演很多角色,互联网传输需要小而准的格式。jpg更加艺术,所以jpg是更高等的格式。 解析jpg要稍复杂。但用户是看总体工作量完成的效率和质量,所以jpg的特点完胜了。

电脑或软件必须内置对应的解码器才能解析这些格式,在使用视频播放器的时候经常会遇到让我们更新解码包的问题。

关于电脑图像处理仔细想来 还是按照人的意志 重复的高效的来完成工作,也没有什么难理解的。

下一篇来完成一个C# 给图片打马赛克的效果。

【img】 图片是怎么存储的的更多相关文章

  1. .Net简单图片系统-本地存储和分布式存储

    本地存储 所谓本地存储就是将上传图片保存到图片服务器的本地磁盘上. if (ConfigHelper.GetConfigString("SaveMode") == "Lo ...

  2. [转]c# 画图中bitmap类处理出图片时,存储的注意事项

    今天查找以前写的画图程序,想完善一下,发现 图片添加文字水印时候会有些模糊,特别是小字体的时候特别模糊, 经过一番调适,终于发现了问题 帖上代码,警示自己 System.Drawing.Image i ...

  3. JavaWeb图片显示与存储

    在数据库中存储文件的名称,在存储信息资料里面存下照片,利用文件名称. 代码如下: 其中iamgeFile为 图片存储的路径userImages/ Resultuser.setImageName(Pro ...

  4. 使用net core 6 c# 的 NPOI 包,读取excel..xlsx单元格内的图片,并存储到指定服务器

    这个是记录,单元格的图片. 直接上代码,直接新建一个 net core api 解决方案,引用一下nuget包.本地创建一个 .xlsx 格式的excel文件 using ICSharpCode.Sh ...

  5. Python爬虫抓取糗百的图片,并存储在本地文件夹

    思路: 1.观察网页,找到img标签 2.通过requests和BS库来提取网页中的img标签 3.抓取img标签后,再把里面的src给提取出来,接下来就可以下载图片了 4.通过urllib的urll ...

  6. 项目图片上传存储的目录部分代码思路Calendar类获取年月日

    在项目中将产品图片全部放置在一个文件夹下面的话,如果图片很多的话,加载速度会减慢,可以按照文件夹按年,月,日来分开存放,图片文件名字取系统时间long类型加上5位随机数字码避免重复. Calendar ...

  7. 图片以BLOB存储在后台数据库中,Android客户端要进行读取显示

    解决方法: 1:在后台以InputStream的方式将图片从数据库中读出: public static InputStream getPicInputStream(){ String id = &qu ...

  8. [Egret]长按图片分享、分享图片、本地存储

    egret 分享有API可以把一个显示对象树渲染成一个位图纹理,我把它赋值给 HTML 的 Image 元素,就实现了图片的显示,在微信中,通过长按图片可以分享出去.当然在其他浏览器可以保存在本地. ...

  9. Django中web开发用md5加密图片名并存储静态文件夹

    一般在开发中,有的网站存在大量图片,首先图片的名称是不能重复的, 但是除了数据库可用的id以外我们可以用time模块中time.time()获取的时间来进行md5加密操作, 因为time模块所产生的时 ...

随机推荐

  1. LeetCode 337

    House Robber III The thief has found himself a new place for his thievery again. There is only one e ...

  2. 关于JSON的总结

    本文总结自百度百科 JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集. 数据在键值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数 ...

  3. Java POI操作Excle工具类

    用到了jxl.jar和poi.jar 一些基本的操作Excel的操作方法: import java.io.File; import java.io.FileInputStream; import ja ...

  4. hust 1017 DLX

    #include<set> #include<cmath> #include<queue> #include<cstdio> #include<v ...

  5. 转:YUV RGB 常见视频格式解析

    转: http://www.cnblogs.com/qinjunni/archive/2012/02/23/2364446.html YUV RGB 常见视频格式解析 I420是YUV格式的一种,而Y ...

  6. MarkFan的程序员客栈

    历史上的今天:2013-12-27 跨平台移动开发 App-Framework DEMO 演示

  7. Cocos移植到Android的一些问题-中文乱码问题

    Android平台版本和设备碎片化很严重,因此从Win32平台移植到Android平台会有很多问题,下面是我们归纳的从Win32平台移植到Android平台遇到的一些问题.在Android平台中文乱码 ...

  8. Xcode中常用的快捷键

    各种新建 shift + comand + n 新建xcode项目   option + command + n 新建分组  command + n 新建文件 搜索 shift + command + ...

  9. UI2_ScrollView&UIPageControl

    // // ViewController.h // UI2_ScrollView&UIPageControl // // Created by zhangxueming on 15/7/10. ...

  10. 推荐5个应用 jQuery 特效的精美特效

    1.jQuery歌词同步的音乐播放器插件 精巧实用 之前我们分享过很多音乐播放器和视频播放器,很多播放器的UI界面都非常酷,特别是利用HTML5和CSS3实现的一些动画特效.今天要分享的一款基于jQu ...