
Google Noto Fonts - bpierre
https://www.google.com/get/noto/
======
ixtli
I don't think this communicates the _incredible_ amount of creative and
technical work required not only to simply fill out over 100,000 characters in
the UTF-8 space but to make them stylistically consistent.

~~~
rushabh
Maybe they used AI to style the fonts? Train a neural network on a particular
style (thickness, density, curvature) and then write out heuristics to
generate new fonts based on other fonts, that get classified by a neural net.
Let the bots do all the work. Might be an interesting article if the actually
did that.

~~~
stuartcw
c.f.
[https://news.ycombinator.com/item?id=8930894](https://news.ycombinator.com/item?id=8930894)

------
eganist
So in a nutshell, typefaces which literally span every single defined
character?

Are there special optimizations implemented for different use cases as well,
e.g. screen v. print and sub-varieties of each? Ten years ago with Vista,
Microsoft Typography ([https://www.microsoft.com/en-
us/Typography/default.aspx](https://www.microsoft.com/en-
us/Typography/default.aspx)) put out a family of typefaces--Cambria, Calibri,
Consolas, etc.--which were optimized specifically for sub-pixel rendering on
LCD screens while maintaining on-paper legibility. I'd be cool with Noto not
having any such optimization in mind given that the stated objective appears
to be to include every defined character, but I do wonder if it should happen
eventually.

...or maybe not, who knows. Pixel densities now have approached ludicrous
territories. It might just no longer matter at least when we're talking about
optimizing for screens.

~~~
the_unknown
At the time I wrote to one of the team members who worked there (maybe a
Program Manager - I forget exactly) and they sent me a beautiful book showing
off each of the fonts with a description of why the font was made, how it
achieves the goals, and some info on the font's designer.

I still have it at home - really impressed me with the attention to detail and
the self-styled publicity.

~~~
Adrock
It was called _Now Read This_ and it really is beautiful. As far as I know, it
was not intended to be publicly available, but you can buy a copy on Amazon:
[https://www.amazon.com/Now-Read-This-Microsoft-
Collection/dp...](https://www.amazon.com/Now-Read-This-Microsoft-
Collection/dp/B00NRKCS8C)

~~~
Jaruzel

      Currently unavailable. We don't know when or if this item will be back in stock.
    

Correction, you _could_ buy a copy on Amazon...

Own up! Who got the last one?!

------
cag_ii
Related blog post here:

[https://developers.googleblog.com/2016/10/an-open-source-
fon...](https://developers.googleblog.com/2016/10/an-open-source-font-system-
for-everyone.html)

~~~
Splendor
> "Google’s open-source Noto font family provides a beautiful and consistent
> digital type for every symbol in the Unicode standard, covering more than
> 800 languages and 110,000 characters."

Wow. That's a lot of work.

~~~
wibr
110,000 characters is not every symbol in the Unicode standard, though.
According to wikipedia Unicode 9.0 contains around 128,000.

~~~
bonoboTP
Yep, Old Hungarian is still not there, nor anywhere else except for fonts that
were specifically designed just for Old Hungarian.

I was happy when the script got included in Unicode 8.0 but if fonts don't
support it, it's not much use.

------
fazlerocks
We had to stop using this font as it didn't support back tick(`). Try typing `
multiple times in the search box.

We had reported this to Google some months back but got no response.

~~~
Normal_gaussian
A quick summary of this issue:

\- 'Dead' keys are keys used to modify the next character

\- The backtick / grave key behaved as such on a typewriter

\- ` + a = à

\- Noto web fonts behave like this

\- The latest Noto local fonts do not

\- The expected modern behaviour in English is ` + a -> `a

\- This is not necessarily the expected behaviour in other languages

~~~
oelmekki
> This is not necessarily the expected behaviour in other languages

Which language, for example?

I'm french, we have characters with grave accent ('à', 'è' and 'ù'), and we do
not expect the "` + a = à" behavior, as for one language.

EDIT: we _do_ expect that "^ + a = â", though, but that's an other thing, and
we have actually two ^ keys, one for our behavior and one for the usual
behavior.

~~~
fermuch
Brazilian Portuguese expects that behavior to write words such as "àqueles"

~~~
wst_
Forgive me, I don't want to sound xenophobic but this seems preposterous to
me. So much energy wasted. I am deeply grateful to the guys who were
developing keyboard standards in our country that I don't have to go through
such waste. When we want to use "o" with accent we just press right ALT with
"o". Simple and fast. Frankly speaking, this is first time I hear about such
weird combination just to get local characters, in western countries ofc. PC
keyboard is not mechanical one. Why someone would copy the same behavior is
beyond me.

~~~
piaste
If you write in a single language that has only a few combinations, sure. But
as the number of diacritics - letter combinations increase, dead keys become a
more attractive solution.

With just two or three Western European languages to write in, you can easily
have grave, acute and circumflex accents, umlauts, tildes, plus a couple one-
off letters (like ß for German, ç for French, or å/æ for Scandinavian
languages). Combining those with every vowel they can apply to grows too much
for the poor Alt key.

The US-International layout runs into this problem. Since Alt + A = Á, if you
want to type Ä or Å or Æ in a single keypress you have to use Alt + Q, W, or Z
respectively, which is hardly intuitive. And if you want À or Ã, you're SOL.

Dead keys (also in the US-International layout) solve this problem. I know
which keys make the tilde, umlaut, both types of accents, and circumflex. If I
want the bare symbol (or a quote in the case of umlaut) I press spacebar after
the symbol key, otherwise I press any applicable letter to output the modified
version. For example, I'm pretty sure there's a key combination for ç, but I
don't remember what it is (Alt + C is ©); however I did remember that I could
type it as ' \+ c.

The other main solution is to have a hotkey for switching language layouts -
typing in each language will be slightly faster, but when I tried it I
frequently forgot which layout I was on and had to stop, delete my mangled
output, switch language, and type again. I find dead keys much more friendly
to muscle-memory.

------
tcfunk
I keep wanting to find a font to use on the portions of my website that
contain Japanese, but they are all so big! No way I'm making my visitors
download 115MB worth of font just so it looks a little nicer.

Edit: Thanks for the tips, I will look into those options :)

