【Draw.io】让Draw.io导出的SVG格式图片包含自定义属性信息

news2024/11/13 14:34:10

前景提要

Draw.io重度用户一枚
这个Draw.io是一个极其好用的跨平台流程图绘制软件。
它保存的文件格式可以输出成SVG格式.
在这里插入图片描述
这个是基本功能了,没啥好说的
导出之后得到画的图片的SVG代码
SVG代码,也没啥好说的,一种矢量图片格式。

但是,我突然有一个想法

如果可以通过代码控制生成的SVG代码中的特定属性,修改属性,然后展示出来,那这个Draw.io不就是一个极其好用,易用的组态设计器了

然后我试了试,还真是可以的,起码Draw.io导出的简单的SVG图像是可以通过代码是识别出来的,但是正常情况下,导出的SVG图像中的元素它无法携带一些自定义的属性,我希望通过识别自定义的属性,然后特别的修改指定SVG元素对象的属性,然后特定的展示出来。

元素的自定义属性功能

估计编辑数据这个功能,都很少有人发现他的作用
在这里插入图片描述
用户其实是可以对任何的元素添加自定义属性和值的
每一个元素还有一个自己唯一的ID
在这里插入图片描述
然后看到这个占位符勾选不,这个也是可以很神奇的功能
如果我把它勾选,点应用。
在这里插入图片描述
似乎什么也没发生

但是如果我在对应的元素里面,把自定义的属性输入进去,并且用%包围,输出完,点击空白的地方,离开这个元素就会发生神奇的事情,
在这里插入图片描述
我们自己定义的属性对应的值就会以文本的方式显示在刚刚输出的%Test%中,替换掉Test
在这里插入图片描述

自定义属性的导出功能

正常情况下,我们设计好的图像,导出SVG,他是不包含你自己定义的属性的,譬如刚刚的Test.
它就只有这个矩形

但是,其实Draw.io本身有这个功能,可以将自定义的属性,ID等等信息导出到SVG文件中,只是这个功能藏得很深

找到这个插件设置,在其他里
在这里插入图片描述
单击打开,正常情况下一般人都不知道这个,应该都是无插件
然后点击添加,弹出这个,应该是有内部插件和外部插件
请添加图片描述
我们希望使用在内部插件里面,请找到svgdata,这个插件应该目前下载到得Draw.io应该都有请添加图片描述
点击确定,之后点击应用,重启软件,生效
之后,Draw.io导出得SVG图片就会带上自定义的属性了
有了这些属性,配合上它Draw.io导出的XML格式的元素之间的连接关系,就可以提取到生成图片必要的信息,通过代码来控制其中某些元素,并展示出来了
在这里插入图片描述
它还有很多其他的插件,感觉不得了,应该也可以自己写插件,但是这个就不在本文的讨论范围之内了
在这里插入图片描述

参考链接:
https://drawio.freshdesk.com/support/solutions/articles/16000056430-list-of-diagrams-net-plugins

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/547833.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

改造Springboot+vue项目

