Hasta ahora, el principal problema del diseño web en cuanto a tipografía era el no poder usar cualquier fuente para el texto html, ya que si no estaba instalada en el sistema del usuario que accedía a esa página, no se podía visualizar.
Debido a esto, cuando hay que mostrar texto en una web, por un lado se utilizan las típicas y más comunes fuentes “de sistema” que traen instaladas los sistemas operativos (Arial, Tahoma, Verdana, Courier, Times New Roman…), asegurándonos que se visualizaran en cualquier ordenador como se han creado en su diseño. Y por otro lado, si se quiere poner un texto con una fuente distinta que probablemente nadie tenga en su ordenador se crea un gif o un jpg de ese texto y se coloca como una imagen.
Así pues, la tipografía en la web sigue siendo la asignatura pendiente hacia el objetivo de brindar a los diseñadores Web el mismo nivel de libertad tipográfica del que disfrutan los diseñadores de texto impreso.
Pero las cosas están cambiando. Ahora los nuevos navegadores y las nuevas reglas CSS permiten introducir una fuente en una página web, de forma que podemos utilizar cualquier fuente que queramos. ¿Como?. Hay varias maneras.
La regla @font-face
@font-face , una de las At-Rule (regla arroba) en CSS, es la pequeña maravilla que va a cambiar el aspecto del diseño web. Es una propiedad para definir en un sitio web una fuente que el usuario no tenga instalada en su ordenador.
Sólo debemos subir el archivo de la fuente deseada a nuestro sitio web (mediante FTP, al servidor) y definirla mediante CSS.
La fuente debe ser definida por la regla @font-face, además de la clase en la que la vayamos a usar. Para el tipo de fuente, puede usarse en formato OpenType (.otf) o bien, en formato Truetype (.ttf).

Para los entendidos, así quedaría el código CSS después de subir, por ejemplo, nuestro archivo de la fuente open source Chunkfive:
@font-face {
font-family: ”MiFuente”;
src: url(Chunkfive.otf) format(“opentype”);
}
y crear un estilo css para texto así:
.texto1 {
font-family: “MiFuente”, Arial, Verdana, sans-serif;
color: #2374B6;
font-size:25px;
}
y en nuestra página web:
<p class=”MiFuente”>Hola, mira como molo con esta tipografía.</p>
El resultado visto en un navegador, quedaría así de bien:

