介绍 Sop.Common.Img

**请看 七牛云的图片处理功能介绍文档了解本项目功能 **

此项目是有https://github.com/Sopcce/.Net-Common-Utility中的一个小部分模块功能。此处拿出来单独维护

以C# Net(dotnet.core)仿照七牛云图片处理类实现的C#帮助类

远景

**做最全、最广、最细的图片处理基类 **

需要

  • 没钱,用不起七牛云的图片处理,需要自己搭建服务器,自己存储图片。
  • 没有图片识别,还是没钱,图片识别腾讯云做的最好,无奈 还是没钱需要使用Tesseract自己搭建一个图文识别功能。

介绍项目地址:https://github.com/csharphelp/Sop.Common.Img


图片处理功能介绍:


接口 简介
1 ImgLim 将JPEG、PNG格式的图片实时压缩而尽可能不影响画质。详细信息请参阅 图片瘦身 (ImgLim)
2 ImgView 可对图片进行缩略操作,生成各种缩略图,可以获取图片格式、大小、色彩模型信息。 详细信息请参阅 图片基本处理 (ImgView)
3 ImgManager 提供了一系列高级图片处理功能,缩放、裁剪、旋转等。详细信息请参阅 图片高级处理 (ImgManager)
4 ImgOcr 图片识别功能,可以识别图片的基本信息 详细信息请参阅 图片基本信息 (ImgOcr)
5 ImgExif 获取数码相机照片的可交换图像文件格式。详细信息请参阅 图片 EXIF 信息(ImgExif)
6 ImgWaterMark 提供两种水印:图片水印、文字水印。关于 ImgWaterMark 接口的详细信息请参阅 图片水印处理 (ImgWaterMark)
7 ImgAve 图片平均色调接口用于计算一幅图片的平均色调。关于 ImgAve 接口的详细信息请参阅 图片主色调 (ImgAve)
8 ImgAnimate 动图合成接口用于将数张图片合成 GIF。关于 ImgAnimate 接口的详细信息请参阅 动图合成 (ImgAnimate)

完成度统计

序号 接口 完成度 测试用例 备注
1 ImgLim 100% 90% 基本完成
2 ImgView 30% 50% 待测试
3 ImgManager 50% 50% 待测试
4 ImgOcr 5% 50% 待测试
5 ImgExif 100% 50% 基本完成
6 ImgWaterMark 80% 70% 文字平铺水印、混合水印待测试开发
7 ImageAve 100% 90% 基本完成
8 ImgAnimate 100% 90% 基本完成

Nuget

Install-Package Sop.Common.Img -Version 1.2.3

请尽可能的使用最新版本,或者根据源码自己修改编译使用

OCR身份证识别

计划使用Tesseract 完成ocr 图片识别部分,只考虑图片识别验证码一类,

因验证码识别问题比较麻烦,且存在刚绕线等因素,设计开发比较慢

问题反馈

目前,请反馈在 issues

QQ群:721420150

** System.Drawing 存在bug 目前无能力修改,望周知 **

更新日志

  • 2019.08

      1. 修改ImageAve,更新文档,计划完成水印部分。
      1. 修改文档。
      1. 修改ImgExif 提交代码,完成测试部分
      1. ImgWaterMark 实现GIF加水印
  • 2019.06
      1. 项目迁移。
      1. 修改文档。
  • 2019.05
    • 修改ImgAnimate 动画部分,完成测试
    • 修改ImgAnimate 动画部分,完成测试,提交代码
  • 更新提交此项目

License

GNU General Public License v3.0

