Mac下使用Automator实现截屏编辑保存
以前在Windows下使用百度或者搜狗输入法的截图工具很方便。❶快捷键(
Alt+X,我设置的是这个),❷选择区域,❸编辑所选区域,包括添加文字,线条框框,调色,❹点击『✔️』选择保存位置,修改文件名保存。这个是一个完整的流程,但使用Mac OS X之后,这些都要是单独的过程:
⌘+⇧+4,选择截取屏幕,保存到桌面(这个位置可以defaults write ...来设置)
⌘+⇧+4(选择截图区域,保存到桌面),⌘+^+⇧+4(选择截图区域,保存到clipboard)
⌘+⇧+3(截图全屏,保存到桌面),⌘+^+⇧+3(截图全屏,保存到clipboard)
这些都可以在System Preferences->Keyboard->Shortcuts->Screenshots下设置
可以锁定宽高来截图,⇧(Shift)锁定- 双击保存的图片文件用Preview打开,点击工具栏的工具箱,添加文字,线条,各种框,各种划,截图等常用操作
很全的功能
⌘+S保存,回车命名
这个过程不是连贯的,很多时候截完图,图片都被窗口遮住了,要最小化很多窗口才能点到图片
[为了点到这张图,探索出不少路径]
- 使用Terminal(我用iTerm2),
open -a Terminal ~/Desktop/....png- 点开Finder,navigate到Desktop,找到
^ + ↑切换到另外一个空桌面- Alfred 查找一般list的第一个就是
但是点来点去,找来找去确实烦人得很。
AppleScript是Mac OS X内置的一种功能强大的脚本语言,使用 AppleScript 的目的是把一些重复繁琐并且耗费时间的任务自动化。Mac中的Automator相当于是任务处理的一个GUI,有不少方便的components。习惯写script,还是用图形界面要看个人本阶段的能力和偏好了。
Environment
- Mac OS X 10.11.3
- bash 3.2.57(1)-release (x86_64-apple-darwin15)
- zsh 5.0.8 (x86_64-apple-darwin15.0)
我们下面来完成一下类似windows的截图流程
使用Automator
Part 1 截图部分
『Alfred 2』➜ 『Automator』➜ new Workflow


搜索take screenshot,拖到右边panel

2.1 Type[类型]选择『interactive』
2.2 Option[选项] 『choose selection』[选择性截取]
2.3 Save to[保存到] 『new』选择截图保存的位置
推荐『⌘+⇧+G』选择~/Library/tmp/或者/tmp/com.customservices.screenshots/
文件名就指定为untitled
随便一个名字都可以,应为是作为临时文件的

Part 2 在Preview中编辑
- 搜索open images in preview,拖到右边panel

Part 3 选择保存位置
- 使用Applescript、Bash都可以的,我使用Applescript来写
4.1 搜索applescript,拖拽『run Applescript』到右边的panel
4.2 输入下面的脚本
on run {input, parameters}
set datetime to do shell script "date +%Y%m%d-%H%M%S" as text
-- 弹出窗口选择保存位置,也可以使用choose file或者choose file name如果想自己输入名字的话
set destDir to (choose folder with prompt "Save Screenshot to:" default location (path to desktop folder))
-- 返回alias类型
set whereto to destDir & datetime & ".png" as text
-- 现在whereto是HFS格式的路径,不是POSIX的路径(用/分割的)
do shell script "cp " & (POSIX path of input) & " " & (POSIX path of whereto) with administrator privileges user name "" password ""
return input
end run
Part 4 试运行
- 一步一步来看结果,右上角有step和run两种
5.1 是一步一步地来运行,和gdb,Perl5的-d bytecounts 的 s 一样

5.2 一次性运行完,也可以查看每步的IO
part 5 Save and Install
- 保存到桌面
已经保存到了 百度云 < 4dfp >
就是做个备份,可以后续要修改也很方便 - 选择菜单栏的File -> Convert to...-> Service
.1 Save『⌘+S』弹出要你设置名字的,输入『Extended Screenshot』,确定
这样就保存到系统~/Library/Services中了,默认的自定义服务都是保存在这里的
.2 绑定快捷键『⌘+⇧+5』
navigate到System Preferences -> Keyboard -> Shortcuts -> Services
找到刚才保存的Extended Screenshot,绑定快捷键⌘+⇧+5 - 现在你可以使用⌘+⇧+5来感受一下了