Hasta aquí, todo fantástico. Pero…llega el momento de las compatibilidades entre los distintos navegadores y aquí surgen los problemas: aunque casi todos los últimos navegadores van a mostrar bien las tipos, no todos los navegadores interpretan el formato .ttf/.otf y las versiones antiguas de algunos (que se siguen usando bastante, IE6 incluido) tampoco aceptan las nuevas reglas CSS.
Pero existen soluciones para el día de hoy.
Podemos convertir la tipografía (ttf o otf) a diferentes formatos, solucionando así la compatibilidad entre los navegadores. Estos formatos de tipografía son: woff, eot y svg
.EOT
Microsoft creó hace unos años el formato de fuente EOT (.eot). Se trata de un formato de fuentes compacto diseñado para incrustar fuentes en las páginas Web. El problema es que solo se visualizan con internet explorer. Lo bueno, es que es compatible desde IE4.
.SVG
Para otros navegadores como opera o safari (incluida su visualización en el iphone o el ipad)
.WOFF (Web Open Font Format)
Soportado hasta ahora por Firefox y Opera por el resto en futuras versiones.
Con lo cual, a día de hoy, para asegurarnos la correcta visualización en todos los navegadores y sus versiones es necesario subir la fuente de nuestra web en todos los formatos necesarios. (TTF (o OTF), EOT y SVG y WOFF). ¿Lío?, no es para tanto. Con el tiempo, es probable que se estandarice uno o dos formatos y la norma css será compatible en todos los navegadores conforme los viejos queden en desuso.
De esta forma, convertimos nuestra fuente en los tipos de archivos anteriores, los subimos todos a la web y nuestro código CSS quedaría así:
@font-face {
font-family: ”MiFuente”;
src: url(‘Chunkfive.eot’);
src: local(‘ChunkFive’),local(‘ChunkFive’),
url(‘Chunkfive.woff’) format(‘woff’),
url(‘Chunkfive.otf’) format(‘opentype’),
url(‘Chunkfive.svg#ChunkFive’) format(‘svg’);
}
¿Y cómo convertimos nuestra fuente a los otros formatos?. En http://www.fontsquirrel.com/fontface/generator nos ofrecen el @font-face Generator
@font-face Generator es una herramienta online totalmente gratis, que permite, a partir de uno o varias archivos tipográficos en formato .ttf o .otf, obtener, en tres sencillos pasos, el código y los archivos necesarios para que puedas implementar @font-face en tu página, con la garantía de que se verá correctamente en todos los navegadores.
También Microsoft ofrece una herramienta gratuita para convertir fuentes ttf a oet, la WEFT (Web Embedding Fonts Tool) La herramienta modifica una fuente TrueType® u OpenType (solo de estilo TrueType) para crear el archivo EOT
Si no queremos o nos parece complicado ir convirtiendo tipografías, FontSquirrel nos ofrece cientos de tipografías libres de derechos que no será necesario convertir, porque se nos permite descargar el Kit o el paquete con todos los archivos y el código necesario. Seleccionas la fuente que te guste del listado y le das al botón “download fontface kit”. Más fácil imposible.
Es importante señalar que si, después de leer este post y de comprobar como tu tipografía molona, con unas míseras líneas de código se ve fantásticamente bien en tu navegador, has de saber que al igual que una foto o una ilustración, si se va usar en una web de fines comerciales, es necesario tener la licencia de esa tipografía, o utilizar en su caso fuentes gratuitas o de uso comercial permitido, que por otro lado, también abundan.
Google Font API
La solución que hace unos mese Google presentó para poder visualizar sus fuentes en la web es otra buena opción. Son gratuitas y variadas y, aunque no muy extensas en número, son de calidad y suponemos que irán aumentando con el tiempo. No es necesario tener la fuente alojada en nuestro servidor. Tan sólo necesitamos crear un enlace a la Google Font API especificando las fuentes que deseamos usar y aplicarla mediante reglas CSS en donde deseemos.
En nuestro código escribiremos, por ejemplo, esto:
<link href=”//fonts.googleapis.com/css?family=Lobster:regular&subset=latin” rel=”stylesheet” type=”text/css” >
Y crearemos una regla CSS por ejemplo al body:
<style>
body {
font-family: ‘Lobster’, serif;
font-size: 28px;
font-style: normal;
text-decoration: none;
}
</style>
En Google Font API puedes ver sus tipografía e incluso hacer pruebas para ver como quedaría tu texto.

Puedes ver las tipos aquí:
Google Font Directorio
Google Font API
Visor de Fuentes
Sitios que ofrecen fuentes de pago
Es otra opción si deseas ahorrarte líos de conversión o licencias, y no te importa pagar algo de dinero. En internet existen sitios de pago por mensualidades o de pago único que ofrecen una amplia variedad de tipografías de alta calidad para incrustar en la web. Previo pago, estos servicios se hacen responsables de las licencias de la fuente y te proporcionan el código @font-face que podrás usar en tu pagina. En todos los casos, la tipografía no estará alojada en tu servidor.

Tienes un buen listado de sitios aquí
Concluyendo
Parece que por fin se abren las barreras a las tipografías en la web (para lo bueno y para lo malo, todo sea dicho). Ahora, a recorrer el camino.
Algunas bonitas webs con buen uso de fuentes incrustadas:
http://www.festivalmundo.com.br/

http://20tongues.simonfosterdesign.com/

http://www.lordlikely.com/

Algunas bonitas tipografías para que empieces a practicar el @font-face en tus webs:
http://blog.themeforest.net/tutorials/css-font-face-and-15-free-fonts-you-can-use-today/