Word 使用技巧
文档的写作,例来分为latex与word两大阵营。一个是论文界的宠儿,一个是平民的所见即所得。看起来好像前者更加牛一些。
本来我也是觉得latex比word好。但是使用latex时苦于找不到一个好的编辑软件。Ctex自带的WinEdit交互简直是一团渣。作为Vim的爱好者,又研究了一段时间latex-suite,并在一段时间以此为主战线,甚至连画图都是使用Tikz。
有人说,你觉得latex比word好,那是因为你没有花和研究latex一样的时间去研究word。后来在花了一定时间研究word之后,越用越顺手。甚至觉得比latex还好用了。再后来,需要编辑公式的地方多了,也就觉出word的不便来。现在也是平常心吧,各有各的好。
下面来讲一下使用word的一些心得。
排版
word当然不是一个出版的软件,但是用来应付平常的排版,绝对是绰绰有余了。
我以为,正常的开发流程应该是这样的,先是纯文本的书写,格式上只进行必要的分段。或者有一些特殊的格式,可以标记一下,当文本写完后,再来集中进行排版。这样,可以使写作时,专注于文本。以前的我,甚至现在的我也经常犯这种错误,写到一半,突发其想,想要一个特殊的格式,一时半会儿,又不知道该怎么样操作能获得这种格式,于是在网上各种查找。等到格式弄得满意了,已经过去了一两个小时。甚至最终也没有能够找到满意的解决方案,而写作时的连续性被破坏了,所谓竹篮打水。
集中排版时,可以调出样式窗格。
常用的样式都包含在里面了。下面举一个创建新样式的例子。
在引用他人文字的时候,需要引用文字有特殊格式,而默认的引用样式,往往效果不好。这里想要达到的效果是像网页中常有的那一种效果,文字呈灰色,在段落最左边有一条灰线。
这可以先在编辑区域作出这种效果。把光标置于编辑区域中的文字。然后创建一个新的样式,匹配当前样式。
对现有的样式也可以用这种方式作出修改。但是要注意的一点是,在修改正文样式时,建议把其他样式的样式基准设置为无,这样可以避免正文的修改引起其他部分样式的变化。
当对一篇文章排版完后,我们希望能把这个结果保存下来,下一次,只要调出保存结果,然后就可以排版出一篇类似的文章。这个保存的结果就是样式集。顾名思义就是样式的集合,它定义了文章的正文是什么样,标题1是什么样……。
要对一个已经存在的样式集作出修改,只要修改后保存覆盖它就可以。
还有另外一种方法是使用管理器。这个命令需要在全部命令中去找。
在管理器中,可以对两个文档中的样式进行复制,删除等操作。样式都是保存在文档中的。最典型的就是当对一篇docx文档样式作出修改时,结果就保存在这个文档中。我们刚才保存的样式集,相当于是保存为一个模板文档(dotx)。只有在样式集中加载进来时,才会使用。而有一个共用的模板,就是Normal.dotm是所有文档默认的样式集保存的地方。另外,在这个文件中也保存了宏的相关定义。
宏
我觉得,作为一个优秀的编辑软件,拥有宏(Macro)绝对是一件必不可少的事情。因为编辑中,时常有一些重复的事情。比如批量调整格式,输入重复内容等等。从Vim(正常模式下的q),Photoshop(动作),Visual Studio(宏资源管理)等等,无一不具有宏的功能。Word的宏也是一个强大的功能。
Word录制宏可以通过状态栏的快捷按钮,也可以通过开发工具选项卡下的管理按钮。开发工具选项卡需要经过设置才能显示出来。
这里分享几个自己经常在用的宏。Word中的宏就是VB代码,使用了Word开放的API。通过录制后进行修改,可以得到很多好用的宏。
- 代码格式化
写文档的时候,经常需要往里面贴代码。如何排版的好看就是一件值得研究的事情。首先要解决的是代码高亮的问题。从IDE,或者Notepad++中复制可以得到高亮的代码。而我通常是通过这个网站。里面支持有各种各样的语言和主题。我一般使用Navy主题,比较淡雅,不会喧宾夺主。得到高亮代码后,往word里面一贴,其实还有一些工作要做。比如修改字体,修改大小,修改缩进等等。字体我喜欢用Menlo,适合代码,可以从网上下载。而代码字体大小修改为和正文一样大或者比正文小一些。缩进往往是比正文再缩进一个级别,以增加层次感。有时候,代码不会很宽,这样,就显得右边很空,这个时候,可以调整右边界,让代码看起来更加紧凑。这些工作,做第一次还有些设计感,后面就都是重复的了。这个时候,就可以把它录制为宏,需要的时候,一个按键就搞定了。下面是我把前面说到的调整录制下来的代码。Sub 代码格式化()
'
' 代码格式化 宏
'
'
Selection.Font.Size = 10
Selection.Font.Name = "Menlo"
With Selection.ParagraphFormat
.LeftIndent = CentimetersToPoints(1.75)
.SpaceBeforeAuto = False
.SpaceAfterAuto = False
End With
Selection.ParagraphFormat.TabStops(CentimetersToPoints(1.62)).Position = _
CentimetersToPoints(1.75)
End Sub
- 保存为pdf文档
在很多正规场合,文档的发布通常是使用pdf格式的。word可以在保存时选择格式为pdf。但是这种方法经常需要在一个很长的下拉列表中选择pdf格式,然后如果文件存在的话,又要点击确定。在反复修改与查看效果时,这种方法就变得不可忍受。这时候就该想到写个宏了。还是先进行录制,然后再进行修改。
代码如下:Sub SaveAsPdf()
Dim filename As String
filename = ActiveDocument.Path & "\" _
& CreateObject("scripting.filesystemobject").getbasename(ActiveDocument) _
& ".pdf"
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
filename, ExportFormat:= _
wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
CreateBookmarks:=wdExportCreateHeadingBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:=False Dim a
Dim s As String
s = "e:\SumatraPDF\SumatraPDF.exe -reuse-instance " & Chr(34) & filename & Chr(34)
a = Shell(s, 1)
End Sub这其中要修改的几个关键的地方
- 文件名的获取,录制下来的宏中文件名是一个常量,我们需要文件名为当前文件名替换后缀后的结果
- OpenAfterExport设置为false是因为不想调用默认pdf查看器。我安装了两个pdf查看器。一个是foxit reader,特点是注释功能强大。但是在这种预览的使用场景中,需要的是对文件非独占(其他程序可以写入),对文件的更改,可以自动载入。因此,在这种情况下,更适合的是sumatrapdf软件。这个软件非常小巧而且满足我们的需求。需要特殊提到的是,由于word在重新生成pdf时,作了特殊处理,因此sumatrapdf不能检测到变化。这一个问题我在论坛上提出后,很快得到开发者的响应,在开发版本中,已经解决了这个问题。详情可见这里。所以使用的版本至少需要大于v2.6.8869。开发版本可在这里下载。
这个时候再把宏添加到快速访问区,这样,只要点击一个按钮就可以生成pdf,而且在使用sumatrapdf时,还是实时加载修改的。
Word 使用技巧的更多相关文章
- word使用技巧-批量删除图片技巧
通过查找替换方法:ctrl+h,查找输入^g,替换输入空,然后替换即可. 今天看到一同事写的文档,发现里面很多word基础功能都不会用,比如同一级的标题居然有好几个样式,并且会级别搞错:列表里的数字居 ...
- 记录一个Word操作技巧,很偏门的,鉴于Google很不方便用了,百度起来比较费劲所以记录一下
拿到一篇文章需要修改时需要将文中某一段带有特定文字的段落删除,比如一段带有“淘宝网”文字的广告性宣传,且这种段落并不是全都一样,数量也很多,不太可能手动一段一段找到Delete,这就可以用这个替换查找 ...
- 毕业论文Word格式技巧
word利用多级列表功能实现章节标题自动编号 坑:在选择级别1后,直接在当前对话框直接继续设置级别2:然后选中级别2,设置相应的格式,主要在将级别链接到样式处选择为标题2,然后要在库中显示的级别选择级 ...
- 办公软件word使用技巧 - imsoft.cnblogs
1,Word中插入水平线 1. 输入连续的三个“-”(减号),然后再敲回车键,就插入了一个细水平分隔线. 2. 输入三个“_” (下划线),然后再敲回车键,就插入了一个粗水平分隔线. 3. 输入三个“ ...
- word小技巧
如何将英文和数字替换为times new romans 1,点击替换(ctrl+H) .2,在查找内容中输入”([A-Z0-9])“(不包括引号,但包括小括号),这是替换所有大写字母和数字,如果还想替 ...
- 一个word小技巧
最近在进行word格式重拍的时候发现了一个有些恶心的事,怎么去匹配文档里面所有的中文呢? 后来通过网络搜索发现了答案,在word中的查找和替换中有一个选项,可以使用通配符进行匹配. 当我们使用 ([一 ...
- 【总结整理】word使用技巧
Tab+Enter,在编过号以后,会自动编号段落 Ctrl + D调出字体栏,配合Tab+Enter全键盘操作吧 Ctrl + L 左对齐, Ctrl + R 右对齐, Ctrl + E 居中 Ctr ...
- office word使用技巧汇总
1.用MathType编辑的公式放在Word中有时会显示不全,仅显示其中一部分. 以下教程介绍解决Word中MathType公式显示不全的方法. 在Word中粘贴完公式后,选中该公式,在工具栏里选择“ ...
- word使用技巧
word文档左侧显示目录 word2007 选择word的视图,然后选择文档结构图 word中插入当前文档名称或者文档编辑时间 https://stackoverflow.com/questions ...
随机推荐
- Oracle 基础 游标
一:游标的基本原理 游标用来处理从数据库中检索的多行记录(使用SELECT语句).利用游标,程序可以逐个地处理和遍历一次检索返回的整个记录集. 为了处理SQL语句,Oracle将在内存中分配一个区域, ...
- Flips测试类(page43)
测试用例:所用java类: StdOut,StdIn , Counter, StdRandom, public class Flips { public static void main(String ...
- Flume与Kafka集成
一.Flume介绍 Flume是一个分布式.可靠.和高可用的海量日志聚合的系统,支持在系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能 ...
- BZOJ 2879: [Noi2012]美食节 最小费用流 动态添边
2879: [Noi2012]美食节 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 324 Solved: 179[Submit][Status] ...
- 常见的Activity Action Intent常量
Intent的中文意思是“意图,目的”的意思,可以理解为不同组件之间通信的“媒介”或者“信使”. 目标组件一般要通过Intent来声明自己的条件,一般通过组件中的<intent-filter&g ...
- 简直喝血!H.265要被专利费活活玩死
转自 http://news.mydrivers.com/1/440/440145.htm H.264是如今最流行的视频编码格式之一,不但技术先进,而且专利费很低,企业每年只需支付650万美元,而个人 ...
- android app性能优化大汇总(UI渲染性能优化)
UI性能测试 性能优化都需要有一个目标,UI的性能优化也是一样.你可能会觉得“我的app加载很快”很重要,但我们还需要了解终端用户的期望,是否可以去量化这些期望呢?我们可以从人机交互心理学的角度来考虑 ...
- 【Linux C中文函数手册】 字符串转换函数
字符串转换函数 1)atof 将字符串转换成浮点型数 相关函数 atoi,atol,strtod,strtol,strtoul表头文件 #include <stdlib.h>定义函数 do ...
- 3月3日(4) Binary Tree Inorder Traversal
原题: Binary Tree Inorder Traversal 和 3月3日(2) Binary Tree Preorder Traversal 类似,只不过变成中序遍历,把前序遍历的代码拿出来, ...
- Tables for condition techniques
T682i -- Access sequence and the tables T685 -- Condition types and Access sequences T683s -- ...