Skip to main content

PyLf

A lightweight Python library for simulating Chinese handwriting

released version python version implementation license build status downloads

Tutorial | Examples | Release Notes | Contributing | Donation

Vision

Reveal the nature of Chinese handwriting and use it to implement beautiful, simple and easy-to-use interfaces.

Algorithm & Implementation

首先,在水平位置、竖直位置和字体大小三个自由度上,对每个字的整体做随机扰动。随后,在水平位置、竖直位置和旋转角度三个自由度上,对每个字的每个笔画做随机扰动。

目前,PyLf基于Pillow开发,并在内部使用multiprocessing做并行加速。

Installation

pip install pylf

Quick Start

from PIL import Image, ImageFont
from pylf import handwrite


if __name__ == '__main__':
    template = {
        "background": Image.new(mode="1", size=(2000, 2000), color="white"),
        "margin": {"left": 150, "right": 150, "top": 200, "bottom": 200},
        "line_spacing": 150,
        "font_size": 100,
        "font": ImageFont.truetype("path/to/my/font.ttf")
    }
    for image in handwrite("我能吞下玻璃而不伤身体。", template):
        image.show()

对于简单的手写任务,您可以使用更易用的CLI工具。请尝试在终端中运行pylf --help

更多信息请参阅Tutorial

Features

特性 相关参数
设置背景 background
设置字体及其大小、颜色 font, font_size, color
设置页边距、行间距、字间距 margin, line_spacing, word_spacing
调节排版随机化的强弱 font_size_sigma, line_spacing_sigma, word_spacing_sigma
调节笔画随机扰动的强弱 perturb_x_sigma, perturb_y_sigma, perturb_theta_sigma
设置在行末不换行的字符集(如:。》)] is_end_char_fn
设置在排版时只占其宽度一半的字符集(如:,。! is_half_char_fn
并行加速 worker
周期性模板 template2(详情:pylf.handwrite2)

Gallery

前出师表

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylf-3.4.0.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pylf-3.4.0-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file pylf-3.4.0.tar.gz.

File metadata

  • Download URL: pylf-3.4.0.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.4

File hashes

Hashes for pylf-3.4.0.tar.gz
Algorithm Hash digest
SHA256 0c5bfa8d91aeeaa27eeb3c9f801fd18b8407f891c0bc73e9b8d567282d9aa70c
MD5 d0ced3707da9036fdb8f876b46f08182
BLAKE2b-256 aaaf75518859ef901756593e4d2cfc9af3ca48ad5fe6aaa50fe48ade4a7b41e3

See more details on using hashes here.

File details

Details for the file pylf-3.4.0-py3-none-any.whl.

File metadata

  • Download URL: pylf-3.4.0-py3-none-any.whl
  • Upload date:
  • Size: 17.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.1.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.5.4

File hashes

Hashes for pylf-3.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6160125f178e499c0af81cc0cca1ead6658d6399fb875efc8a054f412826799b
MD5 864b688d840521c42e2ac7a32fe81fe1
BLAKE2b-256 ea4b67fa832adc232616097b16535ba8349c9ec7600a246e81ddec3a86b02f86

See more details on using hashes here.

Release history Release notifications | RSS feed

4.1.0

2 files

4.0.0

2 files

This release

3.4.0 This release

2 files

3.3.2

2 files

3.3.1

2 files

3.3.0

2 files

3.2.3

2 files

3.2.2

2 files

3.2.1

2 files

3.2.0

2 files

3.1.0

2 files

3.0.0

2 files

2.1.0

2 files

2.0.0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.0

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.0

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page