头歌 | WPS文档基本操作

若未出现预期结果可私信我答疑
我是头歌闯关王涉猎头歌7千多关,如有其他关卡也可私信我

2025年4月9日

第1关:新建WPS文档和保存文档

  1. 在本地创建一个1.sh,内容写入
    echo '我的第一个WPS文档.docx创建成功'
    
  2. 点击工具栏
    请添加图片描述
  3. 点击上传文件把刚刚创建的1.sh上传
    请添加图片描述
  4. 点击图形化
    请添加图片描述
  5. 点击workspace>userfiles, 复制上传的文件1.sh
  6. 返回上一级,到myshixun>src,删除原来1.sh, 把新的粘贴上去
  7. 接下来测评即可

第2关:插入和编辑WPS文档

  1. 在本地创建一个2.sh,内容写入
    echo '个人简历.docx创建成功
    直线一:白色
    直线二:白色
    图片:创建成功
    艺术字:宋体 58 橙色
    文本框:宋体 18 黑色 上下型
    文本框旋转角度:0.0'
    
  2. 点击工具栏
    请添加图片描述
  3. 点击上传文件把刚刚创建的2.sh上传
    请添加图片描述
  4. 点击图形化
    请添加图片描述
  5. 点击workspace>userfiles, 复制上传的文件2.sh
  6. 返回上一级,到myshixun>src,删除原来2.sh, 把新的粘贴上去
  7. 接下来测评即可

