Character Description Language

From Wenlin Guide
Jump to navigation Jump to search

Wenlin 216x93.png Appendix G of the Wenlin User’s Guide

This appendix documents features relating to Wenlin Institute’s Character Description Language (CDL), a powerful font and character description technology.


文林研究所 ‧ 字形描述语言 (字描语)

Wenlin CDL Feature Overview

◦ Wenlin’s CDL font technology is the powerhouse behind numerous commonly used features of Wenlin Software for Learning Chinese, including:

After selecting Song Hanzi (CDL) or Plain Hanzi (CDL) in the Wenlin Font Menu, all Chinese text you see in Wenlin is rendered using CDL font technology. Likewise, after you choose Monospace Pinyin in the Wenlin Font Menu, all Pinyin, English and much other text you see in Wenlin is also rendered using CDL.

◦ Wenlin’s CDL font technology also provides numerous advanced features of Wenlin Software for Learning Chinese, some of which are available when the Advanced CDL Options are enabled, including:

  • CDL glyph editing and export functions
  • CDL character variant and component analyses
  • Advanced CDL indexing features
  • Advanced Shuowen character variant analyses

The following image shows some CDL variants of the character 𤁉[U+24049] / 漢[U+6F22] / 汉[U+6C49] Hàn rendered in the CDL Stroking Box.

Han4s.png

CDL has always been a part of Wenlin, but the underlying language was invisible until Wenlin version 4.0. Now it is possible for end-users to view and manipulate the CDL description for any character-variant that can be viewed in the Stroking Box.

All CDL descriptions provided by Wenlin are copyright © 2012 Wenlin Institute, Inc., All Rights Reserved. To use CDL in your applications and publications, please contact Wenlin Institute. Conventional fonts can be exported from CDL by various methods, and the CDL Engine and Database are available for licensing.


Wenlin Stroking Box: Advanced CDL Features

To explore advanced CDL features, users need only choose Advanced Options from the Options menu, and turn on the option labeled Enable advanced CDL (Character Description Language) features. Then, when you are viewing any character in the Stroking Box, there will be a checkbox labeled advanced, and when it is checked, additional buttons will be available.

Wenlin-strokingbox adv 24049.png

Advanced Stroking Box buttons include:

  • CDL: to display the character's description in XML format.
  • Points: to show the control points for manipulating the arrangement of strokes and components.
  • EPS: to convert the character glyph into Encapsulated PostScript, an outline usable in graphics programs.
  • Strokes: to convert the description into one that uses only <stroke> elements, not <comp> elements.
  • SVG: to convert the character glyph into Scalable Vector Graphics, an outline usable in web browsers and other programs.
  • Scale: to ensure that the coordinates fit the entire grid, when editing.

In addition to the buttons listed above, if you are a Wenlin Developer, the Advanced Stroking Box may include any number of unpublished or experimental features documented only in Wenlin Source Code.


Wenlin CDL Screenshots and Videos

CDL Screenshots:

CDL Videos:

For Wenlin CDL Developers

Wenlin CDL Technology Overview

For advanced CDL users and Wenlin Developers, the following list summarizes some of the unique features of Wenlin's CDL font technology, features which make possible all of the CDL-related features of the Wenlin Software for Learning Chinese application, and much much more.

  • CDL is the engine (C source code) behind CJK Unicode megafonts, breaking the 64K glyph barrier! (A CDL font can contain an unlimited number of glyphs.)
  • CDL is an XML application, a standards-based font and encoding technology designed for precise and compact description, rendering, and indexing of all 漢/汉 Han (Chinese, Japanese, Korean, and Vietnamese = CJKV) characters, encoded and unencoded.
  • CDL is a font database containing (to date) XML/Unicode descriptions of nearly 100,000 characters, complete Unicode 7.1 CJK character support, and more.
  • CDL adds a third dimension to the code space, with a variant mechanism for associating an unlimited number of CDL descriptions with any Unicode codepoint.
  • Each CDL description can be associated with zero or more Unicode code points, making CDL the ideal tool for extending The Unicode Standard.
  • CDL means consistent stroke/component analyses, built-in indexing and variant mappings, and high-quality graphic images as outlines convertible to SVG, PostScript, MetaFont, and more.
  • CDL is a compressed binary with an incredibly small memory footprint (~1.5 MB!), suitable for use in limited-memory mobile devices that want full Unicode CJK support.
  • CDL technology has applications for machine learning, for handwriting recognition and input methods, for optical character recognition (OCR), and most importantly for human language-learning.
  • The basic elements of CDL are a two-dimensional coordinate space, and a set of basic stroke types. Using these simple elements, CDL provides a framework for describing characters and components, and for (recursive) reuse of character and component descriptions in the descriptions of other characters and components.
  • CDL has applications beyond CJK, for organizing information underlying the rendering of any complex script.


Core CDL Resources

  • A draft CDL DTD (Document Type Definition) defining the CDL tags (elements and attributes).
  • The Unicode Standard Version 6.1 – Core Specification: Appendix F: “CJK Strokes Documentation” (all CJK glyphs in this appendix were created by the CDL team using CDL, and all text derives from the CDL Spec. and from CJK Strokes work in WG2/IRG:N3063) [2012-01-31].

Contact the CDL Development Team

If you are interested in building CDL font technology into your application, if you want to build cutting-edge CJK fonts, if you need to digitize difficult CJK texts, don't try to reinvent the wheel, don't hesitate to contact the CDL Development Team. We can help build a solution to meet your programming needs.



Mouse pointer finger right.jpg | Previous: App. F. Remembered Options | Next: App. H. Wenlin Menu Overview | Contents |