Subset Latin

Subset Latin




🔞 ALL INFORMATION CLICK HERE 👈🏻👈🏻👈🏻

































Subset Latin

Sign up or log in to customize your list.

more stack exchange communities

company blog


Stack Overflow for Teams
– Start collaborating and sharing organizational knowledge.



Create a free Team
Why Teams?



Asked
7 years, 11 months ago


5,751 3 3 gold badges 16 16 silver badges 15 15 bronze badges



Sorted by:


Reset to default





Highest score (default)


Trending (recent votes count more)


Date modified (newest first)


Date created (oldest first)




5,184 1 1 gold badge 30 30 silver badges 36 36 bronze badges


384 2 2 silver badges 14 14 bronze badges


Not the answer you're looking for? Browse other questions tagged webfonts google-font-api woff or ask your own question .

Stack Overflow

Questions
Help



Products

Teams
Advertising
Collectives
Talent



Company

About
Press
Work Here
Legal
Privacy Policy
Terms of Service
Contact Us
Cookie Settings
Cookie Policy



Stack Exchange Network



Technology




Culture & recreation




Life & arts




Science




Professional




Business





API





Data






Accept all cookies



Customize settings


Find centralized, trusted content and collaborate around the technologies you use most.
Connect and share knowledge within a single location that is structured and easy to search.
New! Save questions or answers and organize your favorite content. Learn more .
I wanted to add a font with Google Fonts, and I have noticed an odd behavior.
I want to add a font with only the latin subset, I do not want latin-ext, cyrillic or cyrillic-ext subset, in order to lighten the code. I understand that's the default behavior, so I've done like this:
In Firefox (and the other browsers that do not support WOFF2), I get a correct output:
I thought, maybe the latin subset is not a default behavior anymore, so I added to my the subset GET parameter:
But it didn't change the output. When I go with a &subset=cyrillic , it changes in Firefox, but the Chrome output is the same.
Is there a way to output only the latin subset?
Or is just that the WOFF2 and unicode-range won't be downloaded if there is no need on the page? And in this last case, the gain from stripping the cyrillic call is just 8 lines of code ine the css file, that to say ~300 bytes, and it just doesn't worth anything?
The trick lies with this optimization:
With this, the browser knows whether it needs to download the font, depending on the characters it just loaded in the html. Chrome is currently the only one with full support for this .
MDN lists Firefox 36+ as completely ignoring this spec, therefore Google Fonts has to serve it a minimal font-face specification. The same happens with Safari.
Anyway, that was an interesting 30 minute journey on the internet which I hope helps any further internet travellers. This should lend weight towards why you could use Google Fonts as a CDN for hosting fonts for optimal performance as opposed to serving it yourself.
If you need to download font with specific set of characters from google fonts use text parameter in google font api
Thanks for contributing an answer to Stack Overflow!

By clicking “Post Your Answer”, you agree to our terms of service , privacy policy and cookie policy

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

Site design / logo © 2022 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2022.10.14.21376


By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy .




Download
Support
Resources
Developer
News
About