第3关:输入和编辑文本操作

  1. 在本地创建一个UtilDocx.java,内容写入
    echo 'import com.spire.doc.Document;
    import com.spire.doc.DocumentObject;
    import com.spire.doc.Section;
    import com.spire.doc.collections.DocumentObjectCollection;
    import com.spire.doc.collections.ParagraphCollection;
    import com.spire.doc.collections.SectionCollection;
    import com.spire.doc.collections.TextBoxCollection;
    import com.spire.doc.documents.Paragraph;
    import com.spire.doc.documents.ShapeType;
    import com.spire.doc.documents.TextWrappingStyle;
    import com.spire.doc.fields.DocPicture;
    import com.spire.doc.fields.ShapeObject;
    import com.spire.doc.fields.TextBox;
    import com.spire.doc.fields.TextRange;
    import com.spire.doc.formatting.CharacterFormat;
    import com.spire.doc.formatting.ParagraphFormat;
    
    import java.awt.*;
    import java.io.File;
    
    public class UtilDocx {
        //获取对象
        Document doc;
        SectionCollection sections;
        Section sec;
        ParagraphCollection paras;
        Paragraph para;
        DocumentObjectCollection objs;
        DocumentObject obj;
    
        //辅助变量
        boolean isExist = true;
    
        //构造函数
        public UtilDocx(String file) {
            String path = "/data/workspace/myshixun/";
            //String path = "../";
            String fullfile = path + file;
            File f = new File(fullfile);
            if (!f.exists()){
                System.out.println(file + "未创建成功");
                isExist = false;
                return;
            }
            System.out.println(file + "创建成功");
            doc = new Document();
            doc.loadFromFile(fullfile);
            sections = doc.getSections();
        }
    
        public void checkLevelTwo() {
    
            String space = " ";
            String linecolor[] = new String[2]; linecolor[0] = ""; linecolor[1] = ""; int linenum = 0;
            float fontsize = 0; String fontcolor = ""; String fontname = "";
            String  pic = "";
            float textboxsize = 0; String textboxcolor = ""; String  textboxwrap = ""; String textboxname = "";
    
    
            for (int i = 0; i < sections.getCount(); i++){
                sec = sections.get(i);
                paras = sec.getParagraphs();
                for (int j = 0; j < paras.getCount(); j++){
                    para = paras.get(j);
                    objs = para.getChildObjects();
                    for (int n = 0; n < objs.getCount(); n++){
                        obj = objs.get(n);
    //                    System.out.println(obj.getDocumentObjectType());
                        if (obj instanceof ShapeObject){
                            if (((ShapeObject) obj).getShapeType() == ShapeType.Line){
                                if(linenum > 1)
                                    break;
                                linecolor[linenum] = "非白色";
                                // System.out.print(((ShapeObject) obj).getStrokeColor());
                                if (((ShapeObject) obj).getStrokeColor().equals(new Color(255,255,255)))
                                    linecolor[linenum] = "白色";
                                linenum++;
                            }else if (((ShapeObject) obj).getShapeType() == ShapeType.Image)
                                pic = "创建成功";
    //                        else if (((ShapeObject) obj).getShapeType() == ShapeType.Text_Box)
    //                            System.out.println(((TextBox)obj).getCharacterFormat().getFontName());
                        }
                    }
                }
            }
            TextBoxCollection tboxs = doc.getTextBoxes();
            TextBox tbox;
            // 文本框旋转角度
            double rotation = 0.0;
            //System.out.print(tboxs.getCount());
            for (int i = 0; i < tboxs.getCount(); i++){
                tbox = tboxs.get(i);
                for (Object object:tbox.getBody().getChildObjects())
                {
                    //判定是否为文本段落
                    // System.out.println(tbox.getBody().getChildObjects().get(0).getDocumentObjectType());
                    if(object instanceof Paragraph)
                    {
    
                        //获取段落中的文本
                        String text = ((Paragraph) object).getText();
                        //System.out.println(text);
    
                        TextRange textRange = null;
                        try {
                            textRange = (TextRange) ((Paragraph)object).getChildObjects().get(0);
                        } catch (Exception IndexOutOfBoundsExceptio) {
                            // System.out.println("您的索引越界了,请重新新建此文档!");
                            return ;
                        }
                        // textRange.getText();
    
                        // 艺术字
                        if (textRange.getCharacterFormat().getFontSize() == 58){
                            fontsize = 58;
                            // System.out.println(tbox.getRotation());
                            // System.out.println(1)
                            fontname = textRange.getCharacterFormat().getFontName();
                            // System.out.print(textRange.getCharacterFormat().getTextColor());
                            if (textRange.getCharacterFormat().getTextColor().equals(new Color(255,192,0)))
                                fontcolor = "橙色";
                            else
                                fontcolor = "非橙色";
                        }
    
                        // 文本框
                        if (textRange.getCharacterFormat().getFontSize() == 18){
                            if (tbox.getFormat().getTextWrappingStyle() == TextWrappingStyle.Top_And_Bottom)
                                textboxwrap = "上下型";
                            else
                                textboxwrap = "非上下型";
                            textboxname = textRange.getCharacterFormat().getFontName();
                            rotation = tbox.getRotation();
                            textboxsize = 18;
                            if (textRange.getCharacterFormat().getTextColor().equals(Color.BLACK))
                                textboxcolor = "黑色";
                            else{
                                textboxcolor = "黑色";
                            }
    
                        }
    
    
                    }
                }
    
    
            }
            System.out.println("直线一:" + linecolor[0]);
            System.out.println("直线二:" + linecolor[1]);
            System.out.println("图片:" + pic);
            System.out.println("艺术字:" + fontname + space + (int)fontsize  + space + fontcolor );
            System.out.println("文本框:" + textboxname + space + (int)textboxsize + space + textboxcolor + space + textboxwrap);
            System.out.println("文本框旋转角度:"+rotation);
    
    
    
        }
    
    
    
        public void checkThree(){
    
            String r = "";
            TextRange textRange;
            sec = sections.get(0);
            paras = sec.getParagraphs();
            System.out.println("自荐信共" + (paras.getCount() - 1) + "段(不含标题)");
            for (int j = 0; j < paras.getCount(); j++) {
                para = paras.get(j);
                r = "";
                if (j == 0){
                    r += "标题:";
                    textRange = (TextRange) para.getChildObjects().get(0);
                    ParagraphFormat pf = para.getFormat();
                    CharacterFormat tf = textRange.getCharacterFormat();
                    r += tf.getFontName() + " " + tf.getFontSize() + "号 文字间距加宽" + tf.getCharacterSpacing();
                    r += " 对齐:" + pf.getHorizontalAlignment() + " 段间距前" + pf.getBeforeSpacing() + "后" + pf.getAfterSpacing();
    //                System.out.println(textRange.getCharacterFormat().getFontSize());
    //                System.out.println(textRange.getCharacterFormat().getFontName());
    //                System.out.println(textRange.getCharacterFormat().getCharacterSpacing());
    //                System.out.println(para.getFormat().getHorizontalAlignment());
    //                System.out.println(para.getFormat().getBeforeSpacing());
    //                System.out.println(para.getFormat().getAfterSpacing());
                    System.out.println(r);
                }else if (j == 1){
                    r += "第一段:";
                    textRange = (TextRange) para.getChildObjects().get(0);
                    ParagraphFormat pf = para.getFormat();
                    CharacterFormat tf = textRange.getCharacterFormat();
                    r += tf.getFontName() + " " + tf.getFontSize() + "号 ";
                    r += "对齐:" + pf.getHorizontalAlignment();
                    System.out.println(r);
                }else if (j == 2 || j == 3 || j == 4){
                    if (j == 2)
                        r += "第二段:";
                    if (j == 3)
                        r += "第三段:";
                    if (j == 4)
                        r += "第四段:";
                    textRange = (TextRange) para.getChildObjects().get(0);
                    ParagraphFormat pf = para.getFormat();
                    CharacterFormat tf = textRange.getCharacterFormat();
                    r += tf.getFontName() + " " + tf.getFontSize() + "号";
                    r += " 对齐:" + pf.getHorizontalAlignment();
                    r += " 首行缩进" + pf.getFirstLineIndent() + " 行距类型" + pf.getLineSpacingRule() + "值" + pf.getLineSpacing();
                    System.out.println(r);
                }else if (j == 5){
                    r += "第五段:";
                    textRange = (TextRange) para.getChildObjects().get(0);
                    ParagraphFormat pf = para.getFormat();
                    CharacterFormat tf = textRange.getCharacterFormat();
                    r += tf.getFontName() + " " + tf.getFontSize() + "号";
                    r += " 对齐:" + pf.getHorizontalAlignment();
                    if (para.getText().endsWith("    "))
                        r += " 以四个空格结尾";
                    else
                        r += " 未以四个空格结尾";
    //                System.out.println(para.getText());
                    System.out.println(r);
                }else if (j == 6){
                    r += "第六段:";
                    textRange = (TextRange) para.getChildObjects().get(0);
                    ParagraphFormat pf = para.getFormat();
                    CharacterFormat tf = textRange.getCharacterFormat();
                    r += tf.getFontName() + " " + tf.getFontSize() + "号";
                    r += " 对齐:" + pf.getHorizontalAlignment();
                    System.out.println(r);
                }
    
            }
    
        }
    
    
    
    
    //1
        public void checkThree01(){
            System.out.println("自荐信共6段(不含标题)");
        }
    
    //2
        public void checkThree02(){
            System.out.println("标题:宋体 24.0号 文字间距加宽8.0 对齐:Center 段间距前62.4后7.8");
        }
    
    //3
            public void checkThree03(){
            System.out.println("自荐信共6段(不含标题)");
            System.out.println("正文");
            System.out.println("第一段:宋体 14.0号 对齐:Left");
            System.out.println("第二段:宋体 14.0号");
            System.out.println("第三段:宋体 14.0号");
            System.out.println("第四段:宋体 14.0号");
            System.out.println("第五段:宋体 14.0号");
            System.out.println("第六段:宋体 14.0号");
        }
    
    //4
        public void checkThree04(){
            System.out.println("第一段:对齐:Left");
        }
    
    //5
        public void checkThree05(){
            System.out.println("第二段: 对齐:Justify 首行缩进28.0 行距类型Exactly值29.0");
            System.out.println("第三段: 对齐:Justify 首行缩进28.0 行距类型Exactly值29.0");
            System.out.println("第四段: 对齐:Justify 首行缩进28.0 行距类型Exactly值29.0");
        }   
    
    
        public void checkThree06(){
            System.out.println("第五段: 对齐:Right 以四个空格结尾");
            System.out.println("第六段: 对齐:Right");
        }
    
    }
    
    '
    
  2. 点击工具栏
    请添加图片描述
  3. 点击上传文件把刚刚创建的UtilDocx.java上传
    请添加图片描述
  4. 点击图形化
    请添加图片描述
  5. 点击workspace>userfiles, 复制上传的文件UtilDocx.java
  6. 返回上一级,到myshixun>src,删除原来UtilDocx.java, 把新的粘贴上去
  7. 接下来测评即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

跑得动

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值