Codesys自定义库的帮助文档的美化

2024-03-07 10:12

本文主要是介绍Codesys自定义库的帮助文档的美化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1.前言
  • 2.美化的方式
    • 2.1.利用html标签
    • 2.2.利用reStructuredText
  • 3.相关说明
    • 3.1.使用reStructuredText时,中文注释的问题
    • 3.2.将文档需要的图片包含到库中
    • 3.3.文档的作用区域

1.前言

当我们在codesys中写好自己的库,并且发布给别人使用时,别人可以在库管理器中查看到我们库的帮助文档。但是codesys默认帮我们生成的文档,看起来比较简陋:
在这里插入图片描述看一下系统的,他的帮助文档有图、有表格、有代码示例,看起来很好看:
在这里插入图片描述假如我们也想做到这样子,该如何操作呢?

2.美化的方式

关于如何美化,其实官方的帮助文档有提到:【Library Documentation】
在这里插入图片描述

CODESYS users are able to insert HTML tags into the comments of modules for controlling how the appearance is formatted in the library manager…

也就是说,可以通过html标签来实现图片、表格等元素的插入,控制字体的样式等等操作。
但是,同时,他们也提到,利用html标签的话,会破坏源码的易读性,从而不太建议使用html标签:

However, this method is not recommended because it corrupts the legibility of the source code.

官方建议使用reStructuredText。当使用reStructuredText时,貌似还可以调用CODESYS的一些函数来生成结果显示在界面上?
在这里插入图片描述但是有时候html标签还是挺方便的,这里都尝试一下吧。

2.1.利用html标签

关于html标签,可以看一下这里:【html标签】
在这里插入图片描述

经过测试,图片,设置视频都可以插入进去:
源码:
在这里插入图片描述

/// 搞三个斜杆是不是就可以显示在文档中,注意一定要是三个斜杆
/// <h1>这里显示图片</h1>
/// <img src="https://www.w3school.com.cn/i/photo/tulip.jpg" alt="上海鲜花港 - 郁金香" />
/// <h1>video元素</h1>
/// <video width="640" height="360" controls>
///   <source src="https://www.w3school.com.cn/i/video/shanghai.mp4" type="video/mp4">
///   您的浏览器不支持 video 标签。
/// </video>FUNCTION MyFunction_cext : MyDUT // 返回值可以
VAR_INPUTa : STRING;b : REFERENCE TO STRING; // 可以在C函数中对此变量赋值,注意要使用MEMCPY的方法c : POINTER TO STRING;   // 可以在C函数中对此变量赋值,注意要使用MEMCPY的方法d : REFERENCE TO REAL;i : REFERENCE TO INT;
END_VARVAR
END_VAR

效果:
在这里插入图片描述

2.2.利用reStructuredText

reStructuredText的语法稍微复杂一些,请自行找资料学习一下。
这里提供一些资料:【reStructuredText介绍】、 【Quick reStructuredText】
假如使用reStructuredText,需要在工程设置中增加一个定义:
在这里插入图片描述

DocFormat 文本类型 reStructuredText// 这个没用
// DocLanguages 文本类型 en, de, ch, zh-chs

源码:
在这里插入图片描述

(* * +------------+------------+-----------+* | Header 1   | Header 2   | Header 3  |* +============+============+===========+* | body row 1 | column 2   | column 3  |* +------------+------------+-----------+* | body row 2 | Cells may span columns.|* +------------+------------+-----------+* | body row 3 | Cells may  | - Cells   |* +------------+ span rows. | - contain |* | body row 4 |            | - blocks. |* +------------+------------+-----------+** 网络图片** .. image:: https://www.w3school.com.cn/i/photo/tulip.jpg** 工程图片,比较奇怪的是图片路径比实际路径的位置要往前一级,也就是要多一次 ../ 操作** .. image:: ../Images/WIN_20231102_14_45_52_Pro.jpg* * 这里显示代码* ::**     (* Example declaration *)          *     TONInst : TON ;                    *     (* Example in ST *)*     TONInst(IN := VarBOOL1, PT:= T#5s);*     VarBOOL2 := TONInst.Q;                               *)
FUNCTION_BLOCK FINAL MyFB
VAR_INPUTa	: BOOL;    (* only support english *)b	: STRING;  (* only support english *)c	: INT;     (* ---------- *)
END_VAR
VAR_OUTPUT
END_VAR
VAR
END_VAR

效果:
在这里插入图片描述

3.相关说明

3.1.使用reStructuredText时,中文注释的问题

当使用reStructuredText作为文档格式时,结构体、函数、功能块的参数注释不能包含中文,否则inout表格无法显示
在这里插入图片描述我尝试设置了DocLanguages 为ch,一样不行。在官方文档中同一章节找到一篇文章【Documentation in Different Languages】,但是好像讲的是翻译文档的,而不是这个inOut不显示的问题。
希望高手来告诉一下怎么解决。

3.2.将文档需要的图片包含到库中

建立一个文件夹,然后在文件夹处右键,添加对象-》外部文件, 把文件导入进来。记得要勾选【嵌入工程】,否则你的库到了别人的电脑就显示不了图片了。
在这里插入图片描述
在导入后,假如codesys把你的文件的后缀名给去掉了,自己要补上去,否则有些问题。
然后在使用的时候,就通过相对路径来使用这个图片。相对路径有些奇怪,需要注意一下【图片路径比实际路径的位置要往前一级,也就是要多一次 …/ 操作】
在这里插入图片描述

3.3.文档的作用区域

除了函数、功能块这些常用的地方可以通过这些方式生成帮助文档外,有哪些地方可以生成文档呢?
关于这个,官方有介绍,主要有6个位置:【Documentation Areas】

  • Project Information
  • Folder
  • Declaration Header
  • Member Declaration
  • Enums, Structures, GVL’s
  • Actions and Transitions

这些位置写的注释都会在库管理器中的文档显现出来。


参考:
【Library Documentation】
【Documentation Areas】

这篇关于Codesys自定义库的帮助文档的美化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783168

相关文章

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

SpringBoot+EasyExcel实现自定义复杂样式导入导出

《SpringBoot+EasyExcel实现自定义复杂样式导入导出》这篇文章主要为大家详细介绍了SpringBoot如何结果EasyExcel实现自定义复杂样式导入导出功能,文中的示例代码讲解详细,... 目录安装处理自定义导出复杂场景1、列不固定,动态列2、动态下拉3、自定义锁定行/列,添加密码4、合并

Java操作Word文档的全面指南

《Java操作Word文档的全面指南》在Java开发中,操作Word文档是常见的业务需求,广泛应用于合同生成、报表输出、通知发布、法律文书生成、病历模板填写等场景,本文将全面介绍Java操作Word文... 目录简介段落页头与页脚页码表格图片批注文本框目录图表简介Word编程最重要的类是org.apach

Java实现自定义table宽高的示例代码

《Java实现自定义table宽高的示例代码》在桌面应用、管理系统乃至报表工具中,表格(JTable)作为最常用的数据展示组件,不仅承载对数据的增删改查,还需要配合布局与视觉需求,而JavaSwing... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

Python Pillow 库详解文档(最新推荐)

《PythonPillow库详解文档(最新推荐)》Pillow是Python中最流行的图像处理库,它是PythonImagingLibrary(PIL)的现代分支和继承者,本文给大家介绍Pytho... 目录python Pillow 库详解文档简介安装核心模块架构Image 模块 - 核心图像处理基本导入

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2