~~~
acdha
Since you mentioned that your entire site isn't in Japanese, in addition to
what other people specified, I would now recommend using the CSS unicode-range
selector. That allows you to list a web font declaration with a range of
Unicode code points and most modern browsers now implement the optimization
where it only downloads the font when text on the page contains a character in
that range.

I tossed together an example several years ago:

[http://chris.improbable.org/experiments/browser/webfonts/uni...](http://chris.improbable.org/experiments/browser/webfonts/universal-
noto-sans/)

The combined example on
[http://chris.improbable.org/experiments/browser/webfonts/uni...](http://chris.improbable.org/experiments/browser/webfonts/universal-
noto-sans/single-name.html) has CSS which looks like this:

    
    
        @font-face {
            font-family: NotoSansCombined;
            src: local("NotoSans"), local("Noto Sans"), url(NotoSans-Regular.woff) format("woff");
        }
    
        @font-face {
            font-family: NotoSansCombined;
            src: local("NotoSansArmenian"), local("Noto Sans Armenian"), url(NotoSansArmenian-Regular.woff) format("woff");
            unicode-range: U+530-58F, U+FB13-FB17;
        }
    
        @font-face {
            font-family: NotoSansCombined;
            src: local("NotoSansBengali"), local("Noto Sans Bengali"), url(NotoSansBengali-Regular.woff) format("woff");
            unicode-range: U+AD, U+D7, U+F7, U+964-965, U+981-983, U+985-98C, U+98F-990, U+993-9A8, U+9AA-9B0, U+9B2, U+9B6-9B9, U+9BC-9C4, U+9C7-9C8, U+9CB-9CE, U+9D7, U+9DC-9DD, U+9DF-9E3, U+9E6-9FB, U+200B-200D, U+2013-2014, U+2018-2019, U+201C-201D, U+2026, U+20B9, U+2212, U+25CC;
        }
    
        @font-face {
            font-family: NotoSansCombined;
            src: local("NotoSansCherokee"), local("Noto Sans Cherokee"), url(NotoSansCherokee-Regular.woff) format("woff");
            unicode-range: U+13A0-13F4;
        }
    

