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

相关文章

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

聊聊springboot中如何自定义消息转换器

《聊聊springboot中如何自定义消息转换器》SpringBoot通过HttpMessageConverter处理HTTP数据转换,支持多种媒体类型,接下来通过本文给大家介绍springboot中... 目录核心接口springboot默认提供的转换器如何自定义消息转换器Spring Boot 中的消息

Python批量替换多个Word文档的多个关键字的方法

《Python批量替换多个Word文档的多个关键字的方法》有时,我们手头上有多个Excel或者Word文件,但是领导突然要求对某几个术语进行批量的修改,你是不是有要崩溃的感觉,所以本文给大家介绍了Py... 目录工具准备先梳理一下思路神奇代码来啦!代码详解激动人心的测试结语嘿,各位小伙伴们,大家好!有没有想

Python自定义异常的全面指南(入门到实践)

《Python自定义异常的全面指南(入门到实践)》想象你正在开发一个银行系统,用户转账时余额不足,如果直接抛出ValueError,调用方很难区分是金额格式错误还是余额不足,这正是Python自定义异... 目录引言:为什么需要自定义异常一、异常基础:先搞懂python的异常体系1.1 异常是什么?1.2