#math #unicode #typesetting #decimal-digits #text

bin+lib math-text-transform

将希腊字母、拉丁字母或十进制数字转换为数学字母数字符号Unicode块(U+1D400–U+1D7FF)中的特定变体。例如,加粗、斜体、手写体或双线。

2个版本

使用旧的Rust 2015

0.1.1 2015年10月2日
0.1.0 2015年10月2日

#933 in 文本处理

MIT 许可证

49KB
1.5K SLoC

数学文本转换

Travis build crates.io

一个简单的crate,提供将希腊字母、拉丁字母或十进制数字映射到数学字母数字符号Unicode块(U+1D400–U+1D7FF)中特定变体的函数。我们还提供便利的字符串方法,将字符串中的每个字符映射到变体(如果没有变体,则保持不变)。

支持的变体包括

  • 𝐛𝐨𝐥𝐝 (加粗)
  • 𝑖𝑡𝑎𝑙𝑖𝑐 (斜体)
  • 𝒃𝒐𝒍𝒅 𝒊𝒕𝒂𝒍𝒊𝒄 (加粗斜体)
  • 𝗌𝖺𝗇𝗌-𝗌𝖾𝗋𝗂𝖿 (无衬线)
  • 𝘀𝗮𝗻𝘀-𝘀𝗲𝗿𝗶𝗳 𝗯𝗼𝗹𝗱 (无衬线加粗)
  • 𝘴𝘢𝘯𝘴-𝘴𝘦𝘳𝘪𝘧 𝘪𝘵𝘢𝘭𝘪𝘤 (无衬线斜体)
  • 𝙨𝙖𝙣𝙨-𝙨𝙚𝙧𝙞𝙛 𝙗𝙤𝙡𝙙 𝙞𝙩𝙖𝙡𝙞𝙘 (无衬线加粗斜体)
  • 𝓈𝒸𝓇𝒾𝓅𝓉 (手写体)
  • 𝓫𝓸𝓵𝓭 𝓼𝓬𝓻𝓲𝓹𝓽 (加粗手写体)
  • 𝔣𝔯𝔞𝔨𝔱𝔲𝔯 (花体)
  • 𝖇𝖔𝖑𝖉 𝖋𝖗𝖆𝖐𝖙𝖚𝖗 (加粗花体)
  • 𝚖𝚘𝚗𝚘𝚜𝚙𝚊𝚌𝚎 (等宽)
  • 𝕕𝕠𝕦𝕓𝕝𝕖-𝕤𝕥𝕣𝕦𝕔𝕜 (双线)

安装

将以下内容添加到您的 Cargo.toml

[dependencies]
math-text-transform = "*"

用法

extern crate math_text_transform;
use math_text_transform::MathTextTransform;

assert_eq!("Bold".to_math_bold(), "𝐁𝐨𝐥𝐝");
assert_eq!("Σανσ-Σεριφ-Βολδ".to_math_sans_serif_bold(), "𝝨𝝰𝝼𝞂-𝝨𝝴𝞀𝝸𝞅-𝝗𝝾𝝺𝝳");
assert_eq!("Double-struck 123".to_math_double_struck(), "𝔻𝕠𝕦𝕓𝕝𝕖-𝕤𝕥𝕣𝕦𝕔𝕜 𝟙𝟚𝟛");

文档

https://runarberg.github.com/math-text-transform

命令行工具

如果您仅对CLI实用工具感兴趣,可以使用以下命令安装

$ git clone https://github.com/runarberg/math-text-transform.git
$ cd math-text-transform
$ cargo build --release
$ [sudo] ln -s $(pwd)/target/release/math-text-transform /usr/local/bin/math-text-transform

并按如下方式使用

math-text-transform <variant> <text>

文本也可以通过标准输入提供。

示例

$ math-text-transform -bf-it Bold-Italic
𝑩𝒐𝒍𝒅-𝑰𝒕𝒂𝒍𝒊𝒄
$ echo "Double struck" | math-text-transform --double-struck
𝔻𝕠𝕦𝕓𝕝𝕖 𝕤𝕥𝕣𝕦𝕔𝕜

无运行时依赖