The m17n library is a multilingual text processing library for the C language.
It is a free and open source software.
It is for any GNU/Linux and Unix applications/libraries.
It realizes multilingualization of many aspects of applications/libraries.
The word "m17n" is an abbreviation of "multilingualization".
The m17n library provides following facilities to handle multilingual text.
M-text: A data structure for a multilingual text. It is basically a string but with attributes called text property, and is designed to substitute for the C string. It is the most important object of the m17n library.
Functions for creating and processing M-texts.
Functions for converting M-texts from/to strings encoded in various existing formats.
A huge character space, which contains all the Unicode characters and more non-Unicode characters.
Chartable: A data structure that contains per-character information efficiently.
Functions for inputting and displaying M-texts on a window system.
Simply include <m17n.h> in your program, and link it with the m17n library by -lm17n. See Introduction for the detail.
The m17n library utilizes these external libraries. They are not mandatory but many functions of the m17n library depend on them.
m17n-db -- http://www.m17n.org/m17n-lib-en/download/m17n-db-1.5.0.tar.gz
Provide various information to the m17n library.
libxml2 -- http://xmlsoft.org/
Used by the functions mtext_serialize() and mtext_deserialize(). Those functions return NULL when libxml2 is not available,
fribidi -- http://fribidi.sourceforge.net/
Used for BIDI processing. If it is not available, the rendering engine of the m17n library can't handle such script as Arabic and Hebrew correctly.
freetype -- http://www.freetype.org/
Used for handling local fonts.
fontconfig -- http://www.fontconfig.org/
Used for handling local fonts supported by the freetype library.
fontconfig -- http://freedesktop.org/Software/fontconfig
Used for finding local fonts in combination with Xft.
xft -- http://freedesktop.org/Software/Xft
Used for drawing text with local fonts by X Render Extension of X server in combination with fontconfig.
GD
Used for rendering text with local fonts on bitmap/pixmap.
libotf -- http://www.m17n.org/libotf/
Used for handling OpenTypee fonts in combination with freetype and Xft.
anthy -- http://anthy.sourceforge.jp/
Used for the Japanese input method ja-anthy.mim.
wordcut -- http://thaiwordseg.sourceforge.net/
Used for finding Thai word boundary in the example program example/linebreak.c.
Global IT Security Group
Information Technology Research Institute
National Institute of Advanced Industrial Science and Technology
Web: http://www.m17n.org/m17n-lib-en/
Bug report: m17n-lib-bug-XXXX@m17n.org (Replace XXXX with current year in 4 digits.)
Mailing lists: http://www.m17n.org/m17n-lib-en/mailinglist.html
Special thanks to:
Dimitri van Heesch <dimitri@stack.nl>
Author of Doxygen <http://www.stack.nl/~dimitri/doxygen/>. Without this tool, it would have been impossible to create this documentation.
Information-technology Promotion Agency (IPA), Japan
Writing this documentation was partially funded by Information-technology Promotion Agency (IPA) <http://www.ipa.go.jp/about/english/index.html> in fiscal year 2001.
Copyright (C) 2001-2011 National Institute of Advanced Industrial Science and Technology (AIST)
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Section, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the appendix entitled "GNU Free Documentation License".