The special font subsets described here are based on version 5 of the fonts, not the current version. They should continue to work well. We do not currently plan to provide subsets based on version 6, as the need for subset fonts has been considerably reduced by current font and browser technology. If you have a particular need for any of these fonts to be updated to version 6 please contact us and describe your need.
SIL’s Non-Roman Script Initiative has created very comprehensive fonts for Latin and Cyrillic character sets. Charis SIL , Doulos SIL , Gentium Plus and Andika are very large fonts that cover just about every need we know about in the Latin and Cyrillic world. Now, as we move into the age of mobile phone and web usage, there is a need for fonts that are small and compact. Our fonts are over a megabyte each and that is considered much too large for mobile phone usage.
Current commercial font subsetting schemes remove the smart font information from a font when subsetting a font. While this may be acceptable for majority languages, we consider this unacceptable as so many languages in the world require smart diacritic positioning above and/or below base characters. We have now created subsets of our fonts for different regions of the world. These fonts contain both OpenType smart code and Graphite . Each regional font only contains the characters (and glyphs) that are known to be used in that region of the world. We have attempted to use the most common glyph required for that region. For instance, in Africa and parts of the Pacific the most common form for U+014A is the large form of the small ŋ ( Ŋ ), and in Europe, Eurasia and the Americas the glyph for Ŋ is most commonly based on the “N”.
Our font subset packages also contain .woff versions of our fonts. These are especially useful in the context of mobile phone and web usage. Further information on how to use .woff fonts can be found here: Using SIL Web Fonts on Webpages .
The font subsets can be downloaded from the main download page. The download contains 64 fonts; each regional subset has eight fonts. Both .ttf and .woff fonts are included in the download.
With the exception of the phonetic [Phon] font, the font subsets are intended for orthographic use only. We have not put anything in the other subsets for phonetic, transliteration, or transcription use. For those purposes, use the phonetic [Phon] subset font.
Our regional subsets are as follows:
Americas [Am] — Our hope is that all languages in the Americas (using the Latin script) are covered by this font. There are a few variant glyphs that are not represented here. For example, some languages in the Americas use the Polish-style ogonek and others use the Retrohook-style ogonek. At this point, our subset uses the Polish-style ogonek.
Asia/Pacific [APac] — This font includes Latin script support for Pinyin, Papua New Guinea, Philippines, languages from India, China and Myanmar and other countries where languages (such as Chin languages) are written with Latin script. There are a few variant glyphs that are not represented here. For example, some languages in Papua New Guinea use one style of Ŋ and other languages use the other style. It is unclear which is most common. At this point, the Asia/Pacific subset uses the capital-N style. We may change that if we learn the other style is more prevalent.
Europe/Eurasia [Eur] — This font includes Latin script support for Europe, Eastern Europe, Turkey, Azerbaijan, Kazakhstan, Kyrgyzstan, etc, — all languages in Europe and Eurasia which use the Latin script.
Vietnam [Viet] — This font includes Latin script support for traditional Vietnamese (including Vietnamese-style diacritics) plus a few extra characters used by Vietnam’s minority languages.
Phonetic [Phon] — The intent for this font is to cover all of IPA, other phonetic characters, transliteration, and transcription. In order to differentiate between U+0061 a and U+0251 ɑ , our italic Phonetic fonts require that U+0061 a always be a “double-story a” rather than a “single-story a”.
Cyrillic (Basic) [Cyr] — This font contains the characters used in Codepage 1251 (Cyrillic). It should be suitable for Russian and other large languages which use the Cyrillic script.
Cyrillic Extended [CyrE] — This font contains all characters in the Cyrillic blocks (with the exception of some historic characters). It should be suitable for modern majority and minority languages.
U+0327 COMBINING CEDILLA and U+0328 COMBINING OGONEK do not consistently position properly under some characters (such an U+014A LATIN CAPITAL LETTER ENG) in Graphite, but they do in OpenType. This should not generally be a problem as the characters affected do not usually require cedilla or ogonek.
An alternate form of U+0306 COMBINING BREVE should render in a Cyrillic style when it is combined with Cyrillic characters. The alternate works in OpenType, but not in Graphite.
The glyphs for the following characters are missing the base “O” or “U” in Charis SIL Bold Italic:
This font software is free to use, modify and redistribute according to the terms of the SIL Open Font License .
See the Developer page to report issues and get involved in development.
See the Charis SIL , Doulos SIL , Gentium or Andika font pages for information on specific fonts.
Please also consider a donation to support our work.
Copyright © 2022  SIL International

