Skip to content

Commit

Permalink
Improve final alef after kashida
Browse files Browse the repository at this point in the history
  • Loading branch information
khaledhosny committed Aug 25, 2024
1 parent c9b4c33 commit 3dbf737
Show file tree
Hide file tree
Showing 7 changed files with 236 additions and 5 deletions.
Binary file modified docs/assets/fonts/RaqqSura.woff2
Binary file not shown.
Binary file modified fonts/RaqqSura.ttf
Binary file not shown.
18 changes: 18 additions & 0 deletions sources/RaqqSura.glyphspackage/fontinfo.plist
Original file line number Diff line number Diff line change
Expand Up @@ -804,6 +804,10 @@ lookup before_beh {
sub @ain by @ain [_c.ain.init.beh _c.ain.medi.beh];
sub @feh by @feh [_c.feh.init.beh _c.feh.medi.beh];
sub kashida-ar by kashida-ar _c.ain.init.beh;
sub alef-ar.fina by alef-ar.fina.kashida;
sub alef-ar.fina.lam by alef-ar.fina.lam.kashida;
#sub lam-ar.medi.round by lam-ar.medi.round.kashida;
#sub behDotless-ar.medi.round by behDotless-ar.medi.round.kashida;
} before_beh;
lookup before_dal {
Expand Down Expand Up @@ -841,6 +845,14 @@ lookup before_yeh {
sub @before_yeh by @before_yeh _c.ain.yeh;
} before_yeh;
lookup rclt_connection_sura {
lookupflag IgnoreMarks;
sub [kashida-ar]'
[alef-ar.fina alef-ar.fina.lam
behDotless-ar.medi.round lam-ar.medi.round]' lookup before_beh
;
} rclt_connection_sura;
lookup rclt_connection {
lookupflag IgnoreMarks;
Expand All @@ -852,6 +864,10 @@ lookup rclt_connection {
by [kaf-ar.init.alt kaf-ar.medi.alt]
;
sub [kashida-ar]'
[alef-ar.fina behDotless-ar.medi.round lam-ar.medi.round]' lookup before_beh
;
sub @before_beh' lookup before_beh
[$[rightKerningGroup = \"beh\"] fehDotless-ar.medi fehDotless-ar.fina]
;
Expand Down Expand Up @@ -971,6 +987,7 @@ tag = rlig;
{
code = "lookup rclt_yehbarree_baseline;
#lookup rclt_connection;
lookup rclt_connection_sura;
lookup rclt_fathatan;
lookup rclt_kasratan;
";
Expand Down Expand Up @@ -1282,6 +1299,7 @@ GSOffsetPosition = 1;
GSOffsetProportional = 1;
GSOffsetVertical = 10;
};
visible = 1;
}
);
instances = (
Expand Down
111 changes: 111 additions & 0 deletions sources/RaqqSura.glyphspackage/glyphs/alef-ar.fina.kashida.glyph
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
{
glyphname = "alef-ar.fina.kashida";
kernLeft = alef.fina;
layers = (
{
anchors = (
{
name = damma;
pos = (-47,61);
},
{
name = entry;
pos = (198,0);
},
{
name = fatha;
pos = (114,650);
},
{
name = kasra;
pos = (66,-56);
},
{
name = madda;
pos = (-97,635);
}
);
attr = {
colorPalette = 4;
};
backgroundImage = {
alpha = 80;
angle = 1;
imagePath = "images/MS-ADD-01116-000-00003.jpg";
locked = 1;
pos = (-4909,-2944);
scale = (5,5);
};
layerId = m01;
shapes = (
{
closed = 1;
nodes = (
(198,0,l),
(198,110,l),
(153,110,o),
(83,126,o),
(77,228,cs),
(72,317,o),
(62,618,o),
(50,779,cs),
(49,799,o),
(44,791,o),
(37,780,cs),
(15,744,o),
(-27,700,o),
(-54,683,c),
(-45,633,o),
(-40,623,o),
(-33,550,cs),
(-23,436,o),
(-17,298,o),
(-9,149,cs),
(-5,76,o),
(-9,0,o),
(178,0,cs)
);
}
);
width = 198;
},
{
associatedMasterId = m01;
attr = {
colorPalette = 1;
};
layerId = "71CEAFC8-0E0A-4757-824F-4661413A707E";
name = "Regular 9 Jan 24 at 19:02";
shapes = (
{
closed = 1;
nodes = (
(198,10,l),
(198,100,l),
(151,100,o),
(74,117,o),
(67,227,cs),
(62,315,o),
(52,605,o),
(41,768,c),
(19,735,o),
(-17,697,o),
(-43,678,c),
(-35,635,o),
(-30,622,o),
(-23,551,cs),
(-13,437,o),
(-7,298,o),
(1,150,cs),
(5,76,o),
(2,10,o),
(178,10,cs)
);
}
);
visible = 1;
width = 198;
}
);
metricRight = "=0";
}
100 changes: 100 additions & 0 deletions sources/RaqqSura.glyphspackage/glyphs/alef-ar.fina.lam.kashida.glyph
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
{
glyphname = "alef-ar.fina.lam.kashida";
kernLeft = alef.fina;
layers = (
{
anchors = (
{
name = damma;
pos = (-76,61);
},
{
name = entry;
pos = (211,0);
},
{
name = fatha;
pos = (135,650);
},
{
name = kasra;
pos = (57,-56);
},
{
name = madda;
pos = (-86,635);
}
);
attr = {
colorPalette = 4;
};
backgroundImage = {
alpha = 80;
angle = 1;
imagePath = "images/MS-ADD-01116-000-00003.jpg";
locked = 1;
pos = (-4888,-2944);
scale = (5,5);
};
layerId = m01;
shapes = (
{
closed = 1;
nodes = (
(166,110,o),
(90,126,o),
(90,228,cs),
(90,781,ls),
(91,808,o),
(79,795,o),
(71,784,cs),
(50,755,o),
(20,714,o),
(-10,689,c),
(-10,179,ls),
(-10,106,o),
(-10,0,o),
(177,0,cs),
(211,0,l),
(211,110,l)
);
}
);
width = 211;
},
{
associatedMasterId = m01;
attr = {
colorPalette = 1;
};
layerId = "71CEAFC8-0E0A-4757-824F-4661413A707E";
name = "Regular 9 Jan 24 at 19:02";
shapes = (
{
closed = 1;
nodes = (
(164,100,o),
(80,118,o),
(80,228,cs),
(80,781,l),
(80,781,o),
(87,789,o),
(79,778,cs),
(59,750,o),
(30,710,o),
(0,684,c),
(0,179,ls),
(0,106,o),
(0,10,o),
(177,10,cs),
(211,10,l),
(211,100,l)
);
}
);
visible = 1;
width = 211;
}
);
metricRight = "=0";
}
2 changes: 2 additions & 0 deletions sources/RaqqSura.glyphspackage/order.plist
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ space,
"alef-ar",
"alef-ar.lam",
"alef-ar.fina",
"alef-ar.fina.kashida",
"alef-ar.fina.lam",
"alef-ar.fina.lam.kashida",
"alef-ar.fina.short",
"behDotless-ar",
"behDotless-ar.fina",
Expand Down
10 changes: 5 additions & 5 deletions tests/shaping.json
Original file line number Diff line number Diff line change
Expand Up @@ -4964,7 +4964,7 @@
"input": "كـا",
"expectation": {
"default": "alef-ar.fina.kashida=2+219|kashida-ar=1+100|kaf-ar.init=0+765",
"RaqqSura.ttf": "alef-ar.fina=2+90|kashida-ar=1+100|kaf-ar.init=0+765"
"RaqqSura.ttf": "alef-ar.fina.kashida=2+198|kashida-ar=1+100|kaf-ar.init=0+765"
}
},
{
Expand Down Expand Up @@ -5601,7 +5601,7 @@
"input": "نـا",
"expectation": {
"default": "alef-ar.fina.kashida=2+219|kashida-ar=1+100|dotabove-ar=0@2,299+0|behDotless-ar.init=0+130",
"RaqqSura.ttf": "alef-ar.fina=2+90|kashida-ar=1+100|dotabove-ar=0@-20,297+0|behDotless-ar.init=0+100"
"RaqqSura.ttf": "alef-ar.fina.kashida=2+198|kashida-ar=1+100|dotabove-ar=0@-20,297+0|behDotless-ar.init=0+100"
}
},
{
Expand Down Expand Up @@ -7025,7 +7025,7 @@
"input": "بكـا",
"expectation": {
"default": "alef-ar.fina.kashida=3+219|kashida-ar=2+100|kaf-ar.medi=1+758|dotbelow-ar=0@51,-46+0|behDotless-ar.init=0@-21,0+109",
"RaqqSura.ttf": "alef-ar.fina=3+90|kashida-ar=2+100|kaf-ar.medi=1+758|dotbelow-ar=0@72,-46+0|behDotless-ar.init=0+100"
"RaqqSura.ttf": "alef-ar.fina.kashida=3+198|kashida-ar=2+100|kaf-ar.medi=1+758|dotbelow-ar=0@72,-46+0|behDotless-ar.init=0+100"
}
},
{
Expand Down Expand Up @@ -7263,7 +7263,7 @@
"input": "صــا",
"expectation": {
"default": "alef-ar.fina.kashida=3+219|kashida-ar=2+100|kashida-ar=1+100|sad-ar.init=0+765",
"RaqqSura.ttf": "alef-ar.fina=3+90|kashida-ar=2+100|kashida-ar=1+100|sad-ar.init=0+765"
"RaqqSura.ttf": "alef-ar.fina.kashida=3+198|kashida-ar=2+100|kashida-ar=1+100|sad-ar.init=0+765"
}
},
{
Expand Down Expand Up @@ -7732,7 +7732,7 @@
"input": "نــا",
"expectation": {
"default": "alef-ar.fina.kashida=3+219|kashida-ar=2+100|kashida-ar=1+100|dotabove-ar=0@2,299+0|behDotless-ar.init=0+130",
"RaqqSura.ttf": "alef-ar.fina=3+90|kashida-ar=2+100|kashida-ar=1+100|dotabove-ar=0@-20,297+0|behDotless-ar.init=0+100"
"RaqqSura.ttf": "alef-ar.fina.kashida=3+198|kashida-ar=2+100|kashida-ar=1+100|dotabove-ar=0@-20,297+0|behDotless-ar.init=0+100"
}
},
{
Expand Down

0 comments on commit 3dbf737

Please sign in to comment.