介绍 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. 通过el-tree 实现每次可选中一个节点方案(非checkbox)

    <el-tree v-if="orgDrawer" :data="orgTree" size="medium" ref="o ...

  2. ORA-12514:监听程序无法识别

    使用plsql远程登录oracle数据库时,出现无法识别监听程序的错误.很大机率是配置文件出错. 配置文件如下: listener.ora是服务器端用的,oracle监听程序,就是读的这个文件,里面有 ...

  3. leetcode-cn 剑指offer

    目录 面试题06 从尾到头打印链表 面试题07 重建二叉树 面试题09 用两个栈实现队列 面试题10- I 斐波那契数列 面试题11 旋转数组的最小数字 面试题12. 矩阵中的路径 面试题52. 两个 ...

  4. Spring Boot 系列

    https://www.cnblogs.com/magicalSam/p/7189421.html

  5. ECSHOP 2.5.1 二次开发文档【文件结构说明和数据库表分析】

    ecshop文件架构说明 /* ECShop 2.5.1 的结构图及各文件相应功能介绍 ECShop2.5.1_Beta upload 的目录 ┣ activity.php 活动列表 ┣ affich ...

  6. Ueditor富文本添加视频内容,视频不显示以及编辑富文本时,视频不显示解决方案

    问题是在添加视频时,编辑器会把视频标签<video>换成<img>.很讨厌... 1.2是解决添加视频时不显示,3是解决编辑时不显示 ueditor.all.js文件中  第7 ...

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

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

  8. vim 常用指令-持续更新

    1. 查询文件夹file1内文件数量:ls file1 | wc -l 2. 生成文件夹file1内的文件列表:find file1 -type f > list.txt 3. git管理文件, ...

  9. Bash 脚本编程的一些高级用法

    概述 偶然间发现 man bash 上其实详细讲解了 shell 编程的语法,包括一些很少用却很实用的高级语法.就像发现了宝藏的孩子,兴奋莫名.于是参考man bash,结合自己的理解,整理出了这篇文 ...

  10. 轻松搞定安全框架(Shiro)

    SpringBoot 是为了简化 Spring 应用的创建.运行.调试.部署等一系列问题而诞生的产物,自动装配的特性让我们可以更好的关注业务本身而不是外部的XML配置,我们只需遵循规范,引入相关的依赖 ...