头歌 | WPS文档基本操作

若为出现预期结果可私信我答疑

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. 接下来测评即可

相关推荐
两点王爷2 小时前
docker 运行自定义化的服务-后端
运维·docker·容器
邪恶的贝利亚3 小时前
FFMEPG常见命令查询
linux·运维·网络·ffmpeg
搜搜秀3 小时前
find指令中使用正则表达式
linux·运维·服务器·正则表达式·bash
七七powerful4 小时前
使用opentelemetry 可观测监控springboot应用的指标、链路实践,使用zipkin展示链路追踪数据,使用grafana展示指标
运维
Archie_IT4 小时前
修图自由!自建IOPaint服务器,手机平板随时随地远程调用在线P图
运维·服务器·前端·git·深度学习·npm·conda
行思理5 小时前
centos crontab 设置定时任务访问链接
linux·运维·centos
无名之逆5 小时前
[特殊字符] Hyperlane:为现代Web服务打造的高性能Rust文件上传解决方案
服务器·开发语言·前端·网络·后端·http·rust
再玩一会儿看代码5 小时前
[特殊字符] 深入理解 WSL2:在 Windows 上运行 Linux 的极致方案
linux·运维·windows·经验分享·笔记·学习方法
我是小木鱼7 小时前
浅析Centos7安装Oracle12数据库
linux·运维·服务器·数据库
Pluto & Ethereal8 小时前
新手宝塔部署thinkphp一步到位
运维·服务器·阿里云·php·腾讯云