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文件。

相关推荐
AI服务老曹9 小时前
通过感知、分析、预测、控制,最大限度发挥效率的智慧油站开源了
人工智能·开源·自动化·音视频
1024小神16 小时前
ios苹果手机使用AScript应用程序实现UI自动化操作,非常简单的一种方式
运维·ui·自动化
游客52016 小时前
自动化办公|通过xlwings进行excel格式设置
python·自动化·excel
米码收割机16 小时前
【C语言】C语言 食堂自动化管理系统(源码+数据文件)【独一无二】
c语言·python·自动化
普通网友16 小时前
自动化办公更简单了!新版python-office,有哪些更新?
运维·人工智能·python·stable diffusion·数据挖掘·自动化·midjourney
Zoho 阿伦16 小时前
Zoho Books:简单好用的外贸订单管理系统,外贸跟单自动化处理
自动化·进销存·外贸订单管理系统·外贸跟单·进销存管理系统
前端郭德纲19 小时前
vscode默认终端怎么设置成git bash
git·vscode·bash
明月看潮生20 小时前
青少年编程与数学 02-009 Django 5 Web 编程 21课题、部署
python·青少年编程·django·部署·编程与数学
明月看潮生20 小时前
青少年编程与数学 02-009 Django 5 Web 编程 22课题、性能优化
python·青少年编程·性能优化·django·编程与数学
OCR_API21 小时前
ocr智能票据识别系统|自动化票据识别集成方案
运维·自动化·ocr