Programando Open Type features

Vamos a ver, rápidamente, cuales son las funciones Open Type más comunes que podemos agregar a nuestras fuentes y algunos ejemplos de como hacerlo.

Ligatures: liga

Ligaturas

Ligaturas

feature liga {
sub f i by f_i;
sub f l by f_l;
sub f f i by f_f_i;
sub f f l by f_f_l;
} liga;

Cuando encuentra una f seguida de una i, las reemplaza por el caracter fi, lo mismo con las fl, ffi, ffl.

Discretional Ligatures: dlig

Ligaturas Discrecionales

Ligaturas Discrecionales

feature dlig {
sub c t by c_t;
sub s t by s_t;
} dlig;

Cuendo encuentra una c seguida de una t, las reemplaza por el caracter c_t, lo mismo con la s t.

Stylistic Alternates: salt

Stylistic Alternates

Stylistic Alternates

feature salt {
sub a by a.alt;
sub Q by Q.alt;
} salt;

Reemplaza las letras a por las letras a alternativas. Lo mismo con la Q.

Contextual Alternates: calt

Contextual Alternates

Contextual Alternates

feature calt {
sub @_bajas t' @_altas by t.left;
sub @_bajas t' @_bajas by t.middle;
sub @_altas t' @_bajas by t.right;
} calt;

Reemplaza una letra por las versiones alterativas, dependiendo las letras que tenga a los costados

Swashes: swsh

Swashes

Swashes

feature swsh{
sub T by T.swsh;
sub F by F.swsh;
sub R by R.swsh;
} swsh;

Reemplaza las letras T, F y R por las versiones  con Swashes.

Initial forms: init

Initial Forms

Initial Forms

feature init {
sub @initial_to_be_replaced by @intial_replacement;
} init;

Suponiendo que tenemos dos series de letras agrupadas en classes, reemplaza las letras de las primer serie por las de la segunda serie, siempre y cuando esten al principio de una palabra.

Final Forms: fina

Final Forms

Final Forms

feature fina {
sub @fina_to_be_replaced by @fina_replacement;
} fina;

Suponiendo que tenemos dos series de letras agrupadas en classes, reemplaza las letras de las primer serie por las de la segunda serie, siempre y cuando esten al final de una palabra en.

Otras OT features que podemos incorporar, son:

  • Small Capitals: smcp
  • Lining Figures: lnum
  • Old Style Figures: onum
  • Proportional Figures: pnum
  • Tabular Figures: tnum
  • Slashed Zero: zero
This entry was posted in Typography and tagged , , , , , , , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

9 Comments

  1. Posted 30/11/2009 at 1:54 am | Permalink

    Hey Pablito, muy copado esto. Me gustaría que nombres que tipografías son las que usas en los ejemplos.

    Saludos, genial trabajo, me gustaría ver más así.

  2. PabloImpallari
    Posted 14/12/2009 at 8:18 am | Permalink

    @Ignacio
    1 y 2) Feijoa by Klim
    3) Gotham by Hoefler
    4) Eye Catching by Blue Vinyl
    5) Plantagenet Nova by Tiro Typeworks
    6 y 7) Bello by Underware

  3. Posted 19/03/2010 at 11:27 am | Permalink

    Tengo entendido que en liga deben ir primero aquellas que contienen tres glifos y luego las de dos, de otro modo cuando tengas ffl te cambiaría a la ligadura ff y la l quedaria volando. El codigo quedaría así:

    feature liga {
    sub f f i by f_f_i;
    sub f f l by f_f_l;
    sub f i by f_i;
    sub f l by f_l;
    } liga;

  4. PabloImpallari
    Posted 19/03/2010 at 11:40 am | Permalink

    Hola Eli:
    Puede ser, habría que testearlo para estar seguro.
    Gracias por pasar.

  5. Posted 05/04/2010 at 10:37 am | Permalink

    Ya lo he probado muchas veces y estoy seguro ;)

  6. Posted 05/07/2010 at 7:28 pm | Permalink

    Excelente, no sabia que se podia hacer todos estos efectos con OT.
    Tu blog es estupendo, lo visitare seguido, gracias!

  7. Posted 21/12/2010 at 2:06 am | Permalink

    Muchas gracias por facilitar esta valiosa y pragmática información, altamente útil para aquellos que, como yo, se inician en la programación OT.

  8. John Vargas Beltrán
    Posted 01/10/2011 at 2:45 pm | Permalink

    Hola Pablo, una pregunta a propósito de estas posibilidades de features en OT, ¿Uno puede determinar un glifo que soporte dos features a la vez? Por poner un ejemplo, tengo una J en versión normal, otra en swash, la cual se llama J.swash y una tercera que se llama J.ini; ¿Hay alguna forma de nombrar una posible cuarta J que soporte swash e ini a la vez? ¿cómo se nombraría? Mil saludos y gracias de antemano.

  9. Posted 01/10/2011 at 9:17 pm | Permalink

    Hola John,
    Sep, poder seguro se puede, hay que buscarle la vuelta.
    La cuarta la podrias llamar algo asi como J.initswash o con cualquier otro nombre que quieras, el nombre en realidad es lo de menos, lo importante es como armes despues la programacion para que funcione

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>