截图图片压缩软件是一款可以读取剪贴板中的图片,保存为png文件,调用pngquant来压缩成新的png,把压缩后的png文件的路径写入剪贴板(相当于在资源管理器中对这个文件做“复制”操作)。还能将带有复杂参数的淘宝链接简化为只保留宝贝ID的链接工具。东坡小编带附上此软件的源码,有需要反欢迎下载!画家之战游戏下载-画家之战中文版(Battle of Painters)免安装硬盘版
截图图片压缩软件程序源码
#include"mainwindow.h"
#include<QApplication>
#include<QtGui>
#include<QMessageBox>
#include<QMimeData>
#include<QDebug>
#include<string.h>
#include<windows.h>
#include<shlobj.h>
//复制文件到剪贴板
//没有加入错误判断,请自行修改
intCopyFileToClipboard(constcharszFileName[])
{
UINTuDropEffect;
HGLOBALhGblEffect;
LPDWORDlpdDropEffect;
DROPFILESstDrop;
HGLOBALhGblFiles;
LPSTRlpData;
uDropEffect=RegisterClipboardFormatA("PreferredDropEffect");
hGblEffect=GlobalAlloc(GMEM_ZEROINIT|GMEM_MOVEABLE|GMEM_DDESHARE,sizeof(DWORD));
lpdDropEffect=(LPDWORD)GlobalLock(hGblEffect);
*lpdDropEffect=DROPEFFECT_COPY;//复制;剪贴则用DROPEFFECT_MOVE
GlobalUnlock(hGblEffect);
stDrop.pFiles=sizeof(DROPFILES);
stDrop.pt.x=0;
stDrop.pt.y=0;
stDrop.fNC=FALSE;
stDrop.fWide=FALSE;
hGblFiles=GlobalAlloc(GMEM_ZEROINIT|GMEM_MOVEABLE|GMEM_DDESHARE,
sizeof(DROPFILES)+strlen(szFileName)+2);
lpData=(LPSTR)GlobalLock(hGblFiles);
memcpy(lpData,&stDrop,sizeof(DROPFILES));
strcpy(lpData+sizeof(DROPFILES),szFileName);
GlobalUnlock(hGblFiles);
OpenClipboard(NULL);
EmptyClipboard();
SetClipboardData(CF_HDROP,hGblFiles);
SetClipboardData(uDropEffect,hGblEffect);
CloseClipboard();
return1;
}
intmain(intargc,char*argv[])
{
QApplicationa(argc,argv);
//MainWindoww;
//w.show();
//从剪贴板中读取图片并保存为png图片
QImagemyImage1=QImage(QApplication::clipboard()->image());
if(myImage1.isNull()){
QStringstr=QApplication::clipboard()->text();
qDebug()<<str;
if(str.left(7)=="http://"){
str=str.mid(7);
}
intistaobaourl=0;
if(str.left(25)=="item.taobao.com/item.htm?"){
str=str.mid(25);
qDebug()<<str;
QStringListslist=str.split('&');
for(inti=0;i<slist.size();i++){
qDebug()<<slist[i];
if(slist[i].startsWith("id=")){
str="http://item.taobao.com/item.htm?"+slist[i];
qDebug()<<str;
QApplication::clipboard()->setText(str);
istaobaourl=1;
}
}
}
elseif(str.left(26)=="detail.tmall.com/item.htm?"){
str=str.mid(26);
qDebug()<<str;
QStringListslist=str.split('&');
for(inti=0;i<slist.size();i++){
qDebug()<<slist[i];
if(slist[i].startsWith("id=")){
str="http://detail.tmall.com/item.htm?"+slist[i];
qDebug()<<str;
QApplication::clipboard()->setText(str);
istaobaourl=1;
}
}
}
if(istaobaourl==1){
QMessageBox::information(NULL,"淘宝URL简化成功",str);
return0;
}
else{
QMessageBox::information(NULL,"出错了","未能从剪贴板中读取图片或淘宝URL");
return-1;
}
}
myImage1.copy().save("temp.png");
//调用pngquant压缩图片
QProcessp(0);
p.start("pngquant.exe--force--verbose--ordered--speed=1--quality=50-90temp.png");
p.waitForStarted();
p.waitForFinished();
/*
//把压缩后的图片写入剪贴板中
QImagemyImage2("temp-or8.png");
QApplication::clipboard()->clear();
QApplication::clipboard()->setImage(myImage2);
myImage1=QImage(QApplication::clipboard()->image());
*/
//读取原图片大小
QFilefile0("temp.png");
if(!file0.open(QIODevice::ReadOnly)){
QMessageBox::information(NULL,"出错了","未能读取原图片");
return-2;
}
qint64filesize0=file0.size();
file0.close();
//读取压缩后图片大小
QFilefile1("temp-or8.png");
if(!file1.open(QIODevice::ReadOnly)){
QMessageBox::information(NULL,"出错了","未能读取压缩后的图片");
return-3;
}
qint64filesize1=file1.size();
file1.close();
QDirtemDir("temp-or8.png");
QStringabsDir=temDir.absolutePath();
qDebug()<<absDir;
std::stringsstr=absDir.toStdString();
constchar*ch=sstr.c_str();
CopyFileToClipboard(ch);
//根据原文件大小自动匹配单位
QStringfs0,fs1,str;
if(filesize0<1024){
fs0.sprintf("%d字节",(int)filesize0);
fs1.sprintf("%d字节",(int)filesize1);
}
elseif(filesize0<1024*1024){
fs0.sprintf("%.1fKB",(float)filesize0/1024);
fs1.sprintf("%.1fKB",(float)filesize1/1024);
}
else{
fs0.sprintf("%.1fMB",(float)filesize0/1024/1024);
fs1.sprintf("%.1fMB",(float)filesize1/1024/1024);
}
//计算压缩比,根据文件大小的方式或许有问题,尤其是对于很小的图片会出现大于100%的压缩比。
str.sprintf("%.1f%%",(float)filesize1*100/(float)filesize0);
str="截图压缩成功,原图片大小为"+fs0+",压缩后图片大小为"+fs1+",压缩率为"+str+",压缩后的图片已经写入剪贴板中。";
QMessageBox::information(NULL,"截图压缩成功",str);
return0;//a.exec();
}
怎么用
截图图片压缩软件使用方法
用各种截屏软件截屏到剪贴板,运行这个小程序,在需要粘贴的地方粘贴。
这个小程序是不后台运行的,运行完就退出。运行方法可以是用各种快捷运行工具比如"WIN+R"、“ALTRUN”等,也可以创建exe的快捷方式,在属性里添加全局快捷键。

