font size increased and all font options added
140567
fonts/10x20.bdf
Normal file
BIN
fonts/10x20.pbm
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
fonts/10x20.pil
Normal file
11981
fonts/4x6.bdf
Normal file
BIN
fonts/4x6.pbm
Normal file
After Width: | Height: | Size: 569 B |
BIN
fonts/4x6.pil
Normal file
25905
fonts/5x7.bdf
Normal file
BIN
fonts/5x7.pbm
Normal file
After Width: | Height: | Size: 794 B |
BIN
fonts/5x7.pil
Normal file
21422
fonts/5x8.bdf
Normal file
BIN
fonts/5x8.pbm
Normal file
After Width: | Height: | Size: 873 B |
BIN
fonts/5x8.pil
Normal file
31042
fonts/6x10.bdf
Normal file
BIN
fonts/6x10.pbm
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
fonts/6x10.pil
Normal file
86121
fonts/6x12.bdf
Normal file
BIN
fonts/6x12.pbm
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
fonts/6x12.pil
Normal file
82452
fonts/6x13.bdf
Normal file
BIN
fonts/6x13.pbm
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
fonts/6x13.pil
Normal file
25672
fonts/6x13B.bdf
Normal file
BIN
fonts/6x13B.pbm
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
fonts/6x13B.pil
Normal file
15432
fonts/6x13O.bdf
Normal file
BIN
fonts/6x13O.pbm
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
fonts/6x13O.pil
Normal file
20768
fonts/6x9.bdf
Normal file
BIN
fonts/6x9.pbm
Normal file
After Width: | Height: | Size: 1007 B |
BIN
fonts/6x9.pil
Normal file
64553
fonts/7x13.bdf
Normal file
BIN
fonts/7x13.pbm
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
fonts/7x13.pil
Normal file
20093
fonts/7x13B.bdf
Normal file
BIN
fonts/7x13B.pbm
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
fonts/7x13B.pil
Normal file
16653
fonts/7x13O.bdf
Normal file
BIN
fonts/7x13O.pbm
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
fonts/7x13O.pil
Normal file
54128
fonts/7x14.bdf
Normal file
BIN
fonts/7x14.pbm
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
fonts/7x14.pil
Normal file
21221
fonts/7x14B.bdf
Normal file
BIN
fonts/7x14B.pbm
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
fonts/7x14B.pil
Normal file
74092
fonts/8x13.bdf
Normal file
BIN
fonts/8x13.pbm
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
fonts/8x13.pil
Normal file
22852
fonts/8x13B.bdf
Normal file
BIN
fonts/8x13B.pbm
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
fonts/8x13B.pil
Normal file
25932
fonts/8x13O.bdf
Normal file
BIN
fonts/8x13O.pbm
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
fonts/8x13O.pil
Normal file
105126
fonts/9x15.bdf
Normal file
BIN
fonts/9x15.pbm
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
fonts/9x15.pil
Normal file
37168
fonts/9x15B.bdf
Normal file
BIN
fonts/9x15B.pbm
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
fonts/9x15B.pil
Normal file
119182
fonts/9x18.bdf
Normal file
BIN
fonts/9x18.pbm
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
fonts/9x18.pil
Normal file
19082
fonts/9x18B.bdf
Normal file
BIN
fonts/9x18B.pbm
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
fonts/9x18B.pil
Normal file
42
fonts/AUTHORS
Normal file
@ -0,0 +1,42 @@
|
||||
The identity of the designer(s) of the original ASCII repertoire and
|
||||
the later Latin-1 extension of the misc-fixed BDF fonts appears to
|
||||
have been lost in history. (It is likely that many of these 7-bit
|
||||
ASCII fonts were created in the early or mid 1980s as part of MIT's
|
||||
Project Athena, or at its industrial partner, DEC.)
|
||||
|
||||
In 1997, Markus Kuhn at the University of Cambridge Computer
|
||||
Laboratory initiated and headed a project to extend the misc-fixed BDF
|
||||
fonts to as large a subset of Unicode/ISO 10646 as is feasible for
|
||||
each of the available font sizes, as part of a wider effort to
|
||||
encourage users of POSIX systems to migrate from ISO 8859 to UTF-8.
|
||||
|
||||
Robert Brady <rwb197@ecs.soton.ac.uk> and Birger Langkjer
|
||||
<birger.langkjer@image.dk> contributed thousands of glyphs and made
|
||||
very substantial contributions and improvements on almost all fonts.
|
||||
Constantine Stathopoulos <cstath@irismedia.gr> contributed all the
|
||||
Greek characters. Markus Kuhn <http://www.cl.cam.ac.uk/~mgk25/> did
|
||||
most 6x13 glyphs and the italic fonts and provided many more glyphs,
|
||||
coordination, and quality assurance for the other fonts. Mark Leisher
|
||||
<mleisher@crl.nmsu.edu> contributed to 6x13 Armenian, Georgian, the
|
||||
first version of Latin Extended Block A and some Cyrillic. Serge V.
|
||||
Vakulenko <vak@crox.net.kiae.su> donated the original Cyrillic glyphs
|
||||
from his 6x13 ISO 8859-5 font. Nozomi Ytow <nozomi@biol.tsukuba.ac.jp>
|
||||
contributed 6x13 halfwidth Katakana. Henning Brunzel
|
||||
<hbrunzel@meta-systems.de> contributed glyphs to 10x20.bdf. Theppitak
|
||||
Karoonboonyanan <thep@linux.thai.net> contributed Thai for 7x13,
|
||||
7x13B, 7x13O, 7x14, 7x14B, 8x13, 8x13B, 8x13O, 9x15, 9x15B, and 10x20.
|
||||
Karl Koehler <koehler@or.uni-bonn.de> contributed Arabic to 9x15,
|
||||
9x15B, and 10x20 and Roozbeh Pournader <roozbeh@sharif.ac.ir> and
|
||||
Behdad Esfahbod revised and extended Arabic in 10x20. Raphael Finkel
|
||||
<raphael@cs.uky.edu> revised Hebrew/Yiddish in 10x20. Jungshik Shin
|
||||
<jshin@pantheon.yale.edu> prepared 18x18ko.bdf. Won-kyu Park
|
||||
<wkpark@chem.skku.ac.kr> prepared the Hangul glyphs used in 12x13ja.
|
||||
Janne V. Kujala <jvk@iki.fi> contributed 4x6. Daniel Yacob
|
||||
<perl@geez.org> revised some Ethiopic glyphs. Ted Zlatanov
|
||||
<tzz@lifelogs.com> did some 7x14. Mikael Öhman <micketeer@gmail.com>
|
||||
worked on 6x12.
|
||||
|
||||
The fonts are still maintained by Markus Kuhn and the original
|
||||
distribution can be found at:
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
|
369
fonts/README
Normal file
@ -0,0 +1,369 @@
|
||||
|
||||
Unicode versions of the X11 "misc-fixed-*" fonts
|
||||
------------------------------------------------
|
||||
|
||||
Markus Kuhn <http://www.cl.cam.ac.uk/~mgk25/> -- 2008-04-21
|
||||
|
||||
|
||||
This package contains the X Window System bitmap fonts
|
||||
|
||||
-Misc-Fixed-*-*-*--*-*-*-*-C-*-ISO10646-1
|
||||
|
||||
These are Unicode (ISO 10646-1) extensions of the classic ISO 8859-1
|
||||
X11 terminal fonts that are widely used with many X11 applications
|
||||
such as xterm, emacs, etc.
|
||||
|
||||
COVERAGE
|
||||
--------
|
||||
|
||||
None of these fonts covers Unicode completely. Complete coverage
|
||||
simply would not make much sense here. Unicode 5.1 contains over
|
||||
100000 characters, and the large majority of them are
|
||||
Chinese/Japanese/Korean Han ideographs (~70000) and Korean Hangul
|
||||
Syllables (~11000) that cannot adequately be displayed in the small
|
||||
pixel sizes of the fixed fonts. Similarly, Arabic characters are
|
||||
difficult to fit nicely together with European characters into the
|
||||
fixed character cells and X11 lacks the ligature substitution
|
||||
mechanisms required for using Indic scripts.
|
||||
|
||||
Therefore these fonts primarily attempt to cover Unicode subsets that
|
||||
fit together with European scripts. This includes the Latin, Greek,
|
||||
Cyrillic, Armenian, Georgian, and Hebrew scripts, plus a lot of
|
||||
linguistic, technical and mathematical symbols. Some of the fixed
|
||||
fonts now also cover Arabic, Thai, Ethiopian, halfwidth Katakana, and
|
||||
some other non-European scripts.
|
||||
|
||||
We have defined 3 different target character repertoires (ISO 10646-1
|
||||
subsets) that the various fonts were checked against for minimal
|
||||
guaranteed coverage:
|
||||
|
||||
TARGET1 617 characters
|
||||
Covers all characters of ISO 8859 part 1-5,7-10,13-16,
|
||||
CEN MES-1, ISO 6937, Microsoft CP1251/CP1252, DEC VT100
|
||||
graphics symbols, and the replacement and default
|
||||
character. It is intended for small bold, italic, and
|
||||
proportional fonts, for which adding block graphics
|
||||
characters would make little sense. This repertoire
|
||||
covers the following ISO 10646-1:2000 collections
|
||||
completely: 1-3, 8, 12.
|
||||
|
||||
TARGET2 886 characters
|
||||
Adds to TARGET1 the characters of the Adobe/Microsoft
|
||||
Windows Glyph List 4 (WGL4), plus a selected set of
|
||||
mathematical characters (covering most of ISO 31-11
|
||||
high-school level math symbols) and some combining
|
||||
characters. It is intended to be covered by all normal
|
||||
"fixed" fonts and covers all European IBM, Microsoft, and
|
||||
Macintosh character sets. This repertoire covers the
|
||||
following ISO 10646-1:2000 (including Amd 1:2002)
|
||||
collections completely: 1-3, 8, 12, 33, 45.
|
||||
|
||||
TARGET3 3282 characters
|
||||
|
||||
Adds to TARGET2 all characters of all European scripts
|
||||
(Latin, Greek, Cyrillic, Armenian, Georgian), all
|
||||
phonetic alphabet symbols, many mathematical symbols
|
||||
(including all those available in LaTeX), all typographic
|
||||
punctuation, all box-drawing characters, control code
|
||||
pictures, graphical shapes and some more that you would
|
||||
expect in a very comprehensive Unicode 4.0 font for
|
||||
European users. It is intended for some of the more
|
||||
useful and more widely used normal "fixed" fonts. This
|
||||
repertoire is, with two exceptions, a superset of all
|
||||
graphical characters in CEN MES-3A and covers the
|
||||
following ISO 10646-1:2000 (including Amd 1:2002)
|
||||
collections completely: 1-12, 27, 30-31, 32 (only
|
||||
graphical characters), 33-42, 44-47, 63, 65, 70 (only
|
||||
graphical characters).
|
||||
|
||||
[The two MES-3A characters deliberately omitted are the
|
||||
angle bracket characters U+2329 and U+232A. ISO and CEN
|
||||
appears to have included these into collection 40 and
|
||||
MES-3A by accident, because there they are the only
|
||||
characters in the Unicode EastAsianWidth "wide" class.]
|
||||
|
||||
CURRENT STATUS:
|
||||
|
||||
6x13.bdf 8x13.bdf 9x15.bdf 9x18.bdf 10x20.bdf:
|
||||
|
||||
Complete (TARGET3 reached and checked)
|
||||
|
||||
5x7.bdf 5x8.bdf 6x9.bdf 6x10.bdf 6x12.bdf 7x13.bdf 7x14.bdf clR6x12.bdf:
|
||||
|
||||
Complete (TARGET2 reached and checked)
|
||||
|
||||
6x13B.bdf 7x13B.bdf 7x14B.bdf 8x13B.bdf 9x15B.bdf 9x18B.bdf:
|
||||
|
||||
Complete (TARGET1 reached and checked)
|
||||
|
||||
6x13O.bdf 7x13O.bdf 8x13O.bdf
|
||||
|
||||
Complete (TARGET1 minus Hebrew and block graphics)
|
||||
|
||||
[None of the above fonts contains any character that has in Unicode
|
||||
the East Asian Width Property "W" or "F" assigned. This way, the
|
||||
desired combination of "half-width" and "full-width" glyphs can be
|
||||
achieved easily. Most font mechanisms display a character that is not
|
||||
covered in a font by using a glyph from another font that appears
|
||||
later in a priority list, which can be arranged to be a "full-width"
|
||||
font.]
|
||||
|
||||
The supplement package
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts-asian.tar.gz
|
||||
|
||||
contains the following additional square fonts with Han characters for
|
||||
East Asian users:
|
||||
|
||||
12x13ja.bdf:
|
||||
|
||||
Covers TARGET2, JIS X 0208, Hangul, and a few more. This font is
|
||||
primarily intended to provide Japanese full-width Hiragana,
|
||||
Katakana, and Kanji for applications that take the remaining
|
||||
("halfwidth") characters from 6x13.bdf. The Greek lowercase
|
||||
characters in it are still a bit ugly and will need some work.
|
||||
|
||||
18x18ja.bdf:
|
||||
|
||||
Covers all JIS X 0208, JIS X 0212, GB 2312-80, KS X 1001:1992,
|
||||
ISO 8859-1,2,3,4,5,7,9,10,15, CP437, CP850 and CP1252 characters,
|
||||
plus a few more, where priority was given to Japanese han style
|
||||
variants. This font should have everything needed to cover the
|
||||
full ISO-2022-JP-2 (RFC 1554) repertoire. This font is primarily
|
||||
intended to provide Japanese full-width Hiragana, Katakana, and
|
||||
Kanji for applications that take the remaining ("halfwidth")
|
||||
characters from 9x18.bdf.
|
||||
|
||||
18x18ko.bdf:
|
||||
|
||||
Covers the same repertoire as 18x18ja plus full coverage of all
|
||||
Hangul syllables and priority was given to Hanja glyphs in the
|
||||
unified CJK area as they are used for writing Korean.
|
||||
|
||||
The 9x18 and 6x12 fonts are recommended for use with overstriking
|
||||
combining characters.
|
||||
|
||||
Bug reports, suggestions for improvement, and especially contributed
|
||||
extensions are very welcome!
|
||||
|
||||
INSTALLATION
|
||||
------------
|
||||
|
||||
You install the fonts under Unix roughly like this (details depending
|
||||
on your system of course):
|
||||
|
||||
System-wide installation (root access required):
|
||||
|
||||
cd submission/
|
||||
make
|
||||
su
|
||||
mv -b *.pcf.gz /usr/lib/X11/fonts/misc/
|
||||
cd /usr/lib/X11/fonts/misc/
|
||||
mkfontdir
|
||||
xset fp rehash
|
||||
|
||||
Alternative: Installation in your private user directory:
|
||||
|
||||
cd submission/
|
||||
make
|
||||
mkdir -p ~/local/lib/X11/fonts/
|
||||
mv *.pcf.gz ~/local/lib/X11/fonts/
|
||||
cd ~/local/lib/X11/fonts/
|
||||
mkfontdir
|
||||
xset +fp ~/local/lib/X11/fonts (put this last line also in ~/.xinitrc)
|
||||
|
||||
Now you can have a look at say the 6x13 font with the command
|
||||
|
||||
xfd -fn '-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1'
|
||||
|
||||
If you want to have short names for the Unicode fonts, you can also
|
||||
append the fonts.alias file to that in the directory where you install
|
||||
the fonts, call "mkfontdir" and "xset fp rehash" again, and then you
|
||||
can also write
|
||||
|
||||
xfd -fn 6x13U
|
||||
|
||||
Note: If you use an old version of xfontsel, you might notice that it
|
||||
treats every font that contains characters >0x00ff as a Japanese JIS
|
||||
font and therefore selects inappropriate sample characters for display
|
||||
of ISO 10646-1 fonts. An updated xfontsel version with this bug fixed
|
||||
comes with XFree86 4.0 / X11R6.8 or newer.
|
||||
|
||||
If you use the Exceed X server on Microsoft Windows, then you will
|
||||
have to convert the BDF files into Microsoft FON files using the
|
||||
"Compile Fonts" function of Exceed xconfig. See the file exceed.txt
|
||||
for more information.
|
||||
|
||||
There is one significant efficiency problem that X11R6 has with the
|
||||
sparsely populated ISO10646-1 fonts. X11 transmits and allocates 12
|
||||
bytes with the XFontStruct data structure for the difference between
|
||||
the lowest and the highest code value found in a font, no matter
|
||||
whether the code positions in between are used for characters or not.
|
||||
Even a tiny font that contains only two glyphs at positions 0x0000 and
|
||||
0xfffd causes 12 bytes * 65534 codes = 786 kbytes to be requested and
|
||||
stored by the client. Since all the ISO10646-1 BDF files provided in
|
||||
this package contain characters in the U+00xx (ASCII) and U+ffxx
|
||||
(ligatures, etc.) range, all of them would result in 786 kbyte large
|
||||
XCharStruct arrays in the per_char array of the corresponding
|
||||
XFontStruct (even for CharCell fonts!) when loaded by an X client.
|
||||
Until this problem is fixed by extending the X11 font protocol and
|
||||
implementation, non-CJK ISO10646-1 fonts that lack the (anyway not
|
||||
very interesting) characters above U+31FF seem to be the best
|
||||
compromise. The bdftruncate.pl program in this package can be used to
|
||||
deactivate any glyphs above a threshold code value in BDF files. This
|
||||
way, we get relatively memory-economic ISO10646-1 fonts that cause
|
||||
"only" 150 kbyte large XCharStruct arrays to be allocated. The
|
||||
deactivated glyphs are still present in the BDF files, but with an
|
||||
encoding value of -1 that causes them to be ignored.
|
||||
|
||||
The ISO10646-1 fonts can not only be used directly by Unicode aware
|
||||
software, they can also be used to create any 8-bit font. The
|
||||
ucs2any.pl Perl script converts a ISO10646-1 BDF font into a BDF font
|
||||
file with some different encoding. For instance the command
|
||||
|
||||
perl ucs2any.pl 6x13.bdf MAPPINGS/8859-7.TXT ISO8859-7
|
||||
|
||||
will generate the file 6x13-ISO8859-7.bdf according to the 8859-7.TXT
|
||||
Latin/Greek mapping table, which available from
|
||||
<ftp://ftp.unicode.org/Public/MAPPINGS/>. [The shell script
|
||||
./map_fonts automatically generates a subdirectory derived-fonts/ with
|
||||
many *.bdf and *.pcf.gz 8-bit versions of all the
|
||||
-misc-fixed-*-iso10646-1 fonts.]
|
||||
|
||||
When you do a "make" in the submission/ subdirectory as suggested in
|
||||
the installation instructions above, this will generate exactly the
|
||||
set of fonts that have been submitted to the XFree86 project for
|
||||
inclusion into XFree86 4.0. These consists of all the ISO10646-1 fonts
|
||||
processed with "bdftruncate.pl U+3200" plus a selected set of derived
|
||||
8-bit fonts generated with ucs2any.pl.
|
||||
|
||||
Every font comes with a *.repertoire-utf8 file that lists all the
|
||||
characters in this font.
|
||||
|
||||
|
||||
CONTRIBUTING
|
||||
------------
|
||||
|
||||
If you want to help me in extending or improving the fonts, or if you
|
||||
want to start your own ISO 10646-1 font project, you will have to edit
|
||||
BDF font files. This is most comfortably done with the gbdfed font
|
||||
editor (version 1.3 or higher), which is available from
|
||||
|
||||
http://crl.nmsu.edu/~mleisher/gbdfed.html
|
||||
|
||||
Once you are familiar with gbdfed, you will notice that it is no
|
||||
problem to design up to 100 nice characters per hour (even more if
|
||||
only placing accents is involved).
|
||||
|
||||
Information about other X11 font tools and Unicode fonts for X11 in
|
||||
general can be found on
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/ucs-fonts.html
|
||||
|
||||
The latest version of this package is available from
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/download/ucs-fonts.tar.gz
|
||||
|
||||
If you want to contribute, then get the very latest version of this
|
||||
package, check which glyphs are still missing or inappropriate for
|
||||
your needs, and send me whatever you had the time to add and fix. Just
|
||||
email me the extended BDF-files back, or even better, send me a patch
|
||||
file of what you changed. The best way of preparing a patch file is
|
||||
|
||||
./touch_id newfile.bdf
|
||||
diff -d -u -F STARTCHAR oldfile.bdf newfile.bdf >file.diff
|
||||
|
||||
which ensures that the patch file preserves information about which
|
||||
exact version you worked on and what character each "hunk" changes.
|
||||
|
||||
I will try to update this packet on a daily basis. By sending me
|
||||
extensions to these fonts, you agree that the resulting improved font
|
||||
files will remain in the public domain for everyone's free use. Always
|
||||
make sure to load the very latest version of the package immediately
|
||||
before your start, and send me your results as soon as you are done,
|
||||
in order to avoid revision overlaps with other contributors.
|
||||
|
||||
Please try to be careful with the glyphs you generate:
|
||||
|
||||
- Always look first at existing similar characters in order to
|
||||
preserve a consistent look and feel for the entire font and
|
||||
within the font family. For block graphics characters and geometric
|
||||
symbols, take care of correct alignment.
|
||||
|
||||
- Read issues.txt, which contains some design hints for certain
|
||||
characters.
|
||||
|
||||
- All characters of CharCell (C) fonts must strictly fit into
|
||||
the pixel matrix and absolutely no out-of-box ink is allowed.
|
||||
|
||||
- The character cells will be displayed directly next to each other,
|
||||
without any additional pixels in between. Therefore, always make
|
||||
sure that at least the rightmost pixel column remains white, as
|
||||
otherwise letters will stick together, except of course for
|
||||
characters -- like Arabic or block graphics -- that are supposed to
|
||||
stick together.
|
||||
|
||||
- Place accents as low as possible on the Latin characters.
|
||||
|
||||
- Try to keep the shape of accents consistent among each other and
|
||||
with the combining characters in the U+03xx range.
|
||||
|
||||
- Use gbdfed only to edit the BDF file directly and do not import
|
||||
the font that you want to edit from the X server. Use gbdfed 1.3
|
||||
or higher.
|
||||
|
||||
- The glyph names should be the Adobe names for Unicode characters
|
||||
defined at
|
||||
|
||||
http://www.adobe.com/devnet/opentype/archives/glyph.html
|
||||
|
||||
which gbdfed can set automatically. To make the Edit/Rename Glyphs/
|
||||
Adobe Names function work, you have to download the file
|
||||
|
||||
http://www.adobe.com/devnet/opentype/archives/glyphlist.txt
|
||||
|
||||
and configure its location either in Edit/Preferences/Editing Options/
|
||||
Adobe Glyph List, or as "adobe_name_file" in "~/.gbdfed".
|
||||
|
||||
- Be careful to not change the FONTBOUNDINGBOX box accidentally in
|
||||
a patch.
|
||||
|
||||
You should have a copy of the ISO 10646 standard
|
||||
|
||||
ISO/IEC 10646:2003, Information technology -- Universal
|
||||
Multiple-Octet Coded Character Set (UCS),
|
||||
International Organization for Standardization, Geneva, 2003.
|
||||
http://standards.iso.org/ittf/PubliclyAvailableStandards/
|
||||
|
||||
and/or the Unicode 5.0 book:
|
||||
|
||||
The Unicode Consortium: The Unicode Standard, Version 5.0,
|
||||
Reading, MA, Addison-Wesley, 2006,
|
||||
ISBN 9780321480910.
|
||||
http://www.amazon.com/exec/obidos/ASIN/0321480910/mgk25
|
||||
|
||||
All these fonts are from time to time resubmitted to the X.Org
|
||||
project, XFree86 (they have been in there since XFree86 4.0), and to
|
||||
other X server developers for inclusion into their normal X11
|
||||
distributions.
|
||||
|
||||
Starting with XFree86 4.0, xterm has included UTF-8 support. This
|
||||
version is also available from
|
||||
|
||||
http://dickey.his.com/xterm/xterm.html
|
||||
|
||||
Please make the developer of your favourite software aware of the
|
||||
UTF-8 definition in RFC 2279 and of the existence of this font
|
||||
collection. For more information on how to use UTF-8, please check out
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/unicode.html
|
||||
ftp://ftp.ilog.fr/pub/Users/haible/utf8/Unicode-HOWTO.html
|
||||
|
||||
where you will also find information on joining the
|
||||
linux-utf8@nl.linux.org mailing list.
|
||||
|
||||
A number of UTF-8 example text files can be found in the examples/
|
||||
subdirectory or on
|
||||
|
||||
http://www.cl.cam.ac.uk/~mgk25/ucs/examples/
|
||||
|
72
fonts/README.md
Normal file
@ -0,0 +1,72 @@
|
||||
## Provided fonts
|
||||
These are BDF fonts, a simple bitmap font-format that can be created
|
||||
by many font tools. Given that these are bitmap fonts, they will look good on
|
||||
very low resolution screens such as the LED displays.
|
||||
|
||||
Fonts in this directory (except tom-thumb.bdf) are public domain (see the [README](./README)) and
|
||||
help you to get started with the font support in the API or the `text-util`
|
||||
from the utils/ directory.
|
||||
|
||||
Tom-Thumb.bdf is included in this directory under [MIT license](http://vt100.tarunz.org/LICENSE). Tom-thumb.bdf was created by [@robey](http://twitter.com/robey) and originally published at https://robey.lag.net/2010/01/23/tiny-monospace-font.html
|
||||
|
||||
The texguire-27.bdf font was created using the [otf2bdf] tool from the TeX Gyre font.
|
||||
```
|
||||
otf2bdf -v -o texgyre-27.bdf -r 72 -p 27 texgyreadventor-regular.otf
|
||||
```
|
||||
|
||||
## Create your own
|
||||
|
||||
Fonts are in a human readable and editbable `*.bdf` format, but unless you
|
||||
like reading and writing pixels in hex, generating them is probably easier :)
|
||||
|
||||
You can use any font-editor to generate a BDF font or use the conversion
|
||||
tool [otf2bdf] to create one from some other font format.
|
||||
|
||||
Here is an example how you could create a 30pixel high BDF font from some
|
||||
TrueType font:
|
||||
|
||||
```bash
|
||||
otf2bdf -v -o myfont.bdf -r 72 -p 30 /path/to/font-Bold.ttf
|
||||
```
|
||||
|
||||
## Getting otf2bdf
|
||||
|
||||
Installing the tool should be fairly straight-foward
|
||||
|
||||
```
|
||||
sudo apt-get install otf2bdf
|
||||
```
|
||||
|
||||
## Compiling otf2bdf
|
||||
|
||||
If you like to compile otf2bdf, you might notice that the configure script
|
||||
uses some old way of getting the freetype configuration. There does not seem
|
||||
to be much activity on the mature code, so let's patch that first:
|
||||
|
||||
```
|
||||
sudo apt-get install -y libfreetype6-dev pkg-config autoconf
|
||||
git clone https://github.com/jirutka/otf2bdf.git # check it out
|
||||
cd otf2bdf
|
||||
patch -p1 <<"EOF"
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -5,8 +5,8 @@ AC_INIT(otf2bdf.c)
|
||||
AC_PROG_CC
|
||||
|
||||
OLDLIBS=$LIBS
|
||||
-LIBS="$LIBS `freetype-config --libs`"
|
||||
-CPPFLAGS="$CPPFLAGS `freetype-config --cflags`"
|
||||
+LIBS="$LIBS `pkg-config freetype2 --libs`"
|
||||
+CPPFLAGS="$CPPFLAGS `pkg-config freetype2 --cflags`"
|
||||
AC_CHECK_LIB(freetype, FT_Init_FreeType, LIBS="$LIBS -lfreetype",[
|
||||
AC_MSG_ERROR([Can't find Freetype library! Compile FreeType first.])])
|
||||
AC_SUBST(LIBS)
|
||||
EOF
|
||||
|
||||
autoconf # rebuild configure script
|
||||
./configure # run configure
|
||||
make # build the software
|
||||
sudo make install # install it
|
||||
```
|
||||
|
||||
[otf2bdf]: https://github.com/jirutka/otf2bdf
|
22736
fonts/clR6x12.bdf
Normal file
BIN
fonts/clR6x12.pbm
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
fonts/clR6x12.pil
Normal file
32869
fonts/helvR12.bdf
Normal file
BIN
fonts/helvR12.pbm
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
fonts/helvR12.pil
Normal file
30577
fonts/texgyre-27.bdf
Normal file
BIN
fonts/texgyre-27.pbm
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
fonts/texgyre-27.pil
Normal file
2365
fonts/tom-thumb.bdf
Normal file
BIN
fonts/tom-thumb.pbm
Normal file
After Width: | Height: | Size: 442 B |
BIN
fonts/tom-thumb.pil
Normal file
@ -44,9 +44,8 @@ def process_file(path, filename):
|
||||
for row in new_csv:
|
||||
default_csv.writerow(row)
|
||||
|
||||
def ShutdownPI():
|
||||
print('SHUTTING DOWN')
|
||||
os.system("sudo shutdown now")
|
||||
|
||||
|
||||
|
||||
app = Flask(__name__)
|
||||
@app.route("/", methods=['GET', 'POST'])
|
||||
@ -144,7 +143,7 @@ def matrix():
|
||||
#child.sendline('sent from server')
|
||||
|
||||
#process = Popen(["sudo", "-E", "python3", "stockTicker.py"], stdin=PIPE, stdout=PIPE, stderr=PIPE)
|
||||
child.sendline('R')
|
||||
child.sendline('S')
|
||||
|
||||
print('back in flask')
|
||||
|
||||
@ -163,7 +162,7 @@ def matrix():
|
||||
pass
|
||||
try:
|
||||
LastCommand = 'shutdown'
|
||||
ShutdownPI()
|
||||
os.system("sudo shutdown now")
|
||||
except:
|
||||
print("couldn't shutdown")
|
||||
return hello()
|
||||
|
@ -58,7 +58,7 @@ class StockTicker():
|
||||
options.hardware_mapping = 'adafruit-hat' # If you have an Adafruit HAT: 'adafruit-hat'
|
||||
options.gpio_slowdown = 3
|
||||
self.matrix = RGBMatrix(options = options)
|
||||
self.finnhubClient = finnhub.Client(api_key=self.SandboxApiKey)
|
||||
self.finnhubClient = finnhub.Client(api_key=self.ApiKey)
|
||||
|
||||
def openImage(self, image_file):
|
||||
image = Image.open(image_file)
|
||||
@ -195,7 +195,7 @@ class StockTicker():
|
||||
|
||||
#Draw Ticker, current and change onto one image
|
||||
def textToImage(self, TICKER, CURRENT, CHANGE, ARROW):
|
||||
font = ImageFont.load("7x14.pil")
|
||||
font = ImageFont.load("/home/pi/Desktop/stock_ticker/fonts/10x20.pil")
|
||||
img = Image.new('RGB', (150, 32))
|
||||
d = ImageDraw.Draw(img)
|
||||
|
||||
@ -226,10 +226,7 @@ class StockTicker():
|
||||
x_offset += im.size[0]
|
||||
return new_im
|
||||
|
||||
#Display the image onto the matrix
|
||||
def displayImage(self, IMAGE):
|
||||
print('k')
|
||||
return 0
|
||||
|
||||
|
||||
#Get current prices and day prices for the ticker then format the response into an array
|
||||
def getStockPrices(self, SYMBOLS):
|
||||
@ -274,7 +271,7 @@ class StockTicker():
|
||||
self.matrix.SetPixel(x , y , 0,0,0)
|
||||
|
||||
#Connect all the pieces togeather creating 1 long final stock image
|
||||
def GetfullStockImage(self):
|
||||
def getFullStockImage(self):
|
||||
|
||||
self.ApiCalledError = False
|
||||
self.ListStocks = []
|
||||
@ -319,7 +316,7 @@ class StockTicker():
|
||||
def displayMatrix(self):
|
||||
#os.system("sudo ./demo -D1 final.ppm -t " + str(displayTime) +" -m "+ str(speedDisplay) +" --led-gpio-mapping=adafruit-hat --led-rows=32 --led-cols=256")
|
||||
#os.system("sudo ./demo -D1 final.ppm -t " + str(self.displayTime) +" -m "+ str(self.speedDisplay) +" --led-gpio-mapping=adafruit-hat --led-rows=64 --led-cols=64 --led-slowdown-gpio=4 ")
|
||||
self.ScrollImageTransition(['final.ppm', 'final.ppm'], offset_x = 0, offset_y = 0, delay = 0.05)
|
||||
self.ScrollImageTransition(['final.ppm', 'final.ppm'], offset_x = 0, offset_y = 0, delay = 0.02)
|
||||
#Retrieve symbols from the CSV file
|
||||
def GetSymbols(self):
|
||||
|
||||
@ -379,12 +376,15 @@ if __name__ == '__main__':
|
||||
|
||||
#print(sys.stdin.readlines())
|
||||
stock_ticker = StockTicker()
|
||||
|
||||
stock_ticker.GetSymbols()
|
||||
stock_ticker.getFullStockImage()
|
||||
stock_ticker.displayMatrix()
|
||||
|
||||
|
||||
while True:
|
||||
msg = getInput()
|
||||
if msg == 'R':
|
||||
if msg == 'S':
|
||||
stock_ticker.getFullStockImage()
|
||||
stock_ticker.displayMatrix()
|
||||
|
||||
|
||||
|