In modern versions of Chrome, Firefox, and Safari you can see that only
downloads a few of the many language files available. This also works really
nicely with the traditional CSS font stacks if your design goals allow you to
specify system fonts which will work for many users so you can have a few
local fonts specified before the downloadable one.

~~~
tracker1
Does google fonts' css include do this directly? It's been a while since I've
considered it, but would be nice to see a font-famly 'NotoSans' and
'NotoSerif' that has all the unicode ranges spec'd.

As an aside, I'd love to see something similar in a fixed-width font (where
the asian block characters are double-width)

~~~
acdha
They did not in the past but a quick look at
[https://fonts.googleapis.com/css?family=Noto+Sans](https://fonts.googleapis.com/css?family=Noto+Sans)
shows that they do now, at least if you request it using a modern browser.

This is not surprising since the Chrome team is generally really aggressive
about performance in general and they were quick to jump on this issue:

[https://bugs.chromium.org/p/chromium/issues/detail?id=247920](https://bugs.chromium.org/p/chromium/issues/detail?id=247920)

On a related note, I've found the Chrome team to be really responsive about
i18n as well – if you report something about even fairly obscure scripts not
being supported, they usually respond rapidly. Quite pleasant to see.

------
ppierald
I always thought the term Tofu was "mojibake":
[https://en.wikipedia.org/wiki/Mojibake](https://en.wikipedia.org/wiki/Mojibake)

Wikipedia disambiguation page: for "Tofu" mentions: Slang for the empty boxes
shown in place of undisplayable code points in computer character encoding, a
form of mojibake

[https://en.wikipedia.org/wiki/Tofu_(disambiguation)](https://en.wikipedia.org/wiki/Tofu_\(disambiguation\))

~~~
derefr
Mojibake is specifically the "garbage" from getting an encoding wrong—treating
a sequence of bits as if they were a valid sequence of characters in some
encoding, when they're either not from that encoding, or not from _any_
textual encoding (because you're e.g. trying to render the contents of an
executable binary as text.)

"Tofu" is a more recent phenomena, that didn't really have a specific name
until now: when there are Unicode code-points—correctly decoded—in a document,
but you have no font installed that offers a glyph to represent them.

Mojibake results from "I did this wrong and didn't notice"; tofu results from
"I know what this is, and it's something I don't have a visual signifier for."

Mind you, often mojibake will _result in_ "tofu"; the garbage code-points you
get from bad encoding detection will turn out to be ones that don't have a
currently-defined Unicode character, so they'll show up as U+FFFD REPLACEMENT
CHARACTER (�). But that's a coincidence, rather than an equivalence.

~~~
ppierald
Thanks! That was a super helpful response!

------
samfisher83
Is Google using aws to host this.

If you look at: [https://noto-website.storage.googleapis.com/](https://noto-
website.storage.googleapis.com/)

You will see the following: <?xml version='1.0' encoding='UTF-8'?>
<ListBucketResult
xmlns='[http://doc.s3.amazonaws.com/2006-03-01'>](http://doc.s3.amazonaws.com/2006-03-01'>)
<Name>noto-website</Name> <Prefix></Prefix> <Marker></Marker>
<NextMarker>emoji/emoji_u1f468_200d_1f468_200d_1f466_200d_1f466.png</NextMarker>
<IsTruncated>true</IsTruncated> <Contents> <Key>css/emoji-zsye-color.css</Key>
<Generation>1464738619772000</Generation> <MetaGeneration>1</MetaGeneration>
<LastModified>2016-05-31T23:50:19.729Z</LastModified>
<ETag>"e3aaae52d88ced070044f59d1efe2009"</ETag> <Size>152</Size> <Owner/>
</Contents>

[http://i.imgur.com/yLiWUGq.png](http://i.imgur.com/yLiWUGq.png)

Are they using Amazon S3?

Edit:

They just changed it. @1:00 pm so it no longer mentions aws.

~~~
BrandonY
Good question. I can explain. "storage.googleapis.com" is an endpoint for
Google Cloud Storage's "XML" API. Google Cloud Storage (GCS) is a cloud blob
storage service similar to Amazon S3.

This particular API, the "XML" API, is designed to be API-compatible with S3.
The XML namespace,
'[http://doc.s3.amazonaws.com/2006-03-01'](http://doc.s3.amazonaws.com/2006-03-01'),
is therefore the same. This allows third party tools like 'boto' and the like
which work with S3 to work with GCS with only a switch in hostname.

~~~
samfisher83
Thanks for the answer. Do you know why they changed the scheme after the
initial upload?

~~~
BrandonY
I have no idea. I'm not sure what you were looking at.

If you visit just "[https://noto-
website.storage.googleapis.com/"](https://noto-
website.storage.googleapis.com/"), that's a request to list all of the objects
in the bucket, so you'll see an XML document with that namespace and the
results of a listing.

If you were trying to download a specific object from that bucket, you'd
either see the resource itself, or you'd see an XML error result of some sort
(404, 403, etc). So I assume that either you mistyped the object name once or
else the object had been deleted for some reason.

------
dorianm
It was released originally in 2013:
[https://en.m.wikipedia.org/wiki/Noto_fonts](https://en.m.wikipedia.org/wiki/Noto_fonts)

Such an amazing project

~~~
LeoPanthera
I wish Wikipedia redirected m. links to the desktop site if you aren't using a
mobile browser.

~~~
angry-hacker
Maybe it would make sense, but I personally prefer their mobile site. It's
much nicer to read. Not that their desktop site is filled with ads and
gibberish, but for whatever reason I like it more.

------
erichocean
> _The name noto is to convey the idea that Google’s goal is to see “no more
> tofu”._

Nofu would have been a better name if that's actually the goal.

------
aluminussoma
Noto fonts are great. I especially love the OFL licensing. I wanted to include
fonts in a mobile application and there was confusion on whether including a
GPL version of the fonts would force me to GPL my app - something I could not
do. I couldn't find a definite answer.

With Noto's OFL licensing, I no longer had that worry.

~~~
eveningcoffee
I think that you are looking to the GPL from the wrong perspective. I also
made this mistake.

GPL does not _force_ you to licence your application under GPL.

Instead licensing your application under GPL _allows_ you to use other GPL
licensed code.

~~~
Gaelan
That seems like a meaningless semantic difference to me. There is no practical
difference between these two sentences:

If you wish to use GPL-licensed code, your code must be open source.

If your code is open source, you may use GPL-licensed code.

~~~
etatoby
It's not meaningless. If I give something away under certain conditions, I'm
not forcing anybody to adhere to those conditions.

Instead, if they choose to adopt those conditions, they get free stuff from me
(and a lot of other people.) In other words, it's an incentive program, not a
requirement such as a law or regulation.

------
ThatMightBePaul
I wanted to try the Noto mono out for programming, but it looks like the `O`
is indistinguishable from the `0` :/

Otherwise, it's a nice looking font for the editor.

~~~
unlogic
I've just tried it, and it is absolutely the same as Droid Sans Mono (which I
love and use), barring the extra line spacing. They haven't even fixed the
kerning problem with "w".

------
kccqzy
It doesn't seem to support the Tangut script, which is added in Unicode 9.0.
It's the first thing I test if a font claims to support all languages in
Unicode. In my knowledge, I haven't really seen any general-purpose fonts
containing support for Tangut (because probably no one is going to use it). I
thought Google has already completed this project, but apparently they haven't
yet.

~~~
Mathnerd314
They've completed it up to Unicode 6.0 (released in 2010).

Are there any Unicode fonts at all for Tangut? I looked but didn't find any.

~~~
rspeer
Probably not -- unless you count the proprietary, obfuscated font they use to
make the official Unicode charts.

Some people snark at Unicode for putting so much more effort into emoji
recently than they put into scripts used in actual languages, but y'know, when
they add emoji, at least people design glyphs for them pretty quickly. When
they do the research to designate codepoints for Anatolian hieroglyphs, the
codepoints just sit there unloved and unsupported.

------
stesch
Fun fact: People behind a WatchGuard firewall (default settings) won't see
Google fonts (at least in Firefox) because the firewall filters the CORS
headers.

~~~
ademarre
What an awful overreach. Firewalls should not ship with defaults that break
the internet, and such presumptuous header filtering can actually weaken
security.

~~~
stesch
Filtering X-Frame-Options is bad for security. Filtering anti CSRF headers
like in Drupal and ShopWare is bad for security.

But this seems to be the current reality with enterprise firewalls. :-(

(No, TLS doesn't help in the long run. If your boss wants to know which pages
you are reading he will let the experts setup this:
[https://www.howtoforge.com/filtering-https-traffic-with-
squi...](https://www.howtoforge.com/filtering-https-traffic-with-squid))

~~~
ademarre
Or this WatchGuard HTTPS proxy config:
[http://www.watchguard.com/help/docs/wsm/xtm_11/en-
us/content...](http://www.watchguard.com/help/docs/wsm/xtm_11/en-
us/content/en-us/certificates/cert_https_proxy_resign_c.html)

~~~
stesch
Nice.

I'm just the victim. Whenever I suspect the firewall to be the cause of a
problem I use a proxy via a ssh tunnel. As long as it's not forbidden for me
to actually solve problems.

The list of software that isn't usable behind a WatchGuard firewall (and maybe
similar enterprise firewalls) is getting longer and longer. No Google fonts,
no Drupal, no ShopWare 5.2, JIRA barely usable, etc.

~~~
jlgaddis
I'm sure I can find plenty of examples just by searching (and I'll do that in
just a moment) but do you happen to have a list of these issues that you've
encountered that can be attributed to WatchGuard firewalls?

I am (primarily) a network engineer and such a list would be wonderful to have
when recommending for or against specific products.

------
tscs37
Noto & Roboto are probably the two fonts I love more than anything now, I just
find them so pleasing, they don't do anything stupid and they look good.

------
amake
The claim of full coverage of 110,000+ characters (they are targeting Unicode
6, apparently) appears to be false: Noto Sans CJK covers approximately 30K
characters[1], while as of Unicode 6.0 there were 74,614 CJK Unified
Ideographs (calculated from [2]).

Edit: Using a script I made to check codepoint coverage[3] I get 63,639
codepoints with glyphs defined for all Noto fonts included in their default
download (Noto-unhinted.zip).

[1] [https://github.com/googlei18n/noto-
fonts/issues/717#issuecom...](https://github.com/googlei18n/noto-
fonts/issues/717#issuecomment-228440822)

[2]
[https://en.wikipedia.org/wiki/CJK_Unified_Ideographs](https://en.wikipedia.org/wiki/CJK_Unified_Ideographs)

[3]
[https://gist.githubusercontent.com/amake/53b2331a2547b94f430...](https://gist.githubusercontent.com/amake/53b2331a2547b94f43093b7809a5d54d/raw/b6d93e14cbe7dadaf9aa744fc65fd31045c380d2/list_ttf_chars.py)

~~~
iso-8859-1
Did you compare it with other fonts listed on [1] like GNU Unifont, Code2000
and Arial Unicode MS?

The table of that article is missing many useful columns.

[1]: [https://en.wikipedia.org/wiki/Open-
source_Unicode_typefaces](https://en.wikipedia.org/wiki/Open-
source_Unicode_typefaces)

------
mathiasrw
How to make a quick logo? Just write the name of the company and use the
[https://www.google.com/get/noto/#sans-
bugi](https://www.google.com/get/noto/#sans-bugi) font...

~~~
tomtomtom777
Luckily, the era where a different alphabet could be rendered by using a
special font while using the exact same codepoints as Latin is behind us.

With Unicode, different alphabets use different codepoints and your trick
won't work.

(unless of course it's a Buginese company)

------
capex
Refreshing to see the lorem ipsum replaced with something meaningful.

~~~
jagger27
It's better than the quick brown fox too.

~~~
soperj
not really. It's longer and it misses the letters j,k,v,x, and z. That's
almost 20% of the alphabet.

~~~
adevine
When you select a different language from the search box, though, you see
those same sentences translated into the other languages. Wouldn't be possible
to get full alphabet coverage in all translation/alphabet combinations.

------
amyjess
The sans has a real italic and not just an oblique. Color me impressed: real
italics aren't very common in sanses, and that goes double for FOSS fonts.
Very nice.

------
wst_
Looking at any fonts, recently, I am starting to crave for a 4K LCD panel.
When people were switching to HD panels there were big WOW around, but after
buying a smartphone, I realized that HD is good for smartphone, but not enough
for anything big. I love to read on my smartphone and I love to code, too, but
fonts look just crappy (especially on Windows). Sadly, good 4K panels out
there are still quite pricey.

~~~
jstimpfle
This is why i still use xterm with the default bitmap font in xterm. 10pt
vector fonts on <100dpi screens look just awful.

------
xendo
I wonder why they didn't share the fact that it was created using AI.

------
ythl
Wow, they implemented Deseret - the Mormon-invented phonetic alphabet

~~~
karlshea
And Klingon

~~~
Sniffnoy
? Klingon isn't in Unicode...

~~~
karlshea
It _technically_ isn't, but it's listed in a private-use area:
[https://en.wikipedia.org/wiki/Klingon_alphabets](https://en.wikipedia.org/wiki/Klingon_alphabets)

And, if you check the languages for the full Noto font Klingon is listed so it
should work.

~~~
Sniffnoy
Huh, I didn't know about that. Interesting!

------
jyrkesh
Has anyone managed to install the Color Emoji font on Windows? Getting
something about it not being a valid font file

~~~
Turing_Machine
I am getting similar errors on Mac OS 10.11. Looks like something may be
messed up with that one.

------
tobltobs
That is great. I am working on a project where I require a font which includes
all (or at leas as much as possible) unicode symbols. Until now I was thankful
that I could use GNU unifont as a fallback, even if it was ugly. But this will
make my app look so much better.

------
pat2man
Any idea why they don't just merge Roboto and Noto?

~~~
Alex3917
I don't have any inside information, but it seems like they have different
goals. Roboto is primarily designed to evoke certain emotions and to display
well across devices, whereas Noto is primarily designed to render consistently
across languages.

------
xbryanx
This is really fantastic. It sent me looking for source materials for the
character choices made for each language.

I'm dealing with a media experience in Dakota and Ojibwa right now where we
have source material that is spelled/character-ed quite differently than the
alphabet provided by Noto in those languages. Given the scale of this project,
I assume that some considerable thought went into each language's character
set, but it's difficult to know for sure without any sourcing. The git commit
logs don't offer up any hints. Anyone familiar with the project, know where I
could find this sort of source information?

Should I be referencing something in the Unicode definitions for these
languages?

~~~
kens
The Noto characters are from the Unicode definitions, so that's where you
should look to understand why those characters exist. These proposals provides
some background:
[http://www.unicode.org/L2/L2008/08132r-n3427r-syllabics.pdf](http://www.unicode.org/L2/L2008/08132r-n3427r-syllabics.pdf)
[http://www.unicode.org/L2/L2008/08342-n3507-syllabics.pdf](http://www.unicode.org/L2/L2008/08342-n3507-syllabics.pdf)

------
jug
Why follow up Roboto? An honest question, not a rhetorical one. I don't yet
prefer any one over the other.

I understand it covers a large part of Unicode, but if that is what makes it
unique, couldn't Roboto just be extended?

------
dvcrn
Is it possible to replace the Mac system font for some languages with this?

I prefer the Noto Japanese typeface over the one that comes with Mac and would
like to replace it.

~~~
Razengan
I'm not sure if you can replace system-wide fonts without some hacks, like
[1], but maybe TinkerTool [2][3] can help a bit:

[1] [http://osxdaily.com/2015/10/15/change-default-system-font-
ma...](http://osxdaily.com/2015/10/15/change-default-system-font-mac-os-x-el-
capitan-lucida-grande/)

[2]
[https://www.bresink.com/osx/TinkerTool.html](https://www.bresink.com/osx/TinkerTool.html)

[3] [http://i.imgur.com/HYwpDO4.png](http://i.imgur.com/HYwpDO4.png)

------
ww520
The font support spans so many languages. This is incredible. Font work is
hard and tedious, and thankless. Kudos to Google for open sourcing it.

------
Dowwie
What are hints and why are the noto fonts packages according to hinted and
unhinted? I'm not sure which package to use for linux.

~~~
lottin
You need the hinted version if your freetype does hinting, whereas if it does
autohinting (or no hinting at all) you don't need hints, as in this case hints
are ignored. So if in doubt install the hinted fonts.

------
sushid
Surprised to see that Google is supporting even archaic Korean [0], but it
would have been nice to see a chunk of text in Korean, Japanese, and Chinese,
as opposed to a bunch of gibberish in all three languages.

[0] [https://www.google.com/get/noto/#sans-
kore](https://www.google.com/get/noto/#sans-kore)

~~~
JorgeGT
They even support Linear B, which fell in disuse more than 3000 years ago with
the Bronze Age Collapse of the Mycenaean civilization:
[https://www.google.com/get/noto/#sans-
linb](https://www.google.com/get/noto/#sans-linb)

------
chuckreynolds
How come I get "6 serious errors were found. Do not use these fonts." in macOS
Font Book? v10.11.6

------
wkoszek
Wondering if Matthew Butterick will like those. Will keep looking at Practical
Typography for updates.

~~~
khaled
Matthew Butterick just hates anything related to Google since they started
Google Fonts, don’t hold your breath.

------
MNukazawa
I seem to intend to destroy it seriously.

[http://michinarinukazawa.github.io/TofuFont/html/index_en_US...](http://michinarinukazawa.github.io/TofuFont/html/index_en_US.html?tofu=false)

------
forkandgrok
Last time I checked, Noto Mono was not considered a monospace font by Windows'
console (Command Prompt) and cannot be used for working in the console
(including Bash on Ubuntu on Windows). Is that still the case?

------
quirkot
To see all of the characters that are on the internet, you will need to
download a CD's worth of fonts, 473mb. #MindBlown

------
imeron
I wish they would just support Latin Extended in Google Docs when Google Fonts
are selected.

------
jxy
APL is finally gonna take the world. Thanks to google.

Wait, does it have APL symbols?

~~~
iso-8859-1
"The Unicode Basic Multilingual Plane includes the APL symbols in the
Miscellaneous Technical block, which are therefore usually rendered accurately
from the larger Unicode fonts installed with most modern operating systems."

------
petecox
Hey google team,

Windows 10 reported an error:

"NotoColorEmoji.ttf is not a valid font file".

------
sebastianconcpt
Awesome. It took us only ~7 decades of Computing to invent this :)

------
stevejohnson
This would make an excellent character set for a roguelike.

------
threepipeproblm
This would be better if it were called Nofu...

------
soheil
There is Old Persian but not Persian?

~~~
khaled
Persian is written in the Arabic script. If you search for Persian it will
give you Noto Arabic fonts.

------
memetomancer
I'm not installing 500 MB of fonts without a flipping contact sheet on the
page :(

~~~
amyjess
You mean a specimen page?

I couldn't find one linked from the article, but I found this while Googling:
[https://fonts.google.com/specimen/Noto+Sans](https://fonts.google.com/specimen/Noto+Sans)

~~~
memetomancer
thanks, i did mean specimen page, mea culpa. also thx for the link!

------
blunte
No slash through the monospace zero. What a huge shame.

------
bkhurjawal
Robot's won't take over the world! Google will.

------
dschiptsov
Ubuntu package?

~~~
vixate
Ubuntu has a metapackage in the universe repository called "fonts-noto":
[http://packages.ubuntu.com/xenial/fonts-
noto](http://packages.ubuntu.com/xenial/fonts-noto)

    
    
      Package:    fonts-noto
      Repository: universe
    

To install (if you have the universe repository enabled):

    
    
      sudo apt-get update
      sudo apt-get install fonts-noto

------
c-smile
[pedantic] "UTF-8 space"... UTF-8 code units space is quite limited by single
byte - 0...255. You probably meant Unicode Code Points space that, at the
moment, is 21-bits number: from 0 to 0x10FFFF (1,114,112 decimal) [/pedantic]

~~~
GauntletWizard
Not true at all. Per the wiki article[1], "UTF-8 is a character encoding
capable of encoding all possible characters, or code points, defined by
Unicode"

It's a variable-length encoding, and just so happens to correspond to ASCII
for the first 127 characters. But if the leading bit of the byte is 1, it
indicates that it's part of a multi-byte glyph. With the encoding, you can
represent the entirety of the unicode space - The latter bytes start with 10
to indicate they're middle parts of the glyph, while the first byte uses 11
and continues to indicate how many bytes long the glpyh is.

[1][https://en.wikipedia.org/wiki/UTF-8](https://en.wikipedia.org/wiki/UTF-8)

~~~
c-smile
Depends on what "space" means...

As of utf-8 encoding... It is a variable encoding that is capable to encode
any 32-bit number: from 0 to 0xFFFFFFFF. Not just current set of 21-bit
unicode code points.

As of "... indicates that it's part of a multi-byte glyph." You are mixing
completely different entities here. Unicode has nothing with glyphs.

Glyph is an atomic component (image) of internal font structure. Single
character (unicode code point here) can be composed on screen from multiple
glyphs.

~~~
wolf550e
> As of utf-8 encoding... It is a variable encoding that is capable to encode
> any 32-bit number: from 0 to 0xFFFFFFFF. Not just current set of 21-bit
> unicode code points.

You're thinking of an older version of UTF-8 which allowed sequences of up to
6 bytes to be used to encode a single code point. UTF-8 is now defined to not
allow code point values above 0x10FFFF and not allow code point values between
0xD800 to 0xDFFF (inclusive) to allow only the same values as possible in
UTF-16.

[https://en.wikipedia.org/wiki/UTF-8#Invalid_byte_sequences](https://en.wikipedia.org/wiki/UTF-8#Invalid_byte_sequences)

[https://tools.ietf.org/html/rfc3629](https://tools.ietf.org/html/rfc3629)

------
eveningcoffee
Please do not use these fonts directly from Google servers. This is an another
attribute for Google to track the whole browsing traffic. This is too much
power for one company.

~~~
Klathmon
Google's ToS state that they will not track them beyond simple aggregate
numbers of downloads per [time], which they release in their analytics
dashboard publicly.

Not only that but the cache headers are set to 1 year... That's a pretty
shitty tracking system if I've ever seen one.

~~~
eveningcoffee
ToS are known to change in time. Are you suggesting that if millions of
websites use this font then it will be removed when Google changes its ToS?

------
binthere
So, did they actually handcrafted each of the 100k+ characters? Probably not,
but if yes, then I call it BS.

------
niels_olson
reminds me of natto. Gross.

edit: why the downvotes? They bring up tofu and then name the cure something
close to natto, cured soy beans. And by cured, I mean fermented. And by
fermented, I mean stringy at the molecular level, smells and tastes awful. And
when I say awful, I mean, most of the people from the originating culture
think it's awful.

