From 890a3cfe977063b5554e03dfe696a9cf9d483833 Mon Sep 17 00:00:00 2001 From: Kinneyzhang Date: Sun, 27 Jul 2025 21:39:47 +0800 Subject: [PATCH] update readme --- readme.md | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/readme.md b/readme.md index cb6fea0..2be00a0 100644 --- a/readme.md +++ b/readme.md @@ -1,23 +1,27 @@ -# 介绍 +## 介绍 emcas-kp 实现了 knuth-plass 的排版算法,单其功能不局限于算法本身。原本的KP算法实现了对英文的排版,emacs-kp对其进行了进一步的拓展,实现了 CJK 语言与 latin 系语言的混合混合排版。 -# 演示 +## 演示 先来看一下排版效果的 demo: -[[images/ekp-demo-with-cache.gif]] +![ekp-demo](./images/ekp-demo-with-cache.gif) -# 局限 +## 局限 目前只支持 CJK 与任意一种拉丁系语言的混合排版,不支持多种拉丁系语言混合排版的场景。原因是无法精确判断单词属于哪种语言,从而对其进行 hyphen 断词。 -# 用法 +## 用法 -**配置项:** +### 配置项 `ekp-latin-lang` 用来设置文本中主要的拉丁系的语言,dictionary 下可以看到所有支持的语言。 -**核心函数:** +## 核心函数 + +提供了两个函数: + +```(ekp-pixel-justify string line-pixel)``` -- ```(ekp-pixel-justify string line-pixel)``` 将文本 STRING 按照每行像素宽度为 LINE-PIXEL 排版,返回排版后的文本。 -- ```(ekp-pixel-range-justify string min-pixel max-pixel)``` +```(ekp-pixel-range-justify string min-pixel max-pixel)``` + 在 MIN-PIXEL 到 MAX-PIXEL 的返回内寻找最优排版,返回一个 cons-cell,car 是排版后的文本,cdr 是最优排版效果的像素值。 \ No newline at end of file