c++ 截屏工具_MacOS截屏的那些事儿(二)

e6e803641c699947f40dbfe7d2aafacf.png

利用命令行来进行截屏

在此之前,我们一直都是使用快捷键的方式来进行截屏。虽然很方便,也能通过修改参数的方式来调整各种需求,但Mac还提供了另一种可塑性非常强的截屏方式:命令行。这里说的命令行和之前说的通过命令行修改参数不一样,用命令行来修改参数只能调整参数的数值,而通过命令行来截屏不仅能实现截屏的功能操作,还能修改此次截屏的更多功能参数,可谓一举两得。使用命令行来截屏的语法如下:

screencapture [options] [file]

这里的screencapture为命令关键字,[option]为参数类型,[file]为截屏保存位置。这里关于[option]所对应的参数,比之前单独使用命令行来修改的参数多得多,所以当你想要更为定制化的截屏需求时,可以采用这种方式。Mac提供了以下的截屏参数,也可以后接--help查看帮助文档:

  • -c:强制将截图拷贝到剪贴板中;

  • -C:同时捕捉光标;

  • -d:如果出现错误则提示用户;

  • -i:交互式截屏,使用此参数后则相当于Command + Shift + 4;

  • -m:仅仅捕捉主显示屏;

  • -M:截屏后在Mail中打开;

  • -o:在窗口截屏方式中,不显示Drop Shadow;

  • -P:截屏后用Preview打开;

  • -s:仅仅允许鼠标选择模式;

  • -S:在窗口截屏方式中,截取整个屏幕而不是窗口(没怎么弄明白…);

  • -t format:指定截图的文件格式,png、jpg、pdf等,默认为png;

  • -T seconds:延迟几秒截屏;

  • -w:仅允许窗口选择模式;

  • -W:开始窗口模式截屏;

  • -x:屏蔽快门声音;

  • -R x,y,w,h:指定左上角坐标以及宽、高进行矩形截屏

下面举几个例子,比如你想进行全屏方式截屏,需要将图片保存到桌面上,指定的文件格式为jpg,而且不想播放快门声音,则可以在打开Terminal后输入以下命令行:

screencapture -m -t jpg -x ~/Desktop/test.jpg

使用命令行进行截屏虽然步骤稍微繁琐一点(你需要记住命令行格式,以及各种参数类型),但是这种方式提供了更多的参数可供调整,所以当你需要进行深度定制截屏的时候,可以考虑这种方式。

自动修改截屏的尺寸

前面已经介绍过了,如果进行全屏方式截屏,则图片分辨率大小为对应的Retina显示屏分辨率,如果进行窗口或者框选方式截屏,则图片分辨率为窗口或者选择矩形框对应的尺寸大小。但是这种方式会导致图片尺寸很大,特别是在全屏方式、保存格式类型为默认的png情况下,搞得不好一张截图可能就会有10多M的大小。虽说通过改变截图的文件格式类型,比如将png换成jpg之后,图片大小会有所缩小,但是很多情况下我们还希望通过改变截图的分辨率大小来进一步的压缩图片体积。而且在编辑文档的时候我们也常常希望所有的截图分辨率尺寸能统一,比如所有截图的宽度都为1000像素,这样会让文档显得更为美观。经过调查,我发现Mac貌似并没有提供能够修改截图分辨率的命令行,所以我们就不能通过前面介绍的命令行方式来修改截图分辨率了。但是这里我为大家介绍额外的三种方法,第一种是用Preview这个App,第二种是通过Automator来创建一个自动的工作流程,第三种是使用一个全新的sips命令,来修改截图的分辨率尺寸。

通过Preview

当截图被保存之后,我们可以双击图片在Preview中打开,之后就可以选择“工具——调整大小”,进入图像尺寸的修改页面, f12e49639734cfe449b020fc4cbbd153.png你可以在其中填入自己想要的尺寸大小,随后点击保存就行;

通过Automator创建自动工作流

