pravins / lohit2 Goto Github PK
View Code? Open in Web Editor NEWRewriting lohit open type tables
License: Other
Rewriting lohit open type tables
License: Other
Lohit Fonts Project prerequisite to building Lohit fonts 1a. Open font in Fontforge, import .fea file and generate fonts 1b. Using Makefile - python and fontforge - make ttf 2. sfntly for building web fonts. - Download "sfntly-read-only.zip" from http://code.google.com/p/sfntly/downloads/list - Go to java folder and run $ant - Copy sfnttool.jar to /usr/share/java/ Scripts Usage:- Lohit git is now included with required Makefiles. 1)make all run this command from parent directory, it will generate all source, binary and web tarball. Once you checkout the .sfd files from lohit CVS, you just need to execute this script and you will get all .ttf files in respective language directory. You can then install those font files by copying them to ~/.fonts directory. Then execute fc-cache command and then relogin to use that font. 2)makedist.sh Use this script to generate upstream tarball used by fonts-indic SPEC to build rpms. e.g. To generate lohit-lang-$version.tar.gz follow steps as 1) Anonymous CVS access $ svn co http://svn.fedorahosted.org/svn/lohit 1) cd lohit 2) sh makedist.sh You will get upstream tarball used to build lohit-fonts-$version-1 rpm. NOTE:- This script can be used only from 2.1.1 and above version of this package. Installing font (.ttf) file: You can install .ttf font files by copying them to ~/.fonts directory. Then execute fc-cache command and then relogin to use that font. Lohit Project Information :- See https://fedorahosted.org/lohit/ for more details. Mailing list:- http://www.redhat.com/mailman/listinfo/lohit-devel-list
Hi, while trying to do next release of Tamil with autotest i found following issues.
Need to update Right bearing for these shapes. Shortcut in fontforge is Control+R for same.
While testing Lohit Bengali on http://utrrs-testing.rhcloud.com/language/bn_IN/gsub found following issues with test cases.
Test case number :- combination
@LetterModeller says he tried to compile the features for Lohit-Devanagari.ttf and OTM returned the following message:
[NOTE] Open log for OTM 3.70 on Fri Jul 18 17:14:16 2014.
[NOTE] Extern to intern conversion of 'maxp' table successfully done.
[NOTE] Extern to intern conversion of 'post' table successfully done.
[NOTE] Extern to intern conversion of 'cmap' table successfully done.
[NOTE] Extern to intern conversion of 'FFTM' table successfully done.
[NOTE] Extern to intern conversion of 'OS2' table successfully done.
[NOTE] Extern to intern conversion of 'cvt ' table successfully done.
[NOTE] Extern to intern conversion of 'fpgm' table successfully done.
[NOTE] Extern to intern conversion of 'gasp' table successfully done.
[NOTE] Extern to intern conversion of 'head' table successfully done.
[NOTE] Extern to intern conversion of 'glyf' and 'loca' tables successfully done.
[NOTE] Extern to intern conversion of 'hhea' table successfully done.
[NOTE] Extern to intern conversion of 'hmtx' table successfully done.
[NOTE] Extern to intern conversion of 'name' table successfully done.
[NOTE] Extern to intern conversion of 'prep' table successfully done.
[NOTE] Import feature file "/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea".
HOT [WARNING] [internal] Feature block seen before any language system statement. You should place languagesystem statements before any feature definition [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 5]
HOT [NOTE] Glyph "shadeva_viramadeva_alt" not in font [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 171]
HOT [NOTE] Skipping useless ligature substitution [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 171]
HOT [NOTE] Glyph "shadeva_viramadeva_alt" not in font [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 312]
HOT [NOTE] Skipping useless part of chaining contextual substitution [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 317]
syntax error at "," missing ";" [/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea 355]
HOT [FATAL] aborting because of errors
[ERROR] Hatch Features, feature file "/Volumes/Macintosh HD/Users/blokland/Desktop/Devnagari/Lohit.fea" failed with error code 1.
I would like to use ৰ as mapping for devanagari ba when using bengali font, instead of ব va.
Please let me know whether this is supported by Lohit Bengali font.
Example page: http://sanskritdocuments.org/doc_devii/dkavach.html?lang=bn
[odia] please improve shape of ka-viramasignodia-taodia
below base part should be same as naodia-virama-taodia
In http://pravin-s.blogspot.in/2013/11/how-to-lohit-ise-open-type-fonts-not.html @pravins writes that to 'lohitize' a font you can follow 6 steps:
git clone https://github.com/pravins/lohit2
cd lohit2/devanagari
(or the appropriate orthography)cp "yourfont.ttf" .
- open
yourfont.ttf
in fontforge and save as ayourfont.sfd
- open
yourfont.sfd
and update glyphs names as per lohit fonts.python ../scripts/apply_featurefile.py yourfont.sfd Lohit-.fea
- this only import gsub of lohit project, it will keep gpos tables intact.
Step 4 could be easily automated with a 3 line script.
Step 5 could also be automated, perhaps by using github.com/davelab6/pyfontaine when it is extended to check glyphnames as well as unicode points (this month I expect)
Step 6, what is the purpose of keeping gpos tables in tact? And what if they are missing? :)
I suggest making a lohitize.py
scrip that does this automatically :)
There are number of glyphs available in Lohit Odia where we can use copy reference and reduce the overall size of font.
We will do this in last stage of development, since its harmless.
Typing below sentence is Libreoffice 7.2.1.2:
बुद्धिवाद का उग्र अथवा आदर्श
the virama-radeva sign moves to isigndeva over dadeva_virama_dhadeva. Resulting incorrect redendering as given below:
बुर्द्धिवाद का उग्र अथवा आदश
This could not be Libreoffice issue as other fonts as Noto displays correct glyphs.
i think it should be viramaguj_yadeva
How to reproduce:
➜ scripts git:(test) pep8 auto_test.py
auto_test.py:3:80: E501 line too long (92 > 79 characters)
auto_test.py:19:10: E231 missing whitespace after ','
auto_test.py:19:10: E401 multiple imports on one line
auto_test.py:19:14: E231 missing whitespace after ','
auto_test.py:21:1: E302 expected 2 blank lines, found 1
auto_test.py:21:23: E231 missing whitespace after ','
auto_test.py:22:1: W191 indentation contains tabs
auto_test.py:22:11: E225 missing whitespace around operator
auto_test.py:23:1: W191 indentation contains tabs
auto_test.py:23:12: E225 missing whitespace around operator
auto_test.py:23:40: E231 missing whitespace after ','
auto_test.py:25:1: W191 indentation contains tabs
auto_test.py:25:2: E265 block comment should start with '# '
auto_test.py:25:27: W291 trailing whitespace
auto_test.py:26:1: W191 indentation contains tabs
auto_test.py:26:8: E225 missing whitespace around operator
auto_test.py:27:1: W191 indentation contains tabs
auto_test.py:27:7: E225 missing whitespace around operator
auto_test.py:29:1: W191 indentation contains tabs
auto_test.py:29:2: E265 block comment should start with '# '
auto_test.py:30:1: W191 indentation contains tabs
auto_test.py:31:1: W191 indentation contains tabs
auto_test.py:31:8: E225 missing whitespace around operator
auto_test.py:31:23: W291 trailing whitespace
auto_test.py:32:1: W191 indentation contains tabs
auto_test.py:32:61: E228 missing whitespace around modulo operator
auto_test.py:32:71: E231 missing whitespace after ','
auto_test.py:32:80: E501 line too long (81 > 79 characters)
auto_test.py:33:1: W191 indentation contains tabs
auto_test.py:33:80: E501 line too long (81 > 79 characters)
auto_test.py:33:82: W291 trailing whitespace
auto_test.py:34:1: W191 indentation contains tabs
auto_test.py:35:1: W191 indentation contains tabs
auto_test.py:35:18: E225 missing whitespace around operator
auto_test.py:35:34: W291 trailing whitespace
auto_test.py:36:1: W191 indentation contains tabs
auto_test.py:37:1: W191 indentation contains tabs
auto_test.py:37:9: E225 missing whitespace around operator
auto_test.py:39:1: W191 indentation contains tabs
auto_test.py:39:2: E265 block comment should start with '# '
auto_test.py:39:30: W291 trailing whitespace
auto_test.py:40:1: W191 indentation contains tabs
auto_test.py:40:40: E228 missing whitespace around modulo operator
auto_test.py:40:47: E231 missing whitespace after ','
auto_test.py:41:1: W191 indentation contains tabs
auto_test.py:42:1: W191 indentation contains tabs
auto_test.py:43:1: W191 indentation contains tabs
auto_test.py:47:1: W191 indentation contains tabs
auto_test.py:48:1: W191 indentation contains tabs
auto_test.py:48:2: E101 indentation contains mixed spaces and tabs
auto_test.py:48:9: E271 multiple spaces after keyword
auto_test.py:49:1: W191 indentation contains tabs
auto_test.py:50:1: W191 indentation contains tabs
auto_test.py:51:1: W191 indentation contains tabs
auto_test.py:52:1: W191 indentation contains tabs
auto_test.py:52:21: E231 missing whitespace after ','
it needs to be fixed.
http://utrrs-testing.rhcloud.com/language/or/gpos
following test cases fails:
7: କୁ
8: କୂ
9: କୃ
60, 61, 134. 167, 168, 169, 193, 194, 195, 221, 222, 223, 249, 250, 261, 263, 274, 275, 276, 314, 315, 326, 327, 339, 399, 400, 401
We need to add GPOS rules here.
clean-
when typing: kadeva iisign anusvara
displays incorrect glyph iisign_ra_virama_anusvara.alt1 instead of iisigndeva_anusvaradeva.alt1.
Examples of incorrect rendering:
कीं -> र्कीं
फीं -> र्फीं
Need to replace: iisign_ra_virama_anusvara.alt1 with iisigndeva_anusvaradeva.alt1 in line #443 in Lohit Devanagari.fea file as given below
lookup PstsSub_Chain_ExtdEMatra {
lookupflag 0;
sub [\rvocalicdeva \kadeva \phadeva \qadeva \fadeva \rrvocalicdeva
\phadeva_radeva_nuktadeva \phadeva_viramadeva_radeva
\kadeva_viramadeva_kadeva \kadeva_viramadeva_tadeva
\kadeva_viramadeva_ladeva \kadeva_viramadeva_vadeva
\phadeva_viramadeva_ladeva ] [\iisigndeva \iisigndeva_anusvaradeva \iisigndeva_ra_virama
\iisign_ra_virama_anusvara ]' by [\iisigndeva.alt1
\iisigndeva_anusvaradeva.alt1 \iisigndeva_ra_virama.alt1
\iisign_ra_virama_anusvara.alt1 ];
} PstsSub_Chain_ExtdEMatra;
Ref: http://tug.org/pipermail/xetex/2015-July/026073.html
[XeTeX] Tamil Unicode fonts (bold, italic) for XeLaTeX
P. P. Narayanaswami swami at mun.ca
Sat Jul 18 17:13:42 CEST 2015
I want to type Tamil text in Ubuntu 14.04, with TeXLive 2014.
The Lohit Tamil font that comes with the Ubuntu is good normal font.
But since I cannot use font shape commands like \textbf, \slshape, etc
with this font in XeLaTeX, I need good bold and italic Tamil fonts to match
Lohit Tamil fonts. Also some fonts do not have the proper glyphs for "shrI",
"kSha" and "sha" in Tamil.
Can anyone, who is using XeLaTeX in Tamil, suggest three good matching Tamil
fonts, normal, bold, and italic shapes that also contain the glyphs "shrI",
"kSha, and "sha" to be used in the same document along with English (also bold,
italic and normal)? Thanks in advance.
\shadeva_viramadeva.alt is used in the feature file however actual glyph name in the font is \shadeva_viramadeva.mr at 3 places.
Other 2 glyph names included in the feature file but does not exist in the font:
\uni1CF5
\uni1CF6
If has blank line, it gives error. This should be handled by Exception.
I see number of glyph names getting over limit of 31 characters. Good to follow guj tag at the end. It will help us to follow AGL guidelines.
We will fix this post Alpha. u'\u09b0\u09cd\u0995\u09cd\u09a6'
We are getting issues of reordering of first i-matra this issue looks specific with Harfbuzz. For now lets have half form later once this get fixed with harfbuzz we will remove those.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.