精华内容
下载资源
问答
  • 批量给word文档添加页眉页脚软件是一款非常实用的文档小工具,批量给word文档添加页眉页脚软件可以批量给word文档稳定添加页眉页脚,目前仅支持docx格式。感兴趣的朋友千万不要错过了。 使用说明 1、输入页眉、...
  • 主要介绍了使用C#实现在word中插入页眉页脚的方法,是操作Word的常见方法,有一定的学习借鉴价值,需要的朋友可以参考下
  • Word文档批量添加页眉页脚 Word文档批量添加页眉页脚
  • java操作word文档,添加页眉文本,页眉图片,替换书签,水印 原模板截图: 生成后的文档效果截图: 第一步:引入maven <dependency> <groupId>spire.doc</groupId> <artifactId>spire....

    java操作word文档,添加页眉文本,页眉图片,替换书签,水印

    原模板截图:
    模板文档
    生成后的文档效果截图:
    生成后的文档

    第一步:引入maven

    <dependency>
        <groupId>spire.doc</groupId>
        <artifactId>spire.doc</artifactId>
        <version>2.6.2</version>
    </dependency>

    第二步:编写操作类,直接上代码,方法都有说明

    package com.example.poi_test.util;
    
    import com.spire.doc.*;
    import com.spire.doc.documents.*;
    import com.spire.doc.fields.DocPicture;
    import com.spire.doc.fields.TextRange;
    import lombok.Data;
    
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.util.Map;
    
    /**
     * @author ShenGuiSong
     * @create 2020-03-09 17:35
     */
    @Data
    public class WordUtil0309 {
    
        private Document doc = null;
    
    
        /**
         * 替换书签
         * @param bookMarks
         */
        public void replaceBookMark(Map<String,String> bookMarks){
            //定位到书签"SimpleBookmark"
            BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(doc);
            if(bookMarks==null || bookMarks.size()<1) return;
            for(Map.Entry<String,String> entry:bookMarks.entrySet()){
                String key=entry.getKey();
                bookmarkNavigator.moveToBookmark(key);
                String value=entry.getValue();
                //使用文本替换原书签的内容, false表示不保留原来的格式
                bookmarkNavigator.replaceBookmarkContent(value, false);
            }
    
        }
    
        /**
         * 设置页边距
         * @param top
         * @param bottom
         * @param left
         * @param right
         */
        public void setMargin(Float top,Float bottom,Float left,Float right){
            Section section = doc.getSections().get(0);
            //设置页边距
            if (top != null) {
                section.getPageSetup().getMargins().setTop(top);
            }
            if (bottom != null) {
                section.getPageSetup().getMargins().setBottom(bottom);
            }
            if (left != null) {
                section.getPageSetup().getMargins().setLeft(left);
            }
            if (right != null) {
                section.getPageSetup().getMargins().setRight(right);
            }
        }
    
        /**
         * 添加图片到页眉
         * @param pic               图片地址
         * @param horizontalOffset  水平偏移量
         * @param verticalPosition  垂直偏移量
         * @param align             图片依左右边距/上下边距对齐方式
         * @param picWidth          图片宽度
         * @param picHeigth         图片高度
         */
        public void addPicToHeader(String pic,Float horizontalOffset,Float verticalPosition,ShapeHorizontalAlignment align,Float picWidth,Float picHeigth ) {
            Section section = doc.getSections().get(0);
            HeaderFooter header = section.getHeadersFooters().getHeader();
            DocPicture headerPicture=null;
            //添加段落到页眉
            //插入图片到页眉的段落
            if(header.getLastParagraph()!=null){
                headerPicture=header.getFirstParagraph().appendPicture(pic);
            }else{
                headerPicture=header.addParagraph().appendPicture(pic);
            }
            headerPicture.setWidth(picWidth);
            headerPicture.setHeight( picHeigth );
            //设置图片水平位置
            if(horizontalOffset !=null && verticalPosition!=null ){
                headerPicture.setHorizontalPosition(horizontalOffset);
                headerPicture.setVerticalPosition(verticalPosition);
            }else{
                headerPicture.setHorizontalAlignment(align);
            }
            //设置文字环绕方式
            headerPicture.setTextWrappingStyle(TextWrappingStyle.Behind);
        }
    
    
        /**
         * 添加水印
         * @param pic
         * @param horizontalOffset
         * @param verticalPosition
         * @param picWidth
         * @param picHeigth
         */
        public void addWater(String pic,Float horizontalOffset,Float verticalPosition,Float picWidth,Float picHeigth ) {
            Section section = doc.getSections().get(0);
            HeaderFooter header = section.getHeadersFooters().getHeader();
            DocPicture headerPicture=null;
            if(header.getLastParagraph()!=null){
                headerPicture=header.getFirstParagraph().appendPicture(pic);
            }else{
                headerPicture=header.addParagraph().appendPicture(pic);
            }
            headerPicture.setWidth(picWidth);
            headerPicture.setHeight( picHeigth );
            //设置图片水平位置
            headerPicture.setHorizontalPosition(horizontalOffset);
            headerPicture.setVerticalPosition(verticalPosition);
            //设置文字环绕方式
            headerPicture.setTextWrappingStyle(TextWrappingStyle.Behind);
        }
    
        /**
         * 添加文本到页眉
         * @param headerContent
         */
        public void addTextToHeader(String headerContent) {
            Section section = doc.getSections().get(0);
            HeaderFooter header = section.getHeadersFooters().getHeader();
            //添加段落到页眉
            Paragraph headerParagraph = header.addParagraph();
            //添加文字到页眉的段落
            TextRange text = headerParagraph.appendText(headerContent);
            text.getCharacterFormat().setFontName("宋体");
            text.getCharacterFormat().setFontSize(11);
            headerParagraph.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
        }
    
    
    
        /**
         * 获取WordUtil工具类实例
         * @param filePath
         * @return
         */
        public static WordUtil0309 getInstance(String filePath){
            WordUtil0309 wordUtil=new WordUtil0309();
            try {
                //加载word示例文档
                wordUtil.doc = new Document();
                wordUtil.doc.loadFromFile(filePath);
            }catch (Exception e){
                System.out.println("读取文档失败");
                e.printStackTrace();
            }
            return wordUtil;
        }
    
    
    
        /**
         * 保存文档
         * @param outFilePath
         */
        public void saveDocument(String outFilePath){
            try {
                doc.saveToFile(outFilePath);
            } catch (Exception e) {
                System.out.println("保存文档失败");
                e.printStackTrace();
            }
        }
    
        /**
         * 关闭流
         */
        public void close(){
            try {
                if(doc!=null){
                    doc.close();
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    
    }
    

    第三步 .测试调用

    package com.example.poi_test.util;
    
    import com.spire.doc.Document;
    import com.spire.doc.Section;
    import com.spire.doc.ShapeHorizontalAlignment;
    import com.spire.doc.documents.BookmarksNavigator;
    import com.spire.doc.documents.Paragraph;
    import com.spire.doc.documents.TextBodyPart;
    import com.spire.doc.fields.TextRange;
    
    import java.text.SimpleDateFormat;
    import java.util.*;
    
    /**
     * @author ShenGuiSong
     * @create 2019-10-19 16:33
     */
    public class Test {
    
    
    
        /**
         * 测试
         * @param args
         */
        public static void main(String[] args) {
    	WordUtil0309wordUtil=WordUtil0309.getInstance("C:/template/boke.docx");
    
            Map<String,String> map=new HashMap<>();
            map.put("天气","晴");
            map.put("巡视主要工作内容","测试巡视主要工作内容");
            map.put("巡视施工管理人员情况","imya fdskfjsdkfjsdkfjsdf");
            map.put("日期","2020-03-09");
    
            wordUtil.replaceBookMark(map);
    
            wordUtil.setMargin(75f,null,null,null);
            //添加页头logo
            wordUtil.addPicToHeader("c:/template/logo1.jpg",-25f,8f,null,25f,25f);
            //项目名称
            wordUtil.addTextToHeader("测试项目名称");
            //页头二维码
            Float width=wordUtil.getDoc().getSections().get(0).getPageSetup().getClientWidth();
            wordUtil.addPicToHeader("c:/template/qr.jpg",width-50f,-20f,null,60f,60f);
    
            //添加水印
            wordUtil.addWater("c:/template/water1.jpg",50f,100f,60f,60f);
    
            wordUtil.saveDocument("C:/template/0219/boke"+
                    new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()).substring(8,14)+".docx");
            wordUtil.close();
              }
    }
    
    展开全文
  • Java Poi Word 添加页眉文字和图片

    千次阅读 热门讨论 2019-08-11 11:03:58
    代码 public static void main( String[] args ) throws Exception { FileInputStream in = new FileInputStream( "C:/Users/Desktop/aaaab24.docx" ); OPCPackage open = OPCPackage.open( in );...

    代码

    	public static void main( String[] args ) throws Exception {
    		FileInputStream in = new FileInputStream( "C:/Users/Desktop/aaaab24.docx" );
    		OPCPackage open = OPCPackage.open( in );
    		XWPFDocument doc = new XWPFDocument( open );
    		createHeader( doc, "a公司", "aaaa" );
    	}
    	
    	public static void createHeader( XWPFDocument doc, String orgFullName, String logoFilePath ) throws Exception {
    		CTSectPr sectPr = doc.getDocument().getBody().addNewSectPr();
    		XWPFHeaderFooterPolicy headerFooterPolicy = new XWPFHeaderFooterPolicy( doc, sectPr );
    		XWPFHeader header = headerFooterPolicy.createHeader( headerFooterPolicy.DEFAULT );
    		XWPFParagraph paragraph = header.createParagraph();
    		paragraph.setAlignment( ParagraphAlignment.LEFT );
    		paragraph.setBorderBottom( Borders.THICK );
    		XWPFRun run = paragraph.createRun();
    		if( StringUtils.isNotEmpty( logoFilePath ) ) {
    			String imgFile = "C:\\Users\\Pictures\\GS\\1.jpg";
    			File file = new File( imgFile );
    			InputStream is = new FileInputStream( file );
    			XWPFPicture picture = run.addPicture( is, XWPFDocument.PICTURE_TYPE_JPEG, imgFile, Units.toEMU( 80 ), Units.toEMU( 45 ) );
    			String blipID = "";
    			for( XWPFPictureData picturedata : header.getAllPackagePictures() ) { // 这段必须有,不然打开的logo图片不显示
    				blipID = header.getRelationId( picturedata );
    				picture.getCTPicture().getBlipFill().getBlip().setEmbed( blipID );
    			}
    			run.addTab();
    			is.close();
    		}
    		run.setText( "你好" );
    		FileOutputStream fos = new FileOutputStream( "C:/Users/JYUAN/aaaab25.docx" );
    		doc.write( fos );
    		fos.close();
    		
    	}
    

    pom文件

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>wordtest</groupId>
        <artifactId>wordtest</artifactId>
        <version>1.0-SNAPSHOT</version>
    
        <repositories>
            <repository>
                <id>aliyun-repos</id>
                <name>Aliyun Repository</name>
                <url>http://maven.aliyun.com/nexus/content/groups/public</url>
            </repository>
             </repositories>
    
        <dependencies>
            <dependency>
                <groupId>commons-lang</groupId>
                <artifactId>commons-lang</artifactId>
                <version>2.4</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-math3</artifactId>
                <version>3.6.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.xmlbeans</groupId>
                <artifactId>xmlbeans</artifactId>
                <version>2.6.0</version>
            </dependency>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>1.10</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-collections4</artifactId>
                <version>4.0</version>
            </dependency>
            <dependency>
                <groupId>com.github.virtuald</groupId>
                <artifactId>curvesapi</artifactId>
                <version>1.04</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-ooxml</artifactId>
                <version>3.14</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>poi-scratchpad</artifactId>
                <version>3.14</version>
            </dependency>
            <dependency>
                <groupId>org.apache.poi</groupId>
                <artifactId>ooxml-schemas</artifactId>
                <version>1.0</version>
            </dependency>
        </dependencies>
    </project>
    

    链接: 示例代码.

    展开全文
  • Java 添加Word页眉、页脚

    千次阅读 2019-06-12 17:20:51
    1.添加页眉页脚 添加图片到页眉 添加文本到页眉 添加页码 2.设置奇偶页不同的页眉页脚 3.设置首页页眉页脚不同 4.不连续设置页码(即对不同章节的内容设置不同页码) 5.锁定页眉页脚(不可编辑页眉页脚) 6....

    本篇文章将介绍通过java程序来添加Word页眉页脚的方法。鉴于在不同文档中,对页眉页脚的操作要求不同,文章将分别从以下几种情况来阐述:

    1.添加页眉页脚

    • 添加图片到页眉
    • 添加文本到页眉
    • 添加页码

    2.设置奇偶页不同的页眉页脚

    3.设置首页页眉页脚不同

    4.不连续设置页码(即对不同章节的内容设置不同页码)

    5.锁定页眉页脚(不可编辑页眉页脚)

    6.删除页眉页脚

    • 删除全部页眉页脚
    • 删除首页页眉页脚

     

    使用工具:Free Spire.Doc for Java

    方法一:直接获取文件包里的jar文件,导入到程序(需要先下载文件包)。

    方法二:通过Maven导入到程序。

     

    【示例1】添加页眉页脚(文本、图片、页码)

    import com.spire.doc.*;
    import com.spire.doc.documents.*;
    import com.spire.doc.fields.DocPicture;
    import com.spire.doc.fields.TextRange;
    import java.awt.*;
    
    public class AddHeaderFooter {
        public static void main(String[]args){
            //加载需要添加页眉页脚的文档
            Document doc= new Document("test.docx");
            Section sec = doc.getSections().get(0);
    
            //调用方法添加页眉页脚
            AddHeaderFooter(sec);
    
            //保存文档
            doc.saveToFile("AddHeaderFooter.docx");
        }
        //自定义方法来添加图片、文字页眉及页码
        private static void AddHeaderFooter(Section sec){
            //加载图片添加到页眉,并设置图片在段落中的对齐方式
            HeaderFooter header = sec.getHeadersFooters().getHeader();
            Paragraph hpara= header.addParagraph();
            DocPicture pic =hpara.appendPicture("1.png");
            pic.setHorizontalAlignment(ShapeHorizontalAlignment.Left);
            pic.setVerticalOrigin(VerticalOrigin.Top_Margin_Area);
            pic.setVerticalAlignment(ShapeVerticalAlignment.Center);
            //添加文字到页眉,并设置字体、字号、字体加粗、对齐方式
            TextRange txt = hpara.appendText("青年时报");
            txt.getCharacterFormat().setUnderlineStyle(UnderlineStyle.None);
            txt.getCharacterFormat().setTextColor(Color.GRAY);
            txt.getCharacterFormat().setFontName("仿宋");
            txt.getCharacterFormat().setFontSize(12f);
            txt.getCharacterFormat().setBold(true);
            hpara.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
            //设置图片的文本环绕方式、页眉底部边线(粗细、间距)
            pic.setTextWrappingStyle(TextWrappingStyle.Behind);
            hpara.getFormat().getBorders().getBottom().setBorderType(BorderStyle.Single);
            hpara.getFormat().getBorders().getBottom().setLineWidth(0.5f);
            hpara.getFormat().getBorders().setSpace(2f);
    
            //添加页码到页脚,并设置页脚对齐方式,顶部边线粗细、间距
            HeaderFooter footer = sec.getHeadersFooters().getFooter();
            Paragraph fpara= footer.addParagraph();
            fpara.appendField("页码",FieldType.Field_Page);
            fpara.appendText("/");
            fpara.appendField("总页数",FieldType.Field_Num_Pages);
            fpara.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
            fpara.getFormat().getBorders().getTop().setBorderType(BorderStyle.Single);
            fpara.getFormat().getBorders().getTop().setLineWidth(1f);
            fpara.getFormat().getBorders().getTop().setSpace(2f);
        }
    }
    

    页眉页脚添加效果:

     

    【示例2】设置奇偶页页眉页脚不同

    import com.spire.doc.*;
    import com.spire.doc.documents.HorizontalAlignment;
    import com.spire.doc.documents.Paragraph;
    import com.spire.doc.fields.TextRange;
    
    import java.awt.*;
    
    public class HeaderFooterForOddAndEvenPages {
        public static void main(String[] args){
            //加载测试文档
            Document doc = new Document("test.docx");
            Section sec = doc.getSections().get(0);
    
            //设置奇偶页页眉页脚不同
            sec.getPageSetup().setDifferentOddAndEvenPagesHeaderFooter(true);
    
            //设置奇数页页眉页脚
            HeaderFooter oddheader = sec.getHeadersFooters().getOddHeader();
            Paragraph para1 = oddheader.addParagraph();
            TextRange textRange1 = para1.appendText("奇数页页眉");
            para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
            textRange1.getCharacterFormat().setTextColor(Color.ORANGE);
            textRange1.getCharacterFormat().setBold(true);
            HeaderFooter oddfooter = sec.getHeadersFooters().getFooter();
            Paragraph para2 = oddfooter.addParagraph();
            TextRange textRange2 = para2.appendText("奇数页页脚");
            para2.getFormat().setHorizontalAlignment(HorizontalAlignment.Left);
            textRange2.getCharacterFormat().setTextColor(Color.ORANGE);
            textRange2.getCharacterFormat().setBold(true);
    
            //设置偶数页页眉页脚
            HeaderFooter evenheader = sec.getHeadersFooters().getEvenHeader();
            Paragraph para3 = evenheader.addParagraph();
            TextRange textRange3 = para3.appendText("偶数页页眉");
            para3.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
            textRange3.getCharacterFormat().setTextColor(Color.BLUE);
            textRange3.getCharacterFormat().setBold(true);
            HeaderFooter evenfooter = sec.getHeadersFooters().getEvenFooter();
            Paragraph para4 = evenfooter.addParagraph();
            TextRange textRange4 = para4.appendText("偶数页页脚");
            para4.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
            textRange4.getCharacterFormat().setTextColor(Color.BLUE);
            textRange4.getCharacterFormat().setBold(true);
    
            //保存文档
            doc.saveToFile("result.docx",FileFormat.Docx_2010);
        }
    
    }
    
    奇偶数页眉页脚设置效果:

     

    【示例3】设置首页页眉页脚不同

    import com.spire.doc.*;
    import com.spire.doc.documents.HorizontalAlignment;
    import com.spire.doc.documents.Paragraph;
    import com.spire.doc.fields.TextRange;
    
    import java.awt.*;
    
    public class HeaderFooterDifferentFromFirstPage {
        public static void main(String[] args){
            //加载测试文的
            Document doc = new Document("test.docx");
            Section sec = doc.getSections().get(0);
    
            //设置首页页眉页脚不同
            sec.getPageSetup().setDifferentFirstPageHeaderFooter(true);
    
            //添加首页页眉页脚
            HeaderFooter firstpageheader = sec.getHeadersFooters().getFirstPageHeader();
            Paragraph para1 = firstpageheader.addParagraph();
            TextRange textRange1 = para1.appendText("首页页眉");
            para1.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
            textRange1.getCharacterFormat().setBold(true);
            textRange1.getCharacterFormat().setTextColor(Color.GREEN);
            HeaderFooter firstpagefooter = sec.getHeadersFooters().getFirstPageFooter();
            Paragraph para2 = firstpagefooter.addParagraph();
            TextRange textRange2 = para2.appendText("首页页脚");
            para2.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
            textRange2.getCharacterFormat().setBold(true);
            textRange2.getCharacterFormat().setTextColor(Color.GREEN);
    
    
            //添加页眉页脚到其他页面
            Paragraph para3 = sec.getHeadersFooters().getHeader().addParagraph();
            para3.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
            TextRange textRange3 = para3.appendText("非首页页眉");
            textRange3.getCharacterFormat().setBold(true);
            Paragraph para4 = sec.getHeadersFooters().getFooter().addParagraph();
            para4.getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
            TextRange textRange4 = para4.appendText("非首页页脚");
            textRange4.getCharacterFormat().setBold(true);
    
            //保存文档
            doc.saveToFile("result2.docx",FileFormat.Docx_2010);
        }
    }
    

    页眉页脚设置效果:

     

    【示例4】不连续设置页码

    import com.spire.doc.*;
    import com.spire.doc.documents.HorizontalAlignment;
    import com.spire.doc.documents.PageNumberStyle;
    import com.spire.doc.documents.Paragraph;
    
    public class DifferentPageNumber {
        public static void main(String[]args){
            //加载测试文档
            Document doc = new  Document("test.docx");
    
            //添加页码到第一节
            HeaderFooter footer= doc.getSections().get(0).getHeadersFooters().getFooter();
            Paragraph footerpara = footer.addParagraph();
            footerpara.appendField("Page Number",FieldType.Field_Page);
            footerpara.getFormat().setHorizontalAlignment(HorizontalAlignment.Right);
            //设置第一节页码数字格式为罗马数字
            doc.getSections().get(0).getPageSetup().setPageNumberStyle(PageNumberStyle.Roman_Lower);
    
            //设置第二节页码数字格式为阿拉伯数字
            doc.getSections().get(1).getPageSetup().setPageNumberStyle(PageNumberStyle.Arabic);
            //设置第二节页码从新开始编码,并设置起始页码数字
            doc.getSections().get(1).getPageSetup().setRestartPageNumbering(true);
            doc.getSections().get(1).getPageSetup().setPageStartingNumber(1);
    
            //保存文档
            doc.saveToFile("restartnumbering.docx",FileFormat.Docx_2010);
        }
    }
    

    页码设置效果:

     

    【示例5】锁定页眉页脚

    import com.spire.doc.*;
    
    public class LockHeaderFooter {
        public static void main(String[]args){
           //加载测试文档
            Document doc = new Document("sample.docx");
    
            //获取第一节
            Section sec = doc.getSections().get(0);
    
            //设置保护类型及密码
            doc.protect(ProtectionType.Allow_Only_Form_Fields,"123");
            sec.setProtectForm(false);
    
            //保存文档
            doc.saveToFile("LockHeaderFooter.docx",FileFormat.Docx_2010);
        }
    }
    

    锁定页眉页脚后,文档中除页眉页脚外其他内容可正常编辑。

     

    【示例6】删除页眉页脚

    1. 删除所有页眉页脚
    import com.spire.doc.*;
    
    public class DeleteAllHeaderFooter {
        public static void main(String[]args){
            //加载测试文档
            Document doc = new Document("sample.docx");
            //获取第一节
            Section sec = doc.getSections().get(0);
    
            //删除页眉
            sec.getHeadersFooters().getHeader().getChildObjects().clear();
    
            //删除页脚
            sec.getHeadersFooters().getFooter().getChildObjects().clear();
    
            //保存文档
            doc.saveToFile("DeleteAllHeaderFooter.docx");
        }
    }
    

    删除效果前后对比:

     

    2. 删除首页页眉页脚

    import com.spire.doc.*;
    
    public class DeleteHeaderFooterOfFirstPage {
        public static void main(String[]args){
            //加载测试文档
            Document doc = new Document("sample.docx");
            //获取第一节
            Section sec = doc.getSections().get(0);
    
            //设置首页页眉页脚不同
            sec.getPageSetup().setDifferentFirstPageHeaderFooter(true);
    
            //删除首页页眉页脚
            sec.getHeadersFooters().getFirstPageHeader().getChildObjects().clear();
            sec.getHeadersFooters().getFirstPageFooter().getChildObjects().clear();
    
            //保存文档
            doc.saveToFile("DeleteHeaderFooterOfFirstPage.docx",FileFormat.Docx_2010);
        }
    }
    

    首页页眉页脚删除效果:

    (本文完)

    转载请注明出处!!

     

    展开全文
  • 在百度上和goole都没找到我想要的东西,看了他的接口...// POI方案为word添加页眉 public static void main(String[] args) throws IOException { File is = new File("C:\\upload\\20190510_141809278_Test.doc...

    在百度上和goole都没找到我想要的东西,看了他的接口注释他的官方文档之后才得到了这个解决方案

    //    POI方案为word添加页眉
        public static void main(String[] args) throws IOException {
            File is = new File("C:\\upload\\20190510_141809278_Test.docx");//文件路径
            FileInputStream fis = new FileInputStream(is);
            XWPFDocument docx = new XWPFDocument(fis);//文档对象
            CTP ctp = CTP.Factory.newInstance();
            XWPFParagraph paragraph = new XWPFParagraph(ctp, docx);//段落对象
            ctp.addNewR().addNewT().setStringValue("华丽的测试页眉2019051488888888");//设置页眉参数
            ctp.addNewR().addNewT().setSpace(SpaceAttribute.Space.PRESERVE);
            CTSectPr sectPr = docx.getDocument().getBody().isSetSectPr() ? docx.getDocument().getBody().getSectPr() : docx.getDocument().getBody().addNewSectPr();
            XWPFHeaderFooterPolicy policy = new XWPFHeaderFooterPolicy(docx, sectPr);
            XWPFHeader header = policy.createHeader(STHdrFtr.DEFAULT, new XWPFParagraph[] { paragraph });
            header.setXWPFDocument(docx);
            OutputStream os = new FileOutputStream("d:\\Test.docx");
            docx.write(os);//输出到本地
        }
    

    再贴一个获取word页眉的方案

    //    POI 方案获取word页眉
        public static void main(String[] args) throws IOException {
            File is = new File("d:\\Test.docx");//文件路径
            FileInputStream fis = new FileInputStream(is);
            XWPFDocument docx = new XWPFDocument(fis);
            List<XWPFHeader> headerList = docx.getHeaderList();
            for (XWPFHeader xwpfHeader: headerList){
                System.out.println(xwpfHeader.getText());//页眉
            }
        }
    
    展开全文
  • Python和java如何给word添加页眉和页脚

    千次阅读 2020-06-08 11:07:56
    java使用POI给word添加页眉是存在bug的,我试了好多次,没成功过。然后我使用的是e-iceblue提供的jar包, API链接:https://www.e-iceblue.cn/spiredocforjavatext/extract-text-and-images-from-word-in-java.html ...
  • POI导出Word包含页眉 页脚的设置,标题的设置以及显示显示设置,包括POI操作Word完整的jar包
  • 批量修改页眉页脚,非常实用,修改的时候可以添加图片,
  • Headers and footers are useful for adding things such as page numbers, dates, file names, and disclaimers to ... Word allows you to add headers and footers with built-in, ready-made layouts or ...
  • word批量增加页脚页眉

    2013-07-03 12:46:00
    word批量增加页脚页眉 绝对能用。支持批量添加
  • 使用Aspose 为word添加页眉 前面看了他的源代码没什么注释都不知道这个工具怎么用,后面去查了他的官方文档之后才知道怎么用的。 官方文档地址:...
  • C# 添加Word页眉、页脚

    2018-04-09 09:45:42
    Word文档中,我们可以通过添加页眉、页脚的方式来丰富文档内容。添加页眉、页脚时,可以添加时间、日期、文档标题,文档引用信息、页码、内容解释、图片/LOGO等多种图文信息。同时也可根据需要调整文字或图片在...
  • Doc批量添加页眉页脚

    2019-12-29 19:23:37
    Doc批量添加页眉页脚,省去手工挨个操作文件的频繁重复动作和痛苦。简直是神器。 批量操作神奇拿走不谢。
  • VB-Word添加页眉页脚

    千次阅读 2018-06-04 09:08:46
    Word文档自定义宏添加页眉页脚标识:'给指定目录下Word文件添加文档标识Sub WordFlag() Dim FolderPicker As Object Dim FilePath As String Set FolderPicker = Application.FileDialog...
  • 批量添加 Word 文档页眉页脚的源代码。开发环境:Visula Studio 2005 + O2003PIA.MSI(Office 2003 库,压缩包中已经附带)。
  • I was given a task of adding headers and footers to printable HTML files.To be more clear :I wish to be able to view the content of those files in Microsoft Word and to have a header and a footer disp...
  • Word文档中,我们可以通过添加页眉、页脚的方式来丰富文档内容。添加页眉、页脚时,可以添加时间、日期、文档标题,文档引用信息、页码、内容解释、图片/LOGO等多种图文信息。同时也可根据需要调整文字或图片在...
  • 本demo用C# 实现了了word excel visio 添加页眉页脚和内容,其中word 添加了页脚,excel添加了首行内容,visio 添加了一个矩形容器 并设置了透明背景,增加了指定字号的文字
  • 希望通过调用模块生成预定格式的文件,word本身自带的模板使用不太方便,而日常学习,工作中特别是针对毕业论文来说对文档格式要求非常高,小编在此就通过对python-docx中标题与其页眉添加学习,向大家分享。...
  • word:从指定页添加页眉内容

    千次阅读 2019-04-18 11:11:05
    step#1 step#2 取消链接到前一节
  • word添加页眉页脚

    2011-04-02 11:03:03
    利用vc++ 在word添加页眉页脚 不用直接在word中插入页眉页脚
  • word 很经典的页眉 页脚添加方法 写论文必备
  • 主要为大家详细介绍了C#如何给word文档添加水印的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • Headers and footers are very useful for adding relative information such as page numbers, company name and logo to Word documents. In this article, we’ll introduce how to add headers an...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,416
精华内容 3,366
关键字:

word正文添加页眉