xmindparser思维导图初试,用shell语言

需求

复制代码
xmindparser
用 shell 画思维导图 x mind,可以
 /storage/emulated/0/字体/黑体.ttf 
 保存/storage/emulated/0/print/图片/input图纸/

任务实施

①. 首先要知道用什么库,都有哪些思维导图库

②. 初步知道每一种库,尽管这很繁琐

③. 尝试在官网看看他们的使用范围和所有图例

表格

在Shell中,可以使用一些命令行工具来创建和处理思维导图和表格数据。以下是一些常用的Shell思维导图库和表格库:

思维导图库:

  1. Graph-Easy:一个简单的Perl模块,可将文本转换为ASCII格式或SVG格式的图形,用于创建简单的流程图和思维导图。
  2. dot:Graphviz软件包的一部分,用于创建复杂的图形和流程图,支持多种导图样式和输出格式。
  3. txt2tags:一个通用的文本到文档转换器,支持将文本转换为HTML、LaTeX、Man等多种格式,其中包括一些简单的思维导图样式。

表格库:

  1. awk:一个强大的文本处理工具,提供了对表格数据进行筛选、排序和计算的功能。
  2. sed:另一个流行的文本处理工具,用于在表格数据中进行查找和替换操作。
  3. csvkit:一个专门针对CSV文件的命令行工具集,提供了一系列对表格数据进行处理和转换的工具。
  4. xsv:一个快速、轻量级的CSV工具,支持对表格数据进行排序、过滤、搜索和统计等操作。
    (以上来自gpt回答)

第一个代码

如果您想使用Shell脚本来将XMind思维导图转换为图片并使用指定的字体,可以借助xmindparser和ImageMagick这两个工具。

  1. 安装xmindparser和ImageMagick

首先,确保您已经安装了Python和pip工具。然后使用以下命令安装xmindparser库:

复制代码
pip install xmindparser

同时,您也需要安装ImageMagick工具,可以通过包管理器进行安装,如:

复制代码
sudo apt-get install imagemagick
  1. 创建Shell脚本

接下来,创建一个Shell脚本文件(例如convert_xmind_to_image.sh)并使用文本编辑器打开。将以下内容复制到脚本文件中:

shell 复制代码
#!/bin/bash

# 设置字体路径
font_path="/storage/emulated/0/字体/黑体.ttf"

# 设置导出图片路径
output_dir="/storage/emulated/0/print/图片/input图纸/"

# 设置XMind文件路径
xmind_file="/path/to/your/xmind/file.xmind"

# 导出为SVG格式
python -c "from xmindparser import xmind_to_dict; from xmindparser.utils import save_as_image; data = xmind_to_dict('$xmind_file'); for sheet in data[0]['topic']: save_as_image(sheet, '${output_dir}$(basename $xmind_file .xmind)_${sheet["title"]}.svg', force=True)"

# 将SVG转换为图片,并设置字体
for svg_file in ${output_dir}*.svg; do
  output_file="${svg_file%.svg}.png"
  convert -background none -font "$font_path" -gravity center -resize 800x "${svg_file}" "${output_file}"
done

# 删除临时的SVG文件
rm ${output_dir}*.svg

在脚本中,您需要根据实际情况修改以下几个参数:

  • font_path:您指定的字体文件路径。
  • output_dir:图片输出目录。
  • xmind_file:您要转换的XMind文件路径。
  1. 运行脚本

保存并关闭脚本文件后,使用以下命令运行脚本:

shell 复制代码
bash convert_xmind_to_image.sh

脚本将会读取XMind文件,并将每个主题(topic)导出为SVG格式的文件。然后,利用ImageMagick将SVG文件转换为PNG格式,并应用指定的字体。最后,删除临时生成的SVG文件。

相关推荐
水银嘻嘻1 小时前
12 web 自动化之基于关键字+数据驱动-反射自动化框架搭建
运维·前端·自动化
ddd...e_bug6 小时前
Shell和Bash介绍
开发语言·bash
明月看潮生9 小时前
青少年编程与数学 02-019 Rust 编程基础 16课题、包、单元包及模块
开发语言·青少年编程·rust·编程与数学
厦门辰迈智慧科技有限公司10 小时前
城市综合管廊监测与维护一体化解决方案
物联网·自动化·监测
sy_cora14 小时前
IEEE 列表会议第五届机器人、自动化与智能控制国际会议
运维·人工智能·机器人·自动化
云手机管家17 小时前
CDN加速对云手机延迟的影响
运维·服务器·网络·容器·智能手机·矩阵·自动化
云手机管家17 小时前
账号风控突破:云手机设备指纹篡改检测与反制技术解析
android·运维·网络协议·网络安全·智能手机·矩阵·自动化
struggle20251 天前
AgenticSeek开源的完全本地的 Manus AI。无需 API,享受一个自主代理,它可以思考、浏览 Web 和编码,只需支付电费。
人工智能·开源·自动化
北漂老男孩1 天前
ChromeDriver 技术生态与应用场景深度解析
java·爬虫·python·自动化
明月看潮生1 天前
青少年编程与数学 02-019 Rust 编程基础 14课题、并发编程
开发语言·青少年编程·rust·编程与数学