【NET开发】图片处理类-仿照七牛云图片处理功能的更多相关文章

  1. django开发_七牛云图片管理

    七牛云注册 https://www.qiniu.com/ 实名认证成功之后,赠送10G存储空间 复制粘贴AK和SK 创建存储空间,填写空间名称,选择存储区域.访问控制选择位公开空间 获取测试域名 七牛 ...

  2. 利用cropper插件裁剪本地图片,然后将裁剪过后的base64图片上传至七牛云空间

    现在做的项目需要做一些图片处理,由于时间赶急,之前我便没有处理图片,直接将图片放在input[type=file]里面,以文件的形式提交给后台,这样做简直就是最低级的做法,之后各种问题便出来了,人物头 ...

  3. angular封装七牛云图片上传,解决同一页面多个上传按钮分别上传

    step1:引入文件 引入Plupload *该SDK上传功能集于Plupload插件封装,所以需要下载Plupload; plupload.dev.js 引入qiniu.js为了简便,当时直接从官网 ...

  4. vue图片上传到七牛云

    代码: <template> <div class="upload-info"> <div> <el-upload class=" ...

  5. 图床工具PicGO实现七牛云图片上传

    图床工具PicGO实现七牛云图片上传 我们在写博客或者网络文章时经常需要上传图片.目前最有名气的图床工具就是PicGO. 简单的界面,完整的功能,在相册里也能直接复制markdown图片链接.一直深受 ...

  6. KindEditor图片上传到七牛云

    自己做了一个网站,编辑器用的是KindEditor,平时会涉及到KindEditor自带的图片上传,但是服务器用的是虚拟主机,没多少空间,就一直想着把图片放在免费的云存储空间,之前看KindEdito ...

  7. tp5.0整合七牛云图片上传

    转:https://www.cnblogs.com/adobe-lin/p/7699638.html 这里以上传图片为例 上传其他文件也是大同小异 使用composer安装gmars/tp5-qini ...

  8. C#获取七牛云token/删除七牛云图片接口

    // 获取七牛token public ApiResponse GetQiniuToken(QiniuToken req) { try { Mac mac = new Mac(req.AccessKe ...

  9. 图片上传到七牛云/阿里云的OSS

    1.准备 七牛云/阿里云OSS https://github.com/pfinal/storage 2.composer安装包 安装 composer require pfinal/storage 本 ...

随机推荐

  1. jenkins构建报错 Error fetching remote repo 'origin'

    ERROR: Error fetching remote repo 'origin' Finished: FAILURE // 原因如下 原因一:可能是配置的git分支的权限问题,检查一下配置里面的源 ...

  2. Consul入门初识

    Consul Consul是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由HashiCrop公司用Go语言开发,基于Mozilla Public License 2.0的协议进行开源 ...

  3. 程序员Linux教程初窥入门-刘志敏-专题视频课程

    程序员Linux教程初窥入门-313人已学习 课程介绍        程序员Linux教程初窥入门主要针对初级入门程序员的课程,也是为后期学习其他课程的一个基础,Git.Maven.Jenkins.R ...

  4. Mysql Workbench中EER Diagram逆向生成表

    选择链接 选择需要生成的表

  5. Java容器:HashMap连环炮

    本文来源于:https://mp.weixin.qq.com/s/oRx-8XXbgage9Hf97WrDQQ, 公众号:安琪拉的博客 前言 HashMap应该算是Java后端工程师面试的必问题,因为 ...

  6. [ C++ ] 勿在浮沙筑高台 —— 拾遗

    explicit 主要用于处理一个参数的构造函数,使其不用于隐式类型转换(防止二义性) operator->() C++设计 ->可以一直保留下去 仿函数 仿函数会隐式继承他们中的一个(详 ...

  7. python 2 与python 3区别汇总

    python 2 与python 3区别汇总 一.核心类差异1. Python3 对 Unicode 字符的原生支持.Python2 中使用 ASCII 码作为默认编码方式导致 string 有两种类 ...

  8. 入门大数据---Hbase是什么?

    一.Hbase是什么? Hbase属于NoSql的一种. NoSql数据库分为如下几类: Key-Value类型数据库 这类数据库主要会使用到一个哈希表,这个表有一个特定的键和一个指针指向特定的数据. ...

  9. 【总结】Array、ArrayList、List

    一.Array(数组) 1.申明时必须要指定数组长度. 2.数据类型安全. 申明数组如下: 1 class Program 2 { 3 static void Main(string[] args) ...

  10. JavaScript基础对象创建模式之沙盘模式(026)

    沙盘模式可以弥补命名空间模式中的两项不足之处: 使用唯一全局对象作为程序的全局变量入口,使得无法在同一程序中使用两个不同版本的API,因此它们使用的是同一个唯一的全局对象名,如MYAPP: 较长的嵌套 ...