Subsetting is probably more useful for free fonts because paid fonts may require to embed them in a specific way in your site (through a CDN ), or the license you purchase may not permit subsetting.
To use glyphhanger —which is an NPM package by the way— check the project’s README on GitHub or a post by Zach Leatherman. I will use glyphhanger in one of the following examples.
pip install fonttools brotli zopfli Copy
https://fonts.googleapis.com/css2?family=Work+Sans&display=swap Copy
https://fonts.gstatic.com/s/worksans/v7/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXBi8Jpg.woff2 Copy
/* latin */
@font-face {
unicode-range : U+0000-00FF , U+0131 , U+0152-0153 , U+02BB-02BC , U+02C6 ,
U+02DA , U+02DC , U+2000-206F , U+2074 , U+20AC , U+2122 , U+2191 , U+2193 ,
U+2212 , U+2215 , U+FEFF , U+FFFD ;
} Copy
Before we begin, I want to point out that I'm running the examples on a Windows machine with the Git Bash command line.
pyftsubset WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-all.woff2 " \
--flavor=woff2 \
--layout-features= * \
--unicodes= * Copy
I’m using the backslash ( \ ) to span the command over multiple lines and make it more readable. The alternative is to remove the backslashes and write the command in a single line.
I suggest opening a text editor to paste the examples there so you can easily change them if you want. For example, the command above doesn’t work on the Windows CMD . To run multiline commands on the Windows command line, you’ll have to replace the backslash with a circumflex accent (`^`, `Shift + 6` in your keyboard).
pyftsubset WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-all-no-hinting.woff2 " \
--flavor=woff2 \
--layout-features= * \
--unicodes= * \
--no-hinting \
--desubroutinize Copy
pyftsubset \
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-google-fonts.woff2 " \
--flavor=woff2 \
--layout-features= * \
--unicodes= " U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC, \
U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC, \
U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD " Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-google-fonts-2.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC, \
U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC, \
U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD " Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-google-fonts-2.woff2 " \
--flavor=woff2 \
--layout-features+= " onum,pnum,smcp,c2sc,lnum,tnum, \
subs,sups,cswh,dlig,ss01,ss03,zero " \
--layout-features-= " dnom,numr " \
--unicodes= " U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC, \
U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC, \
U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD " Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-google-fonts-3.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC, \
U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC, \
U+2122,U+2190-21BB,U+2212,U+2215,U+F8FF,U+FEFF,U+FFFD " Copy
20 ! 21 " 22 # 23 $ 24 % 25 & 26 ' 27 ( 28 ) 29 * 2A + 2B , 2C - 2D . 2E / 2F 0 30 1 31 2 32 3 33 4 34 5 35 6 36 7 37 8 38 9 39 : 3A ; 3B < 3C = 3D > 3E ? 3F @ 40 A 41 B 42 C 43 D 44 E 45 F 46 G 47 H 48 I 49 J 4A K 4B L 4C M 4D N 4E O 4F P 50 Q 51 R 52 S 53 T 54 U 55 V 56 W 57 X 58 Y 59 Z 5A [ 5B \ 5C ] 5D ^ 5E _ 5F ` 60 a 61 b 62 c 63 d 64 e 65 f 66 g 67 h 68 i 69 j 6A k 6B l 6C m 6D n 6E o 6F p 70 q 71 r 72 s 73 t 74 u 75 v 76 w 77 x 78 y 79 z 7A { 7B | 7C } 7D ~ 7E A0 ¡ A1 ¢ A2 £ A3 ¤ A4 ¥ A5 ¦ A6 § A7 ¨ A8 © A9 ª AA « AB ¬ AC ­ AD ® AE ¯ AF ° B0 ± B1 ² B2 ³ B3 ´ B4 µ B5 ¶ B6 · B7 ¸ B8 ¹ B9 º BA » BB ¼ BC ½ BD ¾ BE ¿ BF À C0 Á C1 Â C2 Ã C3 Ä C4 Å C5 Æ C6 Ç C7 È C8 É C9 Ê CA Ë CB Ì CC Í CD Î CE Ï CF Ð D0 Ñ D1 Ò D2 Ó D3 Ô D4 Õ D5 Ö D6 × D7 Ø D8 Ù D9 Ú DA Û DB Ü DC Ý DD Þ DE ß DF à E0 á E1 â E2 ã E3 ä E4 å E5 æ E6 ç E7 è E8 é E9 ê EA ë EB ì EC í ED î EE ï EF ð F0 ñ F1 ò F2 ó F3 ô F4 õ F5 ö F6 ÷ F7 ø F8 ù F9 ú FA û FB ü FC ý FD þ FE ÿ FF
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-english.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+0000-00A0,U+00A2-00A9,U+00AC-00AE,U+00B0-00B7, \
U+00B9-00BA,U+00BC-00BE,U+00D7,U+00F7,U+2000-206F,U+2074,U+20AC, \
U+2122,U+2190-21BB,U+2212,U+2215,U+F8FF,U+FEFF,U+FFFD " Copy
glyphhanger http://localhost:3000 --spider --spider-limit=5 Copy
glyphhanger https://markoskon.com --spider --spider-limit=5 Copy
U+A,U+20,U+22,U+25-29,U+2B-3E,U+41-59,U+61-7A,U+F3,
U+3A4,U+2014,U+2019,U+201C,U+201D,U+2020,U+2021,
U+2026,U+20AC,U+2190,U+F8FF,U+1F426,U+1F4D7,U+1F4F0,U+1F525 Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-glyphhanger.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+A,U+20,U+22,U+25-29,U+2B-3E,U+41-59,U+61-7A,U+F3, \
U+3A4,U+2014,U+2019,U+201C,U+201D,U+2020,U+2021, \
U+2026,U+20AC,U+2190 " Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-minimal.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+A,U+20,U+22,U+25-29,U+2B-3E,U+41-59,U+61-7A,U+F3, \
U+3A4,U+2014,U+2019,U+201C,U+201D,U+2020,U+2021, \
U+2026,U+20AC,U+2190 " \
--no-hinting\
--desubroutinize Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-minimal-super-minimal.woff2 " \
--flavor=woff2 \
--layout-features+= " lnum,tnum " \
--layout-features-= " cswh " \
--unicodes= " U+A,U+20,U+22,U+25-29,U+2B-3E,U+41-59,U+61-7A,U+F3, \
U+3A4,U+2014,U+2019,U+201C,U+201D,U+2020,U+2021, \
U+2026,U+20AC,U+2190 " \
--no-hinting\
--desubroutinize Copy
pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-latin.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+0000-00FF " &&

pyftsubset\
WorkSans-Regular.ttf \
--output-file= " WorkSans-Regular-latin-extended-a.woff2 " \
--flavor=woff2 \
--layout-features= " kern,liga,clig,calt,ccmp,locl,mark,mkmk, \
onum,pnum,smcp,c2sc,frac,lnum,tnum,subs,sups, \
cswh,dlig,ss01,ss03,zero " \
--unicodes= " U+0100-017F " &&


Jack Dixon Wesley Woods Porn
Woman Gagging
Lana Ftv Girls

Report Page