Is there a (preferably online) tool that lets you type in a word or words and it presents them on screen in many different fonts (preferably 10's or even 100's), all the same time? The purpose being to see what text looks like in different fonts side by side (e.g. to select between them)
3 Answers
Trying to clarify things a bit here.
If you want to "shop" for fonts online you can visit each font seller/ suppliers website. At myfonts.com you did not go deep enough to see "your text" listed in each different font category. As @Scott said, you do need to narrow the search by inputting a type style (serif, sans serif, display, etc.). Then, in fact, you can input your own text and choose the text display size. You will have a long list of fonts showing the words you choose. I am afraid you will still need to do a lot of scrolling to see the entire offering.
Here is another example from Adobe fonts you can use (if you have a cc subscription)
Even Google fonts have a textbox where you can type your text.
If you want to see the fonts on your computer, use a font manager.
But for obvious reason, it is not feasible to have it online.
-
What are these "obvious" reasons? They're not obvious to me. OK, so online tools can't enumerate the fonts installed on your computer, but surely you could give it a list of fonts and it could render the text in those fonts.– StewartJul 14 at 14:06
-
The obvious reason is that this is a tool to see fonts installed on your computer. There is some other tool that I can't remember, that does index google fonts specifically.– RafaelJul 14 at 18:54
-
I'm confused. What has whether one specific tool is a tool to see fonts installed on your computer to do with what other kinds of tools might be feasible?– StewartAug 13 at 15:42
If you have a Mac, the Font Book app will let you customize the text used in font previews.
Here are two python scripts to generate a gallery of different fonts for a particular string of text. One does it via HTML and one via RTF.
For either one you will need to start a list of typeface names available on your system (or ones which you want to use). For the HTML version, I have the list embedded in the program, and for the RTF version it is in a file called fontlist.txt
. The entries look like this:
Mona Lisa Solid ITC TT
Party LET Fonts
Skia.ttf
SnellRoundhand.ttc
StencilStd.otf
Trebuchet MS Bold Italic.ttf
Trebuchet MS Bold.ttf
Trebuchet MS Italic.ttf
Trebuchet MS.ttf
Zapfino.ttf
On my system, I can generate these by copying the contents of /Library/Fonts
and pasting into a text document. The HTML version expects the suffixes (.ttf
to be stripped off).
HTML version
Pretty straightforward but I can only get it to work with System fonts and not user fonts (not Myriad Pro in example image) This plugs values of typeface names into style fields of a simple HTML document.
Run it and "redirect" the output to an HTML file using > mytype.html
after the command.
#! /usr/bin/env python
# -*- coding: utf-8 -*-
TemplateStart= """<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>"""
TemplateEnd="""</body>
</html>"""
FLines = '''<pre>{0}</pre>
<p style="font-family:{0}; font-size: large">EXAMPLE string</p>'''
FList = ["CharcuterieBlock",
"OdalisqueNF",
"Arial",
"Palatino",
"Times New Roman",
"MyriadPro-Regular",
"MyriadPro Regular",
"Gill Sans",
"Myriad Pro",
"Impact",
"Arial"]
print TemplateStart
for Font in FList:
print FLines.format(Font)
print TemplateEnd
RTF version
This one seems to work with whatever typefaces you have installed.
The weird backslashes etc. are RTF specific, so you'd want to copy that part exactly, at least at first. Redirect output using > mytype.rtf
#! /usr/bin/env python
# -*- coding: utf-8 -*-
# Show all fonts
H1 = r"""{\rtf1\ansi\ansicpg1252\cocoartf1347\cocoasubrtf570
{\fonttbl\f0\fswiss\fcharset0 Helvetica;"""
fontdef = r"\f{0}\fnil\fcharset0 {1};"
H2 = r"""}
{\colortbl;\red255\green255\blue255;\red154\green154\blue154;\red154\green154\blue154;}
\margl1440\margr1440\vieww10800\viewh8400\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural """
examplestring = 'String to preview here'
Entry = r"""
\fs20 \cf3 {2}\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural
\f{0}\fs64 \cf0 {1}
\f0 \
"""
End=r"""
\
}"""
FontList =[]
with open('fontlist.txt','r') as fl:
for Line in fl:
if Line and not Line.startswith("#"):
FontList.append(Line.rstrip().replace('.ttf','').replace('.ttc',"").replace('.otf',''))
print H1
for n,f in enumerate(FontList):
print fontdef.format(n+1,f)
print H2
for n,f in enumerate(FontList):
print Entry.format(n+1,examplestring,f)
print End