刚刚介绍的通过Preview修改图片尺寸很实用,但是我们作为效率达人需要更快些。使用Preivew来修改尺寸,你要进行“在Preview中打开图片——点击工具——进入调整大小页面——填入尺寸大小——保存”这样一系列的操作,对于一项需要频繁截屏的工作来说,有没有一种自动的方式,来让每次保存到指定地点的截图都能自动被缩减到指定宽度的尺寸大小?当然是有的,这时该Automator这个小机器人隆重登场了。我们可以利用Automator为指定的文件夹创造一个工作流,让每次保存到该文件夹的图片都能被自动按比例调整大小,就免去我们每次都需要打开Preview在里面进行的操作了。好了,废话不多说,下面就来创建这样一个工作流:

  1. 首先打开Automator小机器人,点击“新建“之后,选择”文件夹操作“这个类型的工作流; 

    acffabf67dad4cc0ba8a7521d6e0f6f9.png

  2. 然后点击右侧面板中的”选取文件夹“中的”其他“,来为指定文件夹添加此工作流; 

    145ac7175b3b2803fd47a9a9e0c5ed9e.png

  3. 然后按先后次序将”获得文件夹内容“和”过滤访达项目“拖入到右侧面板中,将”过滤访达项目“的过滤条件设置为”种类—是—图像“。第一步是为了获取该文件夹中添加的项目,第二步是过滤出图片类型的文件;如果该文件夹下还有子文件夹,同时你也想对所包含的子文件夹使用该工作流,则”获得文件夹内容“中的”对每个找到的子文件夹重复“需要被勾选上; 

    44f17755f90b5d7ec84a54da212b2cd7.png

  4. 之后将”照片“中的”缩放图像“拖到右侧面板中,随后将会弹出一个选择框,让你决定是否以拷贝的方式保留副本,这里随你自己的情况而定,我这里就选择了”不添加“,直接在原图上进行修改而不保留原图;

     de947b5ba95e1983551947db99162f97.png

  5. 在输入框中填入你想要进行缩放后的宽度像素,这里我选择了1000像素; 

    90c43bd7cb5a07d70c38cb2451b2048e.png

  6. 最后保存该工作流,就可以对指定的文件夹生效了。你可以在相应的文件夹上点击右键,选择”服务——文件夹操作设置“,查看刚刚为此文件夹添加的工作流。

     fa58c0540ed059b1516237bd277ace5f.png接下来,你可以再次将截屏保存到该文件夹下试试,当截图被创建后,你会发现屏幕顶部工具栏中有一个小齿轮在转圈圈,不一会就消失了,说明工作流已经运行结束。随后你可以查看一下刚刚保存的截图,是不是宽度尺寸被修改为1000像素了?这样就省去了你每次需要打开Preview进行操作的麻烦,非常方便。

使用sips命令

sips全称为scriptable image processing system,翻译过来就是”可脚本化图像处理系统“,是Mac中专门用来请求或修改光栅图像的,可用于AppleScript中的Image Events事件中。这里我们不对AppleScript做讨论,只是介绍sips修改图片的基本用法。关于sips命令的语法大家可以直接在命令行中输入sips -h就能调出其帮助文档,有很多参数可供选择,这里我们只选择图像修改功能这一块: 33096649e4fcd3f86be36dbf36a785f0.png可以看到这里参数-z能够对图片进行指定像素的缩放。但-z需要同时指定宽和高的像素值才行,不然会有错误。不过我们可以看到后面还有另外两个参数--resampleWidth--resampleHeight,使用这两个参数就只需要指定缩放后的宽或者高其中一个值就可以了。这里我们想统一所有截图的宽的像素值,因此选择--resampleWidth。另外sips还有一个--out参数来指定输出的文件,如果不设置这个参数,则会覆盖原文件,如果指定了该参数则保留原文件,继而在拷贝图片的基础上进行修改。这里大家可以按自己的需求来设置,由于我们想要的是覆盖原文件,因此不指定--out参数。举个例子,如果在命令行环境下想对该路径下的截图进行固定宽度为1000像素的缩放,则可以使用以下命令:

sips test.jpg --resampleWidth 1000

将截屏保存为GIF文件

很多时候我们都想将在屏幕上的操作转换成GIF动态图片,Mac的原生截屏功能并不支持这个功能,你可以先进行录屏,然后再将视频转换成GIF格式的图片文件。但是好在现在有非常多的第三方软件支持这个GIF截屏功能,这里介绍一款在Mac上比较常用的App----GIPHY。之所以选择GIPHY是因为它的功能基本上能够满足日常需求,更重要的是——It’s FREE!!

c2b24107e5ebb6b5740e481630adcdd8.png

打开GIPHY之后,界面非常简单,你只需要将矩形框拉伸到自己想要进行截屏的范围,然后点击下方的红色录制按钮就好。再次点击停止按钮后就会停止截屏, 8d73f8a3d3587a02cdef51c163645e67.png随后成功录制的截屏就会显示在界面的下方,点击缩略图就能进入对应的属性面板,在这里你可以设置时间范围、循环类型、像素大小、帧率等参数,随后点击”Save as“你就可以将其保存为GIF格式的文件了。6704791ac3f3a84f7570c6880d023279.png这里我随手录制了一个,大家可以看看效果:

de353fa376deb31af5b9105a3f3df7d7.gif

总结

好了,至此关于Mac系统中关于截屏的知识都全部介绍完了。其实我们还可以做更多好玩的事情让截屏的效率更高,比如利用Alfred或者Automator创作一个工作流,利用关键字或者快捷键的方式来实现文章中介绍的更改截图参数的功能,比如更改截图名字和保存地点,这样就免去了还要打开Terminal,之后在其中输入命令行的一系列操作,而且还不用记住那些繁琐的命令和语法,下次你就可以利用关键字随意在不同的截屏工作场景中进行切换了。不过,有了以上的截屏知识,相信能应付你在日常生活工作中绝大部分场景的截屏需求。如果大家能从这篇文章中学到一些关于Mac的知识,本人就已经很满足了。


f79ad7333d3f6680ca098860902147ad.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值