Skip to content

Latest commit

 

History

History
205 lines (142 loc) · 5.39 KB

File metadata and controls

205 lines (142 loc) · 5.39 KB

LSR 003 - Lamina的LaTeXShow标准库

基本信息

  • LSR 编号 003
  • 标题 Lamina的LaTeXShow模块
  • 作者 CGrakeski
  • 状态 草案
  • 类型 标准规范类
  • 创建日期 08-07-2025
  • Lamina 版本 不适用

摘要

本LSR描述了Lamina为支持LaTeX显示而添加的标准库,包含了对库中函数的描述。

技术规范

简介

在LaTeXShow标准库中,有如下函数:

名称 参数 效果
latex_dbinit / 打开LaTeX展示板窗口
latex_dbbye save_content,save_path 关闭LaTeX展示板窗口
main_on / 打开原生窗口
main_off save_content(true/false)=true,save_path 关闭原生窗口
showlatex latex 将LaTeX公式渲染到LaTeX展示板窗口
showtxt txt 将文本渲染到LaTeX展示板窗口
db_ifinteract ifcan(true/false)=false 用户是否可以写代码交互(仅在REPL模式下有效)
db_ifcopy ifcan(true/false)=true 用户是否可复制公式或文本

若需要渲染LaTeX公式,需要先导入LaTeXShow标准库再进行操作

include "LaTeXShow";
latex_dbinit() //使LaTeX展示板窗口初始化
showlatex("\text{公式1:}\frac{-b\pm\sqrt{b^2-4ac}}{2a}") //输出如下画面

$$ \text{公式1:} \frac{-b\pm\sqrt{b^2-4ac}}{2a} $$

showtxt("\frac{1}{2}") //输出如下画面

$$ \textbackslash \text{frac} { 1 } { 2 } $$

使用

latex_dbbye()

退出窗口。

详细介绍

LaTeX展示板窗口是渲染LaTeX公式的载体。

latex_dbinit函数

执行latex_dbinit()函数相当于初始化了一个独立的渲染环境,该环境具有以下特性:

  1. 窗口属性

    • 默认尺寸为800x600像素
    • 采用无边框设计
    • 支持动态调整窗口大小
  2. 渲染引擎

    • 基于MathJax 3.2.2核心
    • 支持LaTeX 2024标准
    • 实时渲染延迟<50ms
    • 支持CMYK和sRGB色彩空间
  3. 交互模式

    Lamina

    db_ifinteract(true)  // 启用交互模式后:
    

    允许写入代码,并通过快捷键操作:

    • Ctrl+C 复制源码
    • Ctrl+滚轮,+- 调整字体大小
  4. 错误处理

    无效LaTeX语法会报错InvalidLaTeXEror,给出LaTeX展示板窗口的错误定位(行号标记)

  5. 高级配置

    Lamina

    // 初始化时可指定参数
    latex_dbinit(
      size=(1200,800),
      theme="dark",
    )
    
latex_dbbye函数
功能描述

终止 LaTeX 展示板窗口,支持保存内容到指定路径。

完整语法
latex_dbbye(
    save_content=true,     // 是否自动保存内容(默认true)
    // 保存路径默认为~/Lamina/log/LaTeXLog/)
)

核心行为
操作类型 详细说明
窗口关闭 立即终止窗口,若save_content=true,记录当前显示内容到日志
内容保存 save_content=true 时: - 自动生成 latexdb_[timestamp].ldl(LaTeXDisplayBoardLog文件),保存当前显示内容
异常处理 尝试在LaTeX展示板窗口打开前关闭会抛出 SessionNotFoundError

保存格式

生成的XML文件格式为:

<dialog>
    <ComputerLaTeX>
        <!--电脑输出的LaTeX公式-->
    </ComputerLaTeX>
    <ComputerText>
        <!--电脑输出的文本-->
    </ComputerText>
    <UserInput>
        <!--用户的输入-->
    </UserInput>
    <!--等等……-->
</dialog>
main_off函数
功能描述

终止原生窗口,支持保存内容到指定路径。

完整语法
main_off(
    save_content=true,     // 是否自动保存内容(默认true)
    // 保存路径默认为~/Lamina/log/MainWinLog/)
)

核心行为
操作类型 详细说明
窗口关闭 立即终止窗口,若save_content=true,记录当前显示内容到日志
内容保存 save_content=true 时: - 自动生成 latexdb_[timestamp].ldl(LaTeXDisplayBoardLog文件),保存当前显示内容
异常处理 尝试在原生窗口打开前关闭会抛出 SessionNotFoundError

保存格式

生成的XML文件格式为:

<dialog>
    <Computer>
        <!--电脑输出的文本-->
    </Computer>
    <UserInput>
        <!--用户的输入-->
    </UserInput>
    <!--等等……-->
</dialog>