Mac下使用Automator实现截屏编辑保存的更多相关文章
- Mac下打开DDMS(AndroidDeviceMonitor)白屏
mac打开AndroidStudio下的ddms(也就是AndroidDeviceMontor)白屏,是由于jdk版本号较高不兼容导致的,因此需要将jdk降为jdk1.8.0_144就可以来了,但是要 ...
- Ubuntu下Vim 如何进入全屏编辑模式
如题:F11进入全屏编辑模式,再按F11则退出全屏编辑模式.
- Qt实现截屏并保存(转载)
原博地址:http://blog.csdn.net/qinchunwuhui/article/details/52869451?_t_t_t=0.28889142944202306 目前对应用实现截屏 ...
- Swift实现截屏并保存相册
func saveToLocal() { //截屏 let screenRect = UIScreen.mainScreen().bounds UIGraphicsBeginImageContext( ...
- Selenium | 基础入门 | 截屏并保存于本地
可先参考 Selenium | 基础入门 | 利用Xpath寻找用户框 核心代码: //截屏操作 File srcFile = ((TakesScreenshot)driver).getScree ...
- 一个类实现Java截屏并保存到指定文件夹
不知小伙伴们有没有遇到过使用java来截屏的需求,截屏后保存到指定的目录,在桌面上没有任何体现,完全不知道已经被截屏了.至于截屏后怎么做,可能有的老铁只是好奇想知道某人在干啥?也有的老铁可能想进行文字 ...
- Mac下使用Automator实现隐藏和显示
本文使用Makdown编辑 通常系统中打开一个文件有好多种方法,编辑也是.例如你要打开OmniGraffle来画个图(suppose you are working on the Mac OS X) ...
- linux下可以和qq截屏比拟的工具hotshots
可以区域截图,并且对其进行编辑. 安装过程如下: sudo add-apt-repository ppa:ubuntuhandbook1/apps sudo apt-get update sudo a ...
- mac下iterm2配置安装,通过expact实现保存账号,及通过跳板登陆配置
在参考了几款mac不错的ssh工具外,最终选择使用iterm2.本来打算用FinalShell,安装后发现其icon在访达中根本不现实,而且每次访问还需要输入管理员账号密码,强迫症根本受不了... 官 ...
随机推荐
- iOS:创建Siri 功能
前奏: iOS 10 出来之后,我们开发者也可以使用类似Siri的功能.它是使用Siri里面的一个语音识别框架Speech framework来处理siri的.现在, 让我们来看看 一些 主要的代码吧 ...
- 美国大学排名之本科中最用功的学校top15
美国大学排名之本科中最用功的学校top15 威久留学2016-07-29 13:15:59美国留学 留学新闻 留学选校阅读(490)评论(1) 去美国留学的同学可能都知道USnews美国大学排名, ...
- centos linux安全和调优 第四十一节课
centos linux安全和调优 第四十一节课 上半节课 Linux安全 下半节课 Linux调优 2015-07-01linux安全和调优 [复制链接]--http://www.apele ...
- Linux中的两种守护进程stand alone和xinetd
Linux中的两种守护进程stand alone和xinetd --http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html#top 一 ...
- Android设计模式源码解析之外观模式(Facade)
https://github.com/simple-android-framework/android_design_patterns_analysis/tree/master/facade/elsd ...
- .NET中的Action及Func泛型委托
委托,在C#编程中占有极其重要的地位,委托可以将函数封装到委托对象中,并且多个委托可以合并为一个委托,委托对象则可以像普通对象一样被存储.传递,之后在任何时刻进行调用,因此,C#中函数回调机制的实现基 ...
- Servlet 3特性:异步Servlet
解异步Servlet之前,让我们试着理解为什么需要它.假设我们有一个Servlet需要很多的时间来处理,类似下面的内容: LongRunningServlet.java package com.jou ...
- Java中几种日志方案
.本文记录Java中几种常用的日志解决方案 0x01 Log4j .这应该是一个比较老牌的日志方案了,配置也比较简单,步骤如下 1)添加对应依赖,比如 Gradle 中 dependencies { ...
- List, Set, Map是否继承自Collection接口?
List, Set, Map是否继承自Collection接口? 答:List,Set是Map不是
- (转)Aspone.Cells设置Cell数据格式 Setting Display Formats of Numbers and Dates
Setting Display Formats Using Microsoft Excel: Right-click on any desired cell and select Format Cel ...