准备 搜索一个项目,并成功运行 毕设时,我们可以从网上搜索一个项目(包括前端的页面、后台的处理、数据库等有一下简单的模板样式)并能成功的将项目在自己的电脑上跑起来。毕设项目可以用搜索的模板(不用从头开始写&a…

【数据结构】_2.包装类与泛型

目录 1. 包装类 1.1 基本数据类型和对应的包装类 1.2 (自动)装箱和(自动)拆箱 1.2.1 装箱与拆箱 1.2.2 自动装箱与自动拆箱 1.3 valueOf()方法 2. 泛型类 2.1 泛型类与Object类 2.2 泛型类语法 2.3 泛型类示例 2.4 裸类…

怎么把照片缩小到200k?图片指定大小压缩怎么弄?

平时在给账号设置头像时,都会遇到图片过大无法上传的情况,这时候我们可以通过图片压缩指定大小工具来将图片压缩到200kb以下,这样就可以顺利设置头像了,下面一起来看一下图片指定大小压缩(https://www.yasuotu.com/ima…

机器学习笔记 - windows基于TensorRT的UNet推理部署

一、TensorRT简介 NVIDIA TensorRT是一个用于高性能深度学习推理的平台。TensorRT适用于使用CUDA平台的所有NVIDIA GPU。所以如果需要基于TensorRT部署,至少需要一个NVIDIA显卡,算力5.0以上,比Maxwell更新的架构,可以参考下表。 CUDA GPUs - Compute Capability | NVIDIA …

电动车头盔检测数据集

现在正慢慢整理自己有关电动车头盔检测的项目内容,会逐渐将这些资源进行发布,供大家参考和使用【部分资源有偿提供,毕竟花费了很多心血】。 这篇文章主要是发布相关数据集的。网上关于工厂环境下的头盔数据集有很多,而且多种多样…

PFCdocumentation_Coupling PFC and FLAC3D

目录 Coupling PFC and FLAC3D 1D Structural Element Coupling Scheme Wall-Zone Coupling Scheme 2D 3D Ball-Zone Coupling Scheme Commands FISH Functions Coupling PFC and FLAC3D 在 FLAC3D 图形用户界面中,可以通过“工具 ‣ 加载 PFC”菜单项加载 …

计算机组成与结构易错题

计算机组成与结构 海明校验码是在n个数据位之外增设k个校验位,从而形成一个kn位的新的码字,使新的码字的码距比较均匀地拉大。n与k的关系是(A)。 A、2k-1≥nk B、2n-1≤nk C、nk D、n-1≤k 知识: 确定要传输的信息&…

普通专科生,拿什么拯救自己的未来我想成为一名网络安全专业人员,需要做什么?

前 言 写这篇文章的初衷是很多朋友都想了解如何入门/转行网络安全,实现自己的“黑客梦”。文章的宗旨是: 1.指出一些自学的误区 2.提供客观可行的学习表 3.推荐我认为适合小白学习的资源.大佬绕道哈! 我的经历: 我19年毕业&…

【C语言】入门必看之循环练习(含二分查找动图)

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:C语言 ⚡注:此篇文章的 代码风格部分 将根据《高质量 C/C 编程指南》 —— 林锐 进行说明。该部分将用紫色表示 该篇将对循环语…

AI落地:10分钟变身Excel高手

本文首发公众号突围一只鹰。 使用Excel的时候经常有几个难点: 有些功能不知道如何操作不知道该用哪个公式不知道公式的参数如何设置复杂数据处理不知道如何写公式多表链接的时候不知道如何写公式其他数据源导入Excel只会手动录入 有了ChatGPT之后,很多…

求爷爷告奶奶,阿里大佬才甩出这份Spark+Hadoop+中台实战pdf

Spark大数据分析实战 1、Spark简介 初识Spark Sp ark生态系统BDAS Sp ark架构与运行逻辑 弹性分布式数据集 2、Spark开发与环境配置 Spark应用开发环境2置 使用Intelli i开发Spark 远程调试Spark程序 Spark编译 配置Spark源码阅读环境 3、BDAS简介 SQL on Spark S…

Windows使用flask部署HTML网页的方法

使用Flask python运行设计的好的html网页,已经配套的css和js文件: 前提条件 html、css 和 js 在同一个目录之下 html 内使用 css 和 js ,需要使用相对路径flask python 程序可以和 html 不在同一个目录 即:python程序可以在D盘…

sql server 数据库

1、窗口函数 sqlserver中窗口函数和OVER()函数_lfw2019的博客-CSDN博客参考:https://blog.csdn.net/qq_41805514/article/details/81772182 https://blog.csdn.net/qq_27997957/article/details/82383328一、OVER() 函数  语法结构:OVER([ PARTITION B…

【C++初阶】动态内存管理

一.C内存分布 说明: 1. 栈又叫堆栈--非静态局部变量/函数参数/返回值等等,栈是向下增长的; 2. 内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。用户可使用系统接口 创建共享共享内存,做进程间通信&…

【Leetcode刷题】算法:合并两个有序链表

文章目录 一、题目介绍二、解决办法三、提交结果 一、题目介绍 二、解决办法 首先定义一个名为ListNode的类: class ListNode:def __init__(self, val0, nextNone):self.val valself.next nextListNode代表一个链表节点,每个节点包含一个值&#xff…

【python】给你女神制作一个520图片墙吧~

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 环境使用 所需软件: Python 3.8 解释器 Pycharm 编辑器 模块使用: 内置模块 import re >>> python独有的匹配字符串的模块,该模块种提供功能基于正则表达式实现的&#xff0c…

六级备考28天|CET-6|听力第一讲|基本做题步骤与方法|13:30~14:30

目录 1. 重点词汇 proofread / ˈpruːfriːd / v.校对,校阅 autonomous adj.独立的 obsession n. 喜好 ample …

网络安全的学习路线

在众多高大上的学习路线指导中,尝试做一股清流,把要讲清楚的都讲清楚,该学些什么,学到哪个程度进入到下一阶段的学习这些才是最重要的。 在学习之前首先要做好学习的系统规划: 1.目前市场需求主流的岗位里&#xff0…

vue3+ts+wangEditor5菜单栏添加自定义图标按钮,自定义弹出界面内容,自定义插入链接 五步走

Wangeditor安装:VUE3的安装 ,其它看官网: npm install wangeditor/editor --save npm install wangeditor/editor-for-vuenext --save 官网:优势 | wangEditor 官方插入自定义内容样例: https://github.com/wange…

XDP入门体验之hello world

本文目录 1、下面这二张图,能非常好的说明XDP在Linux内核里的网络数据处理架构上的位置。2、XDP提供了可编程的灵活处理方式,XDP 程序可以通过 XDP action code来指定驱动程序对报文的后续处理方式:3、一个将收到的报文在XDP里直接丢弃的例子…