1

Java生成Xmind思维导图

1.引入Xmind的maven依赖

<dependency>
    <groupId>com.github.eljah</groupId>
    <artifactId>xmindjbehaveplugin</artifactId>
    <version>0.8</version>
</dependency>

2.Java实现

package com.bai.test.xmind;

import org.xmind.core.*;

import java.util.ArrayList;
import java.util.List;

/**
 * XMind功能测试
 */
public class XmindTest {
    public static void main(String[] args) throws Exception {
         String root = "演示脑图";
         String xmindPath = "./demo.xmind";
         createXmind(root, xmindPath);
    }

    /**
     * 创建xmind导图
     * @param root
     * @param xmindPath
     * @throws Exception
     */
    public static void createXmind(String root, String xmindPath)throws  Exception{
        IWorkbookBuilder workbookBuilder = Core.getWorkbookBuilder();
        IWorkbook workbook = workbookBuilder.createWorkbook();

        ISheet primarySheet = workbook.getPrimarySheet();

        ITopic rootTopic = primarySheet.getRootTopic();
        rootTopic.setTitleText(root);

        rootTopic.setStructureClass("org.xmind.ui.logic.right");
        List<ITopic> charaterTopics = new ArrayList<>();

        ITopic topic1 = workbook.createTopic();
        topic1.setTitleText("第一个, 一级节点");

        ITopic topic2 = workbook.createTopic();
        topic2.setTitleText("第二个, 二级节点");

        charaterTopics.add(topic1);
        charaterTopics.add(topic2);

//        IPlainNotesContent plainContent = (IPlainNotesContent) workbook.createNotesContent(INotes.PLAIN);
//        String content = "我是笔记本内容";
//        plainContent.setTextContent(content);
//        INotes nodes = topic2.getNotes();
//        nodes.setContent(INotes.PLAIN, plainContent);

        charaterTopics.forEach(it -> rootTopic.add(it, ITopic.ATTACHED));
        workbook.save(xmindPath);
    }
}

3.生成.xmind格式文件

image.png

4.利用Xmind软件打开

image.png

5.思考

  • 如何能将xmind直接输出成png, jpg, svg 图??

白石神君
1 声望0 粉丝

技术老白, 你值得信赖