这个小程序还有一个附加功能,就是运行时也会从剪贴板读取文本,如果是淘宝或天猫的URL就会简化URL,去掉spm等参数,只保留id参数。这是我整理购物清单时需要用的功能,因为只有几行代码,同时也需要做剪贴板操作,就和上面的程序合体了。
十博10BEt 众博lol解说 大众体育 千千禾禾体育行 3d开奖号3d展开

神谕幻想(GM赞助商城)下载-神谕幻想新增gm赞助商城无限资源版1.0.1 送满V
心灵细胞游戏中文版下载-心灵细胞汉化版1.1 手机版
星际拓荒下载手机版-星际拓荒手游49.0 最新版
微信跳一跳挂下载-微信跳一跳助手4.1.1 最新版
阿凡达之塔手游下载-阿凡达之塔游戏1.3 安卓版
天外飞仙3D飞升版1.8.3 最新版
大学法律app-大学法律(大学法律课程)安卓版2.1.5 官方最新版
2021款VE-1操作手册-广汽本田VE-1操作说明pdf完整版
克克NDS模拟器1.0 官方版
熊大qq空间说说批量删除软件下载-熊大qq空间说说批量删除软件1.0 绿色版
团油企业司机app官方下载版-团油企业司机版6.0.5 最新版
2017安徽省中小学优秀传统文化知识竞赛试题及答案下载-2017安徽省中小学优秀传统文化知识竞赛最新完整版
节约充电怪兽-SavingsMonster(可爱充电插件)1.0.4 图标版
风水罗盘实景完整版2.4.8iOS最新版
天津市教育云平台-天津市基础教育资源公共服务平台4.3.3安卓版
带数学公式的情侣头像一男一女图片大全高清无水印版
无间道谁是卧底游戏下载-无间道谁是卧底安卓版2.1.32最新版
网易有道词典手机客户端下载-网易有道词典苹果版(高效学习App)9.0.29ios版
DJ网站歌曲下载软件增强修复版-13个DJ舞曲网站下载解析工具1.0绿色免费版
魅族MX6使用手册下载-魅族MX6使用说明书word完整免费版