精华内容
下载资源
问答
  • word显示所有格式标记

    2021-07-30 05:33:06
    1、即时取消 Word 的后台打印当我们刚刚编辑完一篇文档按了打印命令后,后来又不想打印当前的文档了,那么怎样才能即时取消后台打印任务呢?一般来说,大家在发出打印任务后,程序会自动将打印任务设置为后台打印,...

    1、即时取消 Word 的后台打印

    当我们刚刚编辑完一篇文档按了打印命令后,后来又不想打印当前的文档了,那么怎样才能即时取消后台打印任务呢?一般来说,大家在发出打印任务后,程序会自动将打印任务设置为后台打印,同时在状态栏上出现打印机图标,打印机图标旁边的数字显示的是正在打印的页的页码。要想即时取消后台打印任务的话,大家只要用鼠标双击打印机图标就可以了。

    2、Word 2003 让文字随文本框大小变化

    当我们在用Word 进行文档编辑时,经常需要用文本框来实现一些特殊的应用,比如在文本框中输入文字来达到特殊效果,但有个问题是,当我们在文本框中输入文字并调整了文本框的大小后文字并不会跟着变化。其实我们可让文本框里的文字大小随文本框大小“同步” 变化;单击选中该文本框,然后选择“剪切”,再执行菜单“[编辑]—[选择性粘贴]”,在粘贴形式中选择“图片(增强型图元文件)”,现在再拖动文本框看看,是不是可以随意改变文字大小了。

    3、Word 2003/2007 快速切换英文大小写

    在Word 中输入英文句子时,一般每个单词的第一个字母都是大写,通常的输入方法就是输入第一个字母时就要进行一次大小写切换。这样很麻烦。不妨全部输入小写字符,然后选中所有单词,按一次组合键“Shift+F3”试试,是不是每个单词的第一个字母都变成了大写?再按一次试试,所有的字母都变成了大写!再按一次,又变了小写。原来,组合键 Shift+F3 是个英文大小写切换键,充分利用这个组合键,以后输入英文就方便多了。

    4、Word 2003/2007 Word 表格中“Shift+Alt+方向键”调整行序

    Word 表格编辑时可以使用一些快捷键提高效率,比如“Shift+Alt+方向键”组合,非常有用,用“Shift+Alt+上(或下)方向键”能够调整文档中段落的顺序,也可以调整 Word 表格中的行序。方法是:将插入点置于要调整行的任意一个单元格内(或行尾段落标记前),按下“Shift+Alt”键,然后按上下方向键,按“向上箭头”键可使该行在表格内向上移动, 按“向下箭头”键可使该行向下移动。

    5、Word 2003 剔除试卷中的选择题答案

    如果想在 Word 2003 中去掉选择题后括号内已有的答案,可按下面的步骤操作:按

    “Ctrl+H”组合键打开“替换”对话框,在“查找内容”框中输入“(^$)”,在“替换为”框中输入“()”(括号中间有空格),单击“全部替换”按钮即可。但“$”只能表示一个任意的字母,即以上操作只能剔除单选题中的答案,若为多项选择题,可在查找时依次加入多个“$”来进行查找并替换。

    6、Word 中英文字体“区分对待”

    在一篇中英文混排的Word 文档中,经常需要将文档中的字体格式统一为诸如“中文为楷体四号字,英文为 Arial UnicodeMS 体”之类的具体形式,该怎样快速而准确地完成该任务呢?好办,以下我们以 Word 2003 为例说明具体操作过程:1)打开所需要的 Word 文档,然后在“编辑”菜单中,单击“全选”命令以选中整篇文档;2)在“格式”菜单中,单击“字体”命令;3)单击“字体”选项卡,然后在“中文字体”框中选择“楷体”;在“字号”框中选择“四号”;在“西文字体”框中选择“Arial-UnicodeMS”;单击“确定”按钮。

    现在,文档中所有英文被设置为AriaUnicodeMS 体,而所有中文被设置为楷体,但中英文的字号皆被设置为四号字。

    7、去除来自“记事本”的自动换动符

    很多人习惯打草稿用“记事本”,然后复制到 Word 中进行排版编辑。但大家多将“记事本”程序设置为自动换行,而将其中的文本拷贝到 Word 中会出现一种奇怪的换行符号, 利用Word 的“查找和替换”中的“[特殊格式]—[标记](即^P)”来查找替换这些换行符往往无效。这里你可以尝试在“查找和替换”中将“查找内容”设置为“^13”(不含双引号),“替换为”项中不输入任何内容,然后全部替换即可去除来自“记事本”的自动换行符。

    8、如何删除 WORD 文档所有空格空行

    1)去多余空行――在“编辑”菜单中选择“替换”,在弹出对话框的“查找内容”中输入^p^p,在“替换为”中输入^p(这里^和 p 都必须在英文状态下输入),然后单击“全部替换”即可(可以多次单击“全部替换”,直到出现“word 已完成对文档的搜索并已完成 0 处替换”);

    2)去多余空格――在“编辑”菜单中选择“替换”,在弹出对话框的“查找内容”中输入一个空格,在“替换为”中什么也不输入,然后单击“全部替换”即可(可以多次单击“全部替换”,直到出现“word 已完成对文档的搜索并已完成 0 处替换”)。

    9、一键选中超链接文本

    在Word 文档中如果要想选中带有超链接的文本,通常我们使用鼠标拖动的方法,但这种方法选中的效率很低,有没有更高效的方法呢?答案是肯定的。其实只须将插入点定位到超链接文本的前面,然后再按下键盘上的 Delete 键就可以实现一键选定了。

    10、快速撤销自动画布

    当在 Word 2007 中绘制图形或插入“文本框”时,在编辑区域总会自动弹出一个“在此处创建图形”的绘图画布,如何撤销该画布呢?

    方法一:当出现画布时,在画布范围之外的区域绘制图形,画布便自动消失;

    方法二:当出现画布时,按“Ctrl+Z”组合键,画布自动撤销;

    方法三:单击“[Microsoft Office 按钮]—[Word 选项]—[高级] ”,在“编辑选项”中, 不选择“插入‘自选图形’时自动创建绘图画布”项,“确定”后完成设置。

    11、生僻字录入并不难

    1)利用Word 中的插入符号法:比如我们要输入“朐”,先打开 Word,输入“月”字并选中它,依次单击“插入—符号”,在弹出的窗口中把“字体”定为“普通文本”,“子集”定为“CJK 统一汉字”,就可以看到许多有“月”部首的汉字(如图 1),从中可以找到“朐”字,双击这个汉字就可输入;

    2)用“微软拼音”输入法中的手写板来输入:切换到微软拼音输入法,单击“选项”(即右下脚倒三角按钮),勾选“输入板”,那么在输入法状态中便会多出一个“开启/关闭输入板”切换按钮,单击该按钮,弹出“手写识别”窗口,这样我们就可以将鼠标当成笔在左侧窗口中书写生僻汉字了,双击中间窗口得到的汉字“朐”即可输入。

    12、Word 2007 快速分割表格

    可以把光标定位到需要分离的表格内容的最后一行,然后按下“Ctrl+Shift+Enter”组合键,这样整个表格就会被一分为二,并且两个表格中间会自动加入一个空行,可以输入其它内容。

    13、Word 提示 mso.dll 无效

    可能是你的Word软件由于某种原因出现故障,比如被病毒破坏了。如果你的Word还能打开,可以点工具栏的“[帮助]—[检测并修复]”来修复 Word。如果不能,你可以在[控制面板]—[添加/卸载程序]中,找到 Office,更改,选择修复,要提前准备好 Office 的安装光盘或者文件夹,如果是光盘要确保光盘完好,如果修复不了就卸载 Office,然后重新安装

    14、Word2007 手动找回自动保存文件

    如果突然遇到停电等突发事件在Word2007 怎么也找不到关机前自动保存的文件,可以在“C:\documents and settings\\Application Data\Microsoft\Word”文件夹找找自动保存文件。平时在写文档的时候最好把自动保存时间设置为 1 分钟,这样可以减少很多麻烦。

    15、Word 2003/2007 快速制作填空题下划线

    先在填空题空白处输入试题中不含的特殊字符(如~、&)等,然后按 Ctrl+H 组合键打开“替换”对话框,在“查找内容”栏输入刚才的特殊字符,在“替换为”栏中输入几个空格,并打开“高级”选项,在“格式/字体”对话框里将“下划线线型”选择为“单实线”,然后点击“全部替换”按钮,即可将特殊字符替换为带下划线的空格,快速制作出填空题的填空部分。

    16、更改 Word2007 默认保存格式

    Word2007 默认保存格式为 docx,低版本的 Word 要想识别必须安装兼容补丁,单击“[Microsoft Office 按钮]—[Word 选项]—[保存] ”,在“保存文档”中,从“将文件保存为此格式”的下拉菜单中选择“Word97-2003 文档(*.doc)”,单击“确定”后退出,以后所有新建文档默认保存格式便为 doc。此法同样适用于 Microsoft Office2007 的其他组件。

    17、谈 Word 中纵向选定文本

    将光标放在需要选定的纵向文字块的左上方,然后用左手按住 Alt 键不放,用右手将鼠标向纵向块文字的右下方拖动,即可纵向选定文字。

    18、Word 2007 巧用快捷键插入公式

    在使用 Word 2007 编辑文档时,通常大家都是切换到“插入”选项卡,然后单击“符号”组的“公式”按钮,再进行公式编辑。其实,无论当前为何选项卡,要在文档中插入公式时,只需要按下“Alt+=”键即可进行公式编辑。

    19、Word 2007 表格倒着建

    通常大家都是先创建好表格,然后再输入内容。但是,有时创建表格事先没有规划好, 所以出现输入内容时才发现行或列不够用了或者太多了的情况。其实,你可以改变一下顺序, 即先输入表格内容,只是在输入内容时,请以空格识别“列”,以回车键识别“行”。然后,选中输入的表格内容,再单击“插入”选项卡,单击“表格”组中的“表格”下的三角箭头, 单击“插入表格”,则一个表格就形成了。

    20、Word 中微调图片位置

    在Word 文件中插入图片(文本框)后,有时候要求对它进行细微的位置调整,只需把图片设置为四周型(紧密型),按住 Ctrl 键同时按方向键,即可对图片进行上下左右微调。也可以按下“Alt+鼠标左键”进行微调。

    21、在 Word 表格的最后添加一行

    在表格最后添加一行,只需将光标移到表格的最后一个单元格中,按“Tab”键即可快速插入一行。

    22、快速预览 Word 文档

    我们知道在查看图片文件时,可以选择缩略图模式,这样所有图片都可以以缩略图的形式显示出来,使用非常方便。在浏览 Word 文档的时候,如果也能够预览其中的内容就好了, 特别是在大量文档中查看某篇文章的情况下。其实,方法还是有的,启动Word 软件后,单击执行“[文件]—[打开]”命令,在弹出的对话框中定位到目标文件夹,然后选定其中的某个文件,再单击“视图”按钮右侧的倒三角形按钮,在弹出的菜单中选择“预览”选项,在下面的窗口中就会显示文章的内容。

    23、Ctrl 键配合鼠标翻页键的妙用

    在 Word2003/2007 文档中,按住 Ctrl 键,同时滚动鼠标的翻页键(又叫鼠标中键),可以放大或缩小文本,页面想多大就多大,也可以多页打印预览,在屏幕上显示多页。当页面比较小时会在屏幕上显示多页,如果是一本书可清晰地看到文档的脉络和结构。比如,标题及级别关系,章节,错别字。如果出错,把光标定位在出错处可立即修改,不用点来点去, 省去不少时间,也可进行文字和图形的插入,非常方便。

    24、Word 表格巧调列宽

    在编辑 Word 表格时,大家通常都是拖动表格线来调整列宽。其实,如果在拖动表格线时,配合使用不同的按键,可以达到不同的目的。按住Ctrl 键的同时拖动,表格线左边的列宽改变,增加或减少的列宽由其右方的列共同分享或分担,整个表格的宽度不变;按住 Suift 键的同时拖动,只改变表格线左方的列宽,其右方的列宽不变,整个表格的宽度将有变动; 按住Alt 键的同时拖动,标尺上会显示出各列的宽度,其拖动结果与普通拖动方法相同

    25、“锁定”Word2007 每次打开的默认字体大小

    用Word2007 来进行文档编辑,但是每次打开后字体默认大小都是五号,每次都还得手动去切换一下,变为常用的四号字大小,要是能打开文档后默认的字体大小为四号就方便了,其实在文档编辑区域空白处右击鼠标,在弹出的快捷菜单中选择“字体”打开字体设置窗口,设置好字体和字号大小为“四号”,然后点击左下角“默认”按钮,在弹出一个新对话框中单击“是”后退出。好了,以后打开新文档就是按照你设置的字体和字号啦,不用再去手动切换一次。

    26、把文字替换成图片

    首先把图片复制到 剪贴板中,然后打开替换对话框,在“查找内容”框中输入将被替换的文字,接着在 “替换为”框中输入“^c”(注意:输入的一定要是半角字符,c 要小写),单击替换即可。

    27、Word 表格自动填充

    在 Word 表格里选中要填入相同内容的单元格,单击“格式→项目符号和编号”,进入“编号”选项卡,选择任意一种样式,单击“自定义”按钮,在“自定义编号列表”窗口中“编号格式”栏内输入要填充的内容,在“编号样式”栏内选择“无”,依次单击“确定”退出后即可。

    28、 Word 中巧输星期

    单击“格式→项目符号和编号”,进入“编号”选项卡,单击“自定义”按钮,在“编号样式” 栏内选择“一、二、三”等样式,在“编号格式”栏内的“一”前输入“星期”即可。

    29、粘贴网页内容

    在Word 中粘贴网页,只须在网页中复制内容,切换到Word 中,单击“粘贴”按钮,网页中所有内容就会原样复制到 Word 中,这时在复制内容的右下角会出现一个“粘贴选项”按钮, 单击按钮右侧的黑三角符号,弹�...

    展开全文
  • wdRowHeightAuto '行高设为自动 .Height = CentimetersToPoints(0) '上面缩进量为0 .LeftIndent = CentimetersToPoints(0) '左面缩进量为0 End With With .Range With .Font '字体格式 .Name = "宋体" .Name = ...


    Sub glkCurrentDocPageSetup()

     Dim glkDoc As Document '定义变量
     Set glkDoc = Application.ActiveDocument '设置为当前文档
     With glkDoc '设置文档参数
     With .PageSetup '设置【页面设置】参数
    .Orientation = wdOrientPortrait '页面方向为纵向
    .TopMargin = CentimetersToPoints(3) '上边距为3cm
    .BottomMargin = CentimetersToPoints(3) '下边距为3cm
    .LeftMargin = CentimetersToPoints(2.6) '左边距为2.6cm
    .RightMargin = CentimetersToPoints(2.3) '右边距为2.6com
    .Gutter = CentimetersToPoints(0) '装订线0cm
    .HeaderDistance = CentimetersToPoints(1.5) '页眉1.5cm
    .FooterDistance = CentimetersToPoints(2)  '页脚2cm
    .PageWidth = CentimetersToPoints(21) '纸张宽21cm
    .PageHeight = CentimetersToPoints(29.7) '纸张高29.7cm
    .SectionStart = wdSectionNewPage '节的起始位置:新建页
    .OddAndEvenPagesHeaderFooter = False '不勾选“奇偶页不同”
    .DifferentFirstPageHeaderFooter = False '不勾选“首页不同”
    .VerticalAlignment = wdAlignVerticalTop '页面垂直对齐方式为“顶端对齐”
    .SuppressEndnotes = False '不隐藏尾注
    .MirrorMargins = False '不设置首页的内外边距
    .BookFoldRevPrinting = False '不设置手动双面打印
    .BookFoldPrintingSheets = 1 '默认打印份数为1
    .GutterPos = wdGutterPosLeft '装订线位于左侧
    .LayoutMode = wdLayoutModeLineGrid '版式模式为“只指定行网格”
      End With '结束【页面设置】参数设置
      
      With .Content.ParagraphFormat '段落格式设置
    .LeftIndent = CentimetersToPoints(0) '左缩进0cm
    .RightIndent = CentimetersToPoints(0) '右缩进0cm
    .SpaceBefore = 0 '段前间距0cm
    .SpaceBeforeAuto = False '段前间距不设为“自动”
    .SpaceAfter = 0 '段后间距0cm
    .SpaceAfterAuto = False '段后间距不设为“自动”
    .LineSpacingRule = wdLineSpaceExactly
    .LineSpacing = 30 '行距30磅
    .Alignment = wdAlignParagraphJustify '段落设置为两端对齐
    .WidowControl = False '不勾选“孤行控制”
    .KeepWithNext = False '不勾选“与下段同页”
    .KeepTogether = False '不勾选“段中不分页”
    .PageBreakBefore = False '不勾选“段前同页”
    .NoLineNumber = False '不勾选“取消行号”
    .Hyphenation = True '不勾选“允许西文在单词中间换行”
    .FirstLineIndent = CentimetersToPoints(2) '首行缩进2cm
    .OutlineLevel = wdOutlineLevelBodyText '大纲级别为“正文文本”
    .CharacterUnitLeftIndent = 0 '段落左缩进0cm
    .CharacterUnitRightIndent = 0 '段落右缩进0cm
    .CharacterUnitFirstLineIndent = 0 '特殊格式为“无”
    .LineUnitBefore = 0 '段前间距为0
    .LineUnitAfter = 0 '段后间距为0
    .AutoAdjustRightIndent = True '自动调整段落的右缩进
    .DisableLineHeightGrid = False '勾选“如果定义了文档网格,则对齐网格”,即指定段落中的字符与行网格对齐
    .FarEastLineBreakControl = True '将东亚语言文字的换行规则应用于指定的段落
    .WordWrap = True '在指定段落或文本框的西文单词中间断字换行
    .HangingPunctuation = True '指定段落中的标点将可以溢出边界
    .HalfWidthPunctuationOnTopOfLine = False
    .AddSpaceBetweenFarEastAndAlpha = True '自动在指定段落的中文文字和拉丁文字之间添加空格。
    .AddSpaceBetweenFarEastAndDigit = True '自动在指定段落中的中文文字与数字之间添加空格
    .BaseLineAlignment = wdBaselineAlignAuto '自动调整基线字体对齐方式
    End With

    ''''''''''新增部分

       
    With .Styles("标题 1").Font
        .Color = wdColorBlack
        .Bold = False '标题不再加粗
        .Size = 22 '三号
        .Name = "宋体"
        End With
        
         With .Styles("标题 2").Font
        .Color = wdColorBlack
        .Bold = False '黑体一般不再加粗
        .Size = 16 '三号
        .Name = "楷体"
        End With
        With .Styles("正文").Font    '设置正文普通文字格式
        .Color = wdColorBlack
        .Bold = False
        .Size = 10
        .Name = "宋体"
        End With
     End With '结束文档参数设置
      
     
    End Sub
    Sub 表格处理()
        '功能:光标在表格中处理当前表格;否则处理所有表格!
        Application.ScreenUpdating = False  '关闭屏幕刷新
        Application.DisplayAlerts = False  '关闭提示
        On Error Resume Next  '忽略错误
        '***************************************************************************
        Dim mytable As Table, i As Long
        If Selection.Information(wdWithInTable) = True Then i = 1
        For Each mytable In ActiveDocument.Tables
            If i = 1 Then Set mytable = Selection.Tables(1)
            With mytable
                '取消底色
                .Shading.ForegroundPatternColor = wdColorAutomatic
                .Shading.BackgroundPatternColor = wdColorAutomatic
                Options.DefaultHighlightColorIndex = wdNoHighlight
                .Range.HighlightColorIndex = wdNoHighlight
                .Style = "表格主题"
                
                '单元格边距
                .TopPadding = PixelsToPoints(0, True) '设置上边距为0
                .BottomPadding = PixelsToPoints(0, True) '设置下边距为0
                .LeftPadding = PixelsToPoints(0, True)  '设置左边距为0
                .RightPadding = PixelsToPoints(0, True) '设置右边距为0
                .Spacing = PixelsToPoints(0, True) '允许单元格间距为0
                .AllowPageBreaks = True '允许断页
                '.AllowAutoFit = True '允许自动重调尺寸
                
                '设置边框
                .Borders(wdBorderLeft).LineStyle = wdLineStyleNone
                .Borders(wdBorderRight).LineStyle = wdLineStyleNone
                .Borders(wdBorderTop).LineStyle = wdLineStyleThinThickMedGap
                .Borders(wdBorderTop).LineWidth = wdLineWidth225pt
                .Borders(wdBorderBottom).LineStyle = wdLineStyleThickThinMedGap
                .Borders(wdBorderBottom).LineWidth = wdLineWidth225pt
                
                With .Rows
                    .WrapAroundText = False '取消文字环绕
                    .Alignment = wdAlignRowCenter '表水平居中  wdAlignRowLeft '左对齐
                    .AllowBreakAcrossPages = False '不允许行断页
                    .HeightRule = wdRowHeightExactly '行高设为最小值   wdRowHeightAuto '行高设为自动
                    .Height = CentimetersToPoints(0) '上面缩进量为0
                    .LeftIndent = CentimetersToPoints(0) '左面缩进量为0
                End With
                
                With .Range
                    With .Font '字体格式
                        .Name = "宋体"
                        .Name = "Times New Roman"
                        .Color = wdColorAutomatic '自动字体颜色
                        .Size = 12
                        .Kerning = 0
                        .DisableCharacterSpaceGrid = True
                    End With
                    
                    With .ParagraphFormat '段落格式
                        .CharacterUnitFirstLineIndent = 0 '取消首行缩进
                        .FirstLineIndent = CentimetersToPoints(0) '取消首行缩进
                        .LineSpacingRule = wdLineSpaceSingle '单倍行距  wdLineSpaceExactly '行距固定值
                        '.LineSpacing = 20 '设置行间距为20磅,配合行距固定值
                        .Alignment = wdAlignParagraphCenter '单元格水平居中
                        .AutoAdjustRightIndent = False
                        .DisableLineHeightGrid = True
                    End With
                    
                    .Cells.VerticalAlignment = wdCellAlignVerticalCenter  '单元格垂直居中
                    
                End With
                
                '设置首行格式
                .Cell(1, 1).Select ' 选中第一个单元格
                With Selection
                    .SelectRow '选中当前行
                    Selection.Rows.HeadingFormat = wdToggle '自动标题行重复
                    .Range.Font.Bold = True '表头加粗黑体
                    .Shading.ForegroundPatternColor = wdColorAutomatic '首行自动颜色
                    .Shading.BackgroundPatternColor = -603923969 '首行底纹填充
                End With
                
                '自动调整表格
                .Columns.PreferredWidthType = wdPreferredWidthAuto
                .AutoFitBehavior (wdAutoFitContent) '根据内容调整表格
                .AutoFitBehavior (wdAutoFitWindow) '根据窗口调整表格
                
            End With
            
            If i = 1 Then Exit For
        Next
        '***************************************************************************
        Err.Clear: On Error GoTo 0 '恢复错误捕捉
        Application.DisplayAlerts = True  '开启提示
        Application.ScreenUpdating = True   '开启屏幕刷新
    End Sub

    '设置图片大小
    Dim Shap As InlineShape

    For Each Shap In ActiveDocument.InlineShapes

    If Shap.Type = wdInlineShapePicture Then

    Shap.LockAspectRatio = msoFalse '不锁定纵横比

    Shap.Width = CentimetersToPoints(10) '宽10CM

    Shap.Height = CentimetersToPoints(7) '高7CM

    End If

    Next
    '设置页码
    Sub sutAddPageNum1()
       With ActiveDocument.Sections(1).Footers(wdHeaderFooterPrimary)
           Set rng = .Range
           rng.Text = "第 "
           rng.Font.Size = 16 '三号
           rng.Collapse wdCollapseEnd
           ActiveDocument.Fields.Add rng, wdFieldPage, "Page"
           Set rng = .Range
           rng.Collapse wdCollapseEnd
           rng.Text = " 页 / 共 "
           rng.Collapse wdCollapseEnd
           ActiveDocument.Fields.Add rng, wdFieldNumPages, "Pages"
           Set rng = .Range
           rng.Collapse wdCollapseEnd
           rng.Text = " 页 "
           .Range.Fields.Update
           .Range.ParagraphFormat.Alignment = wdAlignParagraphCenter
       End With
    End Sub
     

    展开全文
  • 分享给大家供大家参考,具体如下:有时我们需要把网页内容保存为Word文档格式,以供其他人员查看和编辑。PHPWord是一个用纯PHP编写的库,使用PHPWord可以轻松处理word文档内容,生成你想要的word文档。安装我们使用...

    本文实例讲述了使用PHPWord生成word文档的方法。分享给大家供大家参考,具体如下:

    有时我们需要把网页内容保存为Word文档格式,以供其他人员查看和编辑。PHPWord是一个用纯PHP编写的库,使用PHPWord可以轻松处理word文档内容,生成你想要的word文档。

    安装

    我们使用Composer 来安装PHPWord。

    composer require phpoffice/phpword

    如何使用

    自动加载

    安装好phpword后,新建一个php文档,引入autoload.php。

    require 'vendor/autoload.php';

    实例化

    实例化并新增一个空白页。

    $phpWord = new \PhpOffice\PhpWord\PhpWord();

    $section = $phpWord->addSection();

    添加文字内容

    向空白页添加文字内容,可以设置文字的样式,包括字体、颜色、字号、粗体等等。

    $fontStyle = [

    'name' => 'Microsoft Yahei UI',

    'size' => 20,

    'color' => '#ff6600',

    'bold' => true

    ];

    $textrun = $section->addTextRun();

    $textrun->addText('你好,这是生成的Word文档。 ', $fontStyle);

    链接

    可以为Word文档中的文字添加用于点击跳转的链接。

    $section->addLink('https://www.helloweba.net', '欢迎访问Helloweba', array('color' => '0000FF', 'underline' => \PhpOffice\PhpWord\Style\Font::UNDERLINE_SINGLE));

    $section->addTextBreak();

    图片

    可以在word中添加图片,如图片地址logo.png,尺寸为64x64。图片源也可以是远程图片。

    $section->addImage('logo.png', array('width'=>64, 'height'=>64));

    页眉

    为Word文档添加页眉。

    $header = $section->addHeader();

    $header->addText('Subsequent pages in Section 1 will Have this!');

    页脚

    为word文档添加页脚,页脚内容是页码,格式居中。

    $footer = $section->addFooter();

    $footer->addPreserveText('Page {PAGE} of {NUMPAGES}.', null, array('alignment' => \PhpOffice\PhpWord\SimpleType\Jc::CENTER));

    增加一页

    继续增加一页,加入内容。

    $section = $phpWord->addSection();

    $section->addText('新的一页.');

    表格

    增加一个基础表格,可以设置表格的样式。

    $header = array('size' => 16, 'bold' => true);

    $rows = 10;

    $cols = 5;

    $section->addText('Basic table', $header);

    $table = $section->addTable();

    for ($r = 1; $r <= 8; $r++) {

    $table->addRow();

    for ($c = 1; $c <= 5; $c++) {

    $table->addCell(1750)->addText("Row {$r}, Cell {$c}");

    }

    }

    生成Word文档

    如果你想生成word文档放在服务器上,可以使用:

    $objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');

    $objWriter->save('hellwoeba.docx');

    下载Word文档

    如果你想直接下载Word文档,不在服务器上保存的话,可以使用:

    $file = 'test.docx';

    header("Content-Description: File Transfer");

    header('Content-Disposition: attachment; filename="' . $file . '"');

    header('Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document');

    header('Content-Transfer-Encoding: binary');

    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

    header('Expires: 0');

    $xmlWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');

    $xmlWriter->save("php://output");

    上述代码会强制浏览器下载为word文档。

    希望本文所述对大家PHP程序设计有所帮助。

    展开全文
  • 其实一个Excel表格不仅具有文本数据信息,其还包含了大量的表格、字体格式信息。但这些信息一般用处不大,为了专栏文章的完整性,这里还是简单的介绍一下。 本篇主要内容: 1、获取单元格内公式、 ...

    前言:

    在上一篇的博客里,介绍了如何读取Excel表格中的数据。

    其实一个Excel表格不仅具有文本数据信息,其还包含了大量的表格、字体格式信息。因为这些信息一般用处不大,所以在这里就简单的介绍一下了。

    本篇主要内容:

    1、获取单元格内超文本信息、合并单元格信息等;
    2、获取单元格格式信息;
    3、获取字体格式信息;
    4、获取行、列格式信息。

    1、获取超文本信息等

    用于测试的表格文件为test02.xls,文件截图:
    在这里插入图片描述
    获取单元格内超文本信息:

    # 导入模块
    import xlrd
    
    # 获取工作簿对象
    work_book = xlrd.open_workbook('test02.xls',formatting_info = True)
    # 按索引获取sheet对象
    sheet_1 = work_book.sheet_by_index(0)
    # 获取sheet表内超链接文本对象
    print(sheet_1.hyperlink_list)
    # ------运行结果------
    # [<xlrd.sheet.Hyperlink object at 0x0000019B5A064358>]
    # ------运行结果------
    

    注:打开Excel文件时默认是不读取文件格式的,也就是 formatting_info 默认值为 False
    想要获取 Excel 文件格式信息,需把 formatting_info 值改为 True,这样主要是为了降低内存消耗。

    获取超文本对象内容,单元格信息:

    # 获取sheet表内超链接对象单元格位置、对象
    print(sheet_1.hyperlink_map)
    # ------运行结果------
    # {(11, 2): <xlrd.sheet.Hyperlink object at 0x000001E5824B4EF0>}
    # ------运行结果------
    
    # 获取超链接文件url信息
    hyperlink_obj = sheet_1.hyperlink_list[0]
    print(hyperlink_obj.url_or_path)
    # ------运行结果------
    # https://www.sogou.com/
    # ------运行结果------
    

    获取合并单元格信息:

    # 获取合并单元格信息
    print(sheet_1.merged_cells)
    # ------运行结果------
    # [(12, 13, 2, 6), (1, 2, 1, 6)]
    # ------运行结果------
    

    注:这个获得的单元格合并信息有点奇怪:
    如 (1, 2, 1, 6) 信息:第一个 1 应该是第1行(从0开始计数),2 就不是指合并到第 2 行,而是2-1 还是合并行数为:1;
    同理,第三个 1 指的是 第 1 列,第四个6指的是 6-1 合并列数为 5 列。
    大概是这么理解的吧…

    一种简单的按行读取sheet表内所有数据方法:

    上一篇博客里介绍了按行、按列读取Excel文件sheet表内数据的方法,其实这里还有一种非常简单的按行读取sheet表内数据的方法:

    # 简单按行获取sheet表对象所有值
    print(sheet_1._cell_values)
    # ------运行结果------
    # [['', '', '', '', '', ''], ['', 'CSDN 博客数据', '', '', '', ''], 
    # ['', '日期', '访问量', '评论数', '收藏数', '粉丝数'], ['', 43974.0, 17.0, 0.0, 0.0, 0.0], 
    # ['', 43975.0, 36.0, 0.0, 0.0, 0.0], ['', 43976.0, 22.0, 0.0, 0.0, 0.0], 
    # ['', 43977.0, 20.0, 0.0, 0.0, 0.0], ['', 43978.0, 18.0, 0.0, 0.0, 0.0], 
    # ['', 43979.0, 223.0, 0.0, 0.0, 0.0], ['', 43980.0, 1187.0, 0.0, 0.0, 0.0], 
    # ['', 43981.0, 854.0, 0.0, 0.0, 1.0], ['', '总计:', 2377.0, 0.0, 0.0, 1.0], 
    # ['', '数据来源:', 'https://www.sogou.com/', '', '', '']]
    # ------运行结果------
    

    大家可以和上篇博客里的按行读取sheet表内数据方法比较一下。

    2、获取单元格格式信息

    想要获取sheet表内单元格信息,需先获取Excel文件所有的单元格格式列表

    # 获取Excel表格所有单元格格式对象列表
    xf_list = work_book.xf_list
    

    即:在读取Excel文件的时候,当ormatting_info 值设置为 True 时,xlrd 模块已经为我们将Excel文件里所有单元格信息保存在 xf_list 列表中了。

    再在sheet对象里获取单元格格式索引,按索引获取单元格格式对象:

    # 获取单元格格式对象索引
    cell_xf_index = sheet_1.cell_xf_index(2,1)
    print(cell_xf_index)  # 打印结果:69
    # 按索引值获取单元格格式对象
    cell_xf = xf_list[cell_xf_index]
    print(cell_xf)
    # ------运行结果------
    # <xlrd.formatting.XF object at 0x000001BAF6C646A0>
    # ------运行结果------
    

    这里选取的单元格是:
    在这里插入图片描述

    xlrd 里的单元格格式对象 XF(),和xlwt 模块中单元格格式对象类似,包含了大量的格式信息。(这里大家也可以回顾一下,前面关于 xlwt 将数据写入Excel表格 :单元格格式、字体格式、对齐方式、边框及填充设置等 的文章。)
    xlrd 和 xlwt模块在许多Excel表格处理方式上比较类似,只不过一个是读,一个是写。

    XF() 类中包含了单元格格式的四个信息:

    1、protection:单元格保护信息;
    2、background:单元格背景颜色信息;
    3、alignment:单元格对齐信息;
    4、border:单元格边框信息。

    protection:单元格保护信息,对应xlrd中formatting里的XFProtection类。

    # 有两个属性:cell_locked(单元格锁定),formula_hidden(公式隐藏)
    protection = cell_xf.protection
    print(protection.cell_locked,',',protection.formula_hidden,)
    # ------运行结果------
    # 1 , 0
    # ------运行结果------
    

    background:背景颜色信息 XFBackground 类

    background = cell_xf.background
    # 有三个属性:fill_pattern,background_colour_index,pattern_colour_index
    print(background.fill_pattern,
          ',',background.background_colour_index,
          ',',background.pattern_colour_index)
    # ------运行结果------
    # 1 , 64 , 13
    # ------运行结果------
    

    注:相应属性对应 xlwt 模块里单元格格式设置时的一些参数,这里就不重复介绍了。

    alignment:对齐信息,XFAlignment 类

    # 有七个属性:hor_align,vert_align,rotation,text_wrapped,indent_level
    # shrink_to_fit,text_direction
    alignment = cell_xf.alignment
    print(alignment.hor_align,',',
          alignment.vert_align,',',
          alignment.rotation,',',
          alignment.text_wrapped,',',
          alignment.indent_level,',',
          alignment.shrink_to_fit,',',
          alignment.text_direction)
    
    # ------运行结果------
    # 2 , 1 , 0 , 0 , 0 , 0 , 0
    # ------运行结果------
    

    border:边框信息,XFBorder类

    # border 边框信息 XFBorder类
    # 有十二个属性:top_colour_index,bottom_colour_index,left_colour_index
    # right_colour_index,diag_colour_index,top_line_style,bottom_line_style,
    # left_line_style,right_line_style,diag_line_style,diag_down,diag_up
    border = cell_xf.border
    print(border.top_colour_index,',',border.bottom_colour_index,',',
          border.left_colour_index,',',border.right_colour_index,',',
          border.diag_colour_index,',',border.top_line_style,',',
          border.bottom_line_style,',',border.left_line_style,',',
          border.right_line_style,',',border.diag_line_style,',',
          border.diag_down,',',border.diag_up)
    # ------运行结果------
    # 64 , 64 , 64 , 64 , 0 , 1 , 1 , 2 , 1 , 0 , 0 , 0
    # ------运行结果------
    

    3、获取单元格字体信息

    这里和单元格格式类似,也需先获取 Excel 文件里所有的字体对象列表。

    # 先获取Excel对象所有的字体对象列表
    font_list = work_book.font_list
    

    注意:获取单元格字体对象索引的方式,和前面不一样,其索引是在单元格格式对象属性里:

    # 字体的font对象索引从xf对象里获取
    font_index = cell_xf.font_index
    print(font_index) # 打印结果 24
    # 在Excel文件所有字体对象列表中获取字体对象
    font = font_list[font_index]
    

    字体对象信息在xlrd模块里formatting.py 文件中的 Font() 类中。
    有以下属性可获取:bold,character_set,colour_index,escapement,
    family,font_index,height,italic,name,struck_out,underline_type,underlined,weight,outline,shadow。

    注:在 xlwt 字体格式设置的介绍里,也讲到了上面的大部分属性的意思…

    print(font.bold,',',font.character_set,',',font.colour_index,',',
          font.escapement,',',font.family,',',font.font_index,',',
          font.height,',',font.italic,',',font.name,',',
          font.struck_out,',',font.underline_type,',',font.underlined,',',
          font.weight,',',font.outline,',',font.shadow)
    
    # ------运行结果------
    # 1 , 134 , 8 , 0 , 3 , 24 , 220 , 0 , 楷体 , 0 , 0 , 0 , 700 , 0 , 0
    # ------运行结果------
    

    4、获取行、列对象格式信息:

    获取行对象格式信息,先获取sheet表行格式信息对象映射:

    # 获取sheet表对象行信息映射
    print(sheet_1.rowinfo_map)
    # ------运行结果------
    # {0: <xlrd.sheet.Rowinfo object at 0x00000172E7C69EA0>,
    # 1: <xlrd.sheet.Rowinfo object at 0x00000172E7C72158>,
    # 2: <xlrd.sheet.Rowinfo object at 0x00000172E7C721E0>,
    # 3: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 4: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 5: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 6: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 7: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 8: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 9: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 10: <xlrd.sheet.Rowinfo object at 0x00000172E7C72268>,
    # 11: <xlrd.sheet.Rowinfo object at 0x00000172E7C69EA0>}
    # ------运行结果------
    

    可获取的行格式信息有:

    '''
    "height",
    "has_default_height",
    "outline_level",
    "outline_group_starts_ends",
    "hidden",
    "height_mismatch",
    "has_default_xf_index",
    "xf_index",
    "additional_space_above",
    "additional_space_below"
    '''
    

    获取第 1 行格式信息:

    print(row_0_info.height,',',row_0_info.has_default_height,',',
    row_0_info.outline_level,',',row_0_info.outline_group_starts_ends,',',
    row_0_info.hidden,',',row_0_info.height_mismatch,',',
    row_0_info.has_default_xf_index,',',row_0_info.xf_index,',',
    row_0_info.additional_space_above,',',row_0_info.additional_space_below)
    
    # ------运行结果------
    # 399 , 0 , 0 , 0 , 0 , 1 , 0 , -1 , 0 , 0
    # ------运行结果------
    

    获取列格式对象信息:

    注:xlrd模块获取列信息接口,好像也有问题…,结果只有一列…

    print(sheet_1.colinfo_map)
    # 打印结果
    # {1: <xlrd.sheet.Colinfo object at 0x000002806C8D4C18>}
    

    结尾:

    以上就是本篇博客的全部内容了,感谢阅读。

    到这里关于 Python 第三方模块 xlwt(写)、xlrd(读)对Excel表格的操作讲解基础内容,基本上算是讲完了。后面准备结合三到五个实例来综合讲解一下,大家在实际使用Python操作Excel表格时,有什么问题或想法的话,可留言或私信我,一起讨论交流一下。

    【Python与Office】专栏

    该专栏会对 Python 的第三方模块,如:xlwt,xlrd,python-docx等,操作 Office 办公软件(Word Excel PPT)的方法进行详细讲解。同时也会搭配一些实例演练,一方面强化知识点的理解与运用,另一方面也希望能起到,引导读者进行思考:如何用 python 提高 offic 办公软件办公效率的作用。

    感兴趣的朋友,可以点个 关注收藏 。如在博客中遇到任何问题或想法,可留言或私信。

    创作不易,你的支持是我最大的动力,感谢 !

    展开全文
  • Python xlwt 模块 Excel表格 基础 3:单元格格式、字体格式、对齐方式、边框及填充等前言:1、数据类型设置2、字体设置3、单元格对齐方式4、单元格边框设置5、填充设置6、单元格保护最后: 前言: 前面两节博客介绍...
  • word使用技巧大全

    热门讨论 2011-03-18 20:37:53
    使Word中的字体变清晰Word文档中使用“仿宋”字体很淡,可按以下方法使字体更清晰: 84 四十一、word和execl使用技巧 84 1、Word下如何使用着重号 84 2、让Word表格快速一分为二 84 3、Word中巧用Alt键 85 4、巧用...
  • 解决方法:首先选择所有要打印的文件,这里可以是word、excel、powerpoint文件然后在所选择的文件上,...word批量打印能批量调格式么推荐使用“Office批量打印精灵”——Office文档批量打印软件,支持Word、Excel、...
  • POI操作Word文档工具

    2021-02-20 11:40:10
    HWPF(可怕字处理器格式):用于读取和写入MS-Word的.doc扩展文件。 XWPF(XML字处理器格式):用于读取和写入MS-Word的扩展文件 .docx 。 HSLF(可怕的幻灯片布局格式):用于阅读,创建和编辑PowerPoint演示文稿。 HDGF...
  • word如何全选所有内容

    千次阅读 2021-01-14 13:48:41
    1、即时取消 Word 的后台打印当我们刚刚编辑完一篇文档按了打印命令后,后来又不想打印当前的文档了,那么怎样才能即时取消后台打印任务呢?一般来说,大家在发出打印任务后,程序会自动将打印任务设置为后台打印,...
  • Word自动排版软件

    2020-12-31 01:00:16
    软件开启Word自动排版新时代,Word自动排版软件将为您节省海量人工!新版本发布(无需注册,默认账号直接登陆),使用Word自动排版软件您将十倍以上提升排版效率和准确性,为您节省海量时间(为企业用户提供深度定制服务...
  • 1.下面哪个选项不是“页面设置”对话框中的选项卡:A 页边距 B 纸型 C 版式 D 对齐方式答案:D2.下列有关页眉和页脚的说法中不正确的有:A 只要将“奇偶页不同”这个复选框选中,就可在文档的奇、偶页...在Word 2003中...
  • 2016-07-16 21:02管爱娟 客户经理在word中打开“绘图”工具栏。一般word中都是默认“绘图”工具栏开启。如果开启了“绘图”工具栏,会在word左下角有如下图所示的结果。如果没有开启“绘图”工具栏,就需要按照如下...
  • C# VSTO(WORD) 参数设置

    2019-09-25 14:18:59
    word文档工程变量的 //合并单元格 table.Cell(2, 2).Merge(table.Cell(2, 3)); //单元格分离 object Rownum = 2; object Columnnum = 2; table.Cell(2, 2).Split(ref Rownum, ref Columnnum)...
  • 一、Word学习笔记目录导言样式+自动化 思想样式自动化1 导言1.1 所见即所得 与 所见即所想文本编辑器的表现形式一般分为两类,一是word类的所见即所得,另一类是latex 和 markdwown 类的所见即所想。所见即所得 看见...
  • 推荐 Word、EXCEL必备工具箱

    千次阅读 2019-09-20 09:41:36
    8、处理工具→处理→新增功能“Word转Excel”,用于最大程度保留word原有格式,直接将Word文档转excel文档。 9、“查找功能”改进:能够不区分字符大小写进行EXCEL必备工具箱的功能查找,更加方便。 10、汇总工具...
  • 一、word文档表格操作、分页及换行 //合并单元格table.Cell(2, 2).Merge(table.Cell(2, 3)); //单元格分离 object Rownum = 2;object Columnnum = 2;table.Cell(2, 2).Split(ref Rownum, ref Columnnum); //...
  • 最近文档写得比较多,...在打印的电脑上重新排版简直是一件痛苦的事情,所以怎么样才能让word排版在不同电脑上保持一致呢?一、转成PDF。PDF的诞生就是为了在不同电脑保持排版一致,并且不让人随意编辑文档内容的,...
  • 在Windows环境下,以下哪些操作可以启动Word2003A 用鼠标左键依次单击“开始”→“程序”→“Microsoft Word 2003” B 用鼠标双击桌面上的“Microsoft Word2003”快捷图标。 C 用鼠标双击桌面上的“我的文档...
  • Microsoft Office Word 中的域用作文档中可能会改变的数据的占位符,并用于在邮件合并文档中创建套用信函和标签。这些种类的域也称为域代码,它们不同于那些用于输入信息的域类型,如在表单上。有关向文档中添加表单...
  • C#与Word文档的交互

    2021-03-08 17:02:44
    比如文字,图片,形状,段落,光标位置,字体格式,书签,页面,选择范围,查找/替换,剪贴板操作,响应事件等等,基本上能够在前台操作的功能,都能在类库中找到对应的接口。 Word软件COM接口定义了一套不变的...
  • 用 Python 操作 Word 文档

    千次阅读 2019-07-23 08:30:00
    图片来源于网络♚作者:贠云龙Blog:zhihu.com/people/yunlongyun本文主要讲解python中操作word的思路。一、Hello,world!使...
  • C#操作Word的超详细总结

    千次阅读 2020-02-17 14:31:27
    本文中用C#来操作Word,包括: 创建Word; 插入文字,选择文字,编辑文字的字号、粗细、...插入表格,格式化表格,往表格中插入数据; 保存Word,打印Word; 重新打开Word等。 Visual studio版本:Visual...
  • ie8生成word

    2021-06-19 10:54:11
    1. 兼容IE8 导出Wrod方法直接var word=new ActiveXObject("word.Application");word.visible=true;(这句不要就不显示word出来,后台处理)var doc=word.ActiveDcouemnt;doc.content.text="导出内容"doc.save(如果要...
  • word流程图连接线怎么画直

    千次阅读 2021-01-14 15:11:16
    7、在打开的“编辑‘艺术字’文字”对话框中,按下图输入文字和设置字体格式(图9),完成后单击“确定”,返回Word编辑窗口,艺术字被加入到矩形框中; 8、接下来回车换行,输入“毕业论文写作流程图”文字,并将其...
  • Word快捷键

    千次阅读 2013-11-16 14:34:34
    常用快捷键 快捷键 作用 Ctrl+Shift+Spacebar创建不间断空格 Ctrl+ -(连字符) 创建不间断连字符 Ctrl+B使字符变为粗体 Ctrl+I使字符变为斜体 Ctrl+U为字符添加下划线 ...Ctrl+Q 删除段落格式 Ctrl+Space
  • Word学习笔记分享

    千次阅读 多人点赞 2019-02-22 13:57:10
    第一章、Word 的常规排版 1-5 文字选择 Ctrl+鼠标选取——多选 Alt+鼠标选取——框选 1-11 文字效果 为文字添加填充与边框 1-13 字体其他效果 为字体添加着重号、删除线、上下标等效果 Ctrl+D ——打开字体选项栏 1-...
  • 单击“格式”按钮,打开“单元格格式”对话框,将“字体”的“颜色”设置为“红色”。 2.按“添加”按钮,并仿照上面的操作设置好其它条件(大于等于1500,字体设置为“蓝色”;小于1000,字体设置为“棕色”)。 3....
  • Java 添加Word页眉、页脚

    千次阅读 2019-06-12 17:20:51
    本篇文章将介绍通过java程序来添加Word页眉页脚的方法。鉴于在不同文档中,对页眉页脚的操作要求不同,文章将分别从以下几种情况来阐述: 1.添加页眉页脚 添加图片到页眉 添加文本到页眉 添加页码 2.设置奇偶页...
  • 计算机二级word试题

    2021-07-06 01:35:55
    计算机二级word试题 (95页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!25.9 积分Word试题1. 在考生文件夹下打开文档word, docx,按照要求完成下列操作并以该文件名 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,188
精华内容 1,675
关键字:

word锁定字体格式