shicf
3 天以前 00b070a1237576b49dea339887963228305567d1
创建word文档
已修改2个文件
70 ■■■■■ 文件已修改
src/main/java/com/product/file/util/AsposeUtil.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/util/PDFOperateUtil.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/file/util/AsposeUtil.java
@@ -5,6 +5,7 @@
import com.aspose.slides.Presentation;
import com.aspose.words.SaveFormat;
import com.aspose.words.*;
import com.aspose.words.Font;
import com.product.core.exception.BaseException;
import com.product.core.spring.context.SpringMVCContextHolder;
import com.product.file.config.FileCode;
@@ -70,7 +71,68 @@
        }
        return result;
    }
    /**
     * 创建Word
     * @param content
     * @param save_path
     * @throws Exception
     */
    public static void createWord(StringBuilder content,String save_path) throws Exception {
        // 验证License
        if (!getLicense(OFFICE_WORD)) {
            return;
        }
        // 添加段落
         // 创建一个新的文档
        Document doc = new Document();
        DocumentBuilder builder = new DocumentBuilder(doc);
        Font font = builder.getFont();
        font.setSize(12);
        builder.writeln(content.toString());
//        font.setBold(true);
//        font.setColor(Color.BLACK);
//        font.setName("Arial");
//        builder.write("How to Create a Rich Word Document?");
//        builder.insertBreak(BreakType.LINE_BREAK);
        // 向文档中添加标题和段落
//        builder.writeln("Hello, Aspose!");
//        builder.writeln("这是一个使用 Aspose 创建的 Word 文档。");
//        ParagraphFormat paragraphFormat = builder.getParagraphFormat();
//        paragraphFormat.setFirstLineIndent(12);
//        paragraphFormat.setKeepTogether(true);
        // 保存文档
        doc.save(save_path);
    }
    public static void createWordTable() throws Exception {
        // Create a Document object
        Document doc = new Document();
        // Create a DocumentBuilder object
        DocumentBuilder builder = new DocumentBuilder(doc);
        // Create table
        Table table = builder.startTable();
        // Insert a cell
        builder.insertCell();
        table.autoFit(AutoFitBehavior.AUTO_FIT_TO_WINDOW);
        builder.getCellFormat().setVerticalAlignment(CellVerticalAlignment.CENTER);
        builder.write("This is Row 1 Cell 1");
        builder.insertCell();
        builder.write("This is Row 1 Cell 2");
        // End row
        builder.endRow();
        // start a next row and set its properties
        builder.getRowFormat().setHeight(100);
        builder.getRowFormat().setHeightRule(HeightRule.EXACTLY);
        builder.insertCell();
        builder.write("This is Row 2 Cell 1");
        builder.insertCell();
        builder.write("This is Row 2 Cell 2");
        builder.endRow();
        // End table
        builder.endTable();
        // Save the document
        doc.save("Rich Word Document.docx");
    }
    /**
     * @param officePath
     * @param OutPutPath
src/main/java/com/product/file/util/PDFOperateUtil.java
@@ -37,8 +37,8 @@
            }
            TrueTypeCollection ttc = new TrueTypeCollection(fontFile);
         // 通过字体名称获取(如 "SimSun")
            PDType0Font font = PDType0Font.load(document, ttc.getFontByName("SimSun"), true);
//            PDType0Font font = PDType0Font.load(document, fontFile);
//            PDType0Font font = PDType0Font.load(document, ttc.getFontByName("SimSun"), true);
            PDType0Font font = PDType0Font.load(document, fontFile);
            float fontSize = 10;
            float margin = 50;
            float leading = 1.2f * fontSize; // 行距
@@ -299,7 +299,7 @@
        try {
            // 1. 从文本文件创建 PDF
//            createPdfFromTextFile("E://新建1.txt", "E://新建1.pdf");
            createPdfWithCode("E:\\PROJECT\\Product\\后端\\product\\product-server\\product-server-file\\src\\main\\java\\com\\product\\file\\util\\FileUtil.java", "E://新建1.pdf");
            createPdfWithCode("C:\\Users\\shi\\Desktop\\产品\\code.txt", "E://新建1.pdf");
            // 2. 读取 PDF 内容
            String content = readPdfContent("E://新建1.pdf");