使用C#实现一个可以预览图片,并且可以对图片进行自由裁剪预览的照相客户端

142 阅读2分钟

一、前言

最近系统需要优化照相客户端,最开始的拍照客户端是使用浏览器插件实现的,不过兼容性不太好,然后使用java写了一款客户端,感觉还是有点臃肿,最近优化系统,决定重新使用C#实现了一个拍照客户端。

二、功能演示:

  1. 启动拍照客户端: 在这里插入图片描述 客户端启动以后,会默认选择第一个照相设备打开,你可以自由选择照相设备,如果是后插入照相设备,点击【刷新】按钮即可。

  2. 拍照: 在这里插入图片描述 点击【拍照】按钮,会进入刚刚拍摄的照片的预览界面,左侧是原图,右侧默认是原图按照一寸照片的缩放。如果你想裁剪图片,可以拖动红色的矩形框,然后双击即可,右侧会出现你截图的预览情况。

在这里插入图片描述

  1. 保存图片:

当你想保存照片时,只需要点击【确定】按钮即可: 在这里插入图片描述

  1. 图片预览:

图片默认保存在程序运行目录下,我本地目录是:

D:\devWorkSpace\cSharpWorkSpace2\takephotoclient\bin\Debug

在这里插入图片描述

三、最后:

这个其实是我系统中拍照客户端的阉割版,实际开发中,我是使用了websocket来进行客户端和浏览器之间的通信,毕竟目前的系统是B/S架构的。

实现思路也很简单:首先点击人员进行照相,通过websocket通信唤醒并弹出照相客户端,拍照,然后确定,此时客户端把图片转变成base64编码,再通过websocket回传给浏览器端,并且隐藏拍照客户端,整个拍照过程就结束了。此过程中,我设置了拍照客户端的隐藏和显示条件,并且开机自启动,这样客户体检更好一些。

由于我不是C#程序员,说代码肯定也说不好,大家需要的话就自取吧。

源码:download.csdn.net/download/C_…