Fuente "Wire" (unidimensional)

17

Todas las fuentes de las que he oído hablar son bidimensionales : cada glifo es básicamente una región bidimensional (un contorno cerrado o algunos contornos cerrados), que el software o la impresora de alguna manera acaricia o llena según las instrucciones dadas por el usuario. Me gustaría saber si hay fuentes unidimensionales , donde los glifos se describen como colecciones de segmentos (que el software puede trazar pero no necesariamente rellenar), no de regiones.

En otras palabras (o mejor, en imágenes), lo que me gustaría tener es lo izquierdo en lugar de lo correcto en la imagen a continuación. ¿Existe esto?

De una letra bidimensional a una unidimensional

(Perdón por la foto, sé que es realmente mala; lo hice rápidamente)

Giovanni Mascellani
fuente
Tal vez necesitemos responder graphicdesign.stackexchange.com/questions/64626/… antes de que realmente podamos responder a su pregunta
Ryan
¿Cuál es su aplicación deseada para la fuente? No veo ningún uso en una fuente de un solo trazo para el diseño, así que supongo que desea esto para un plano o grabado. ¿En qué programa piensa usar la fuente?
DavidC
55
Todavía hay dos dimensiones, simplemente no hay adentro: P
Zach Saucier
8
Lo más parecido a una fuente unidimensional sería un código de barras.
Gerald Schneider
Solo como una idea de una aplicación, escribí una demostración de Raspberry Pi para trazar las rutas de un SVG en un osciloscopio XY; esto habría sido perfecto para eso. Es cierto que este es un medio inusual (como es el trazador de lápiz en el que pretendo usarlo más adelante).
Chris H

Respuestas:

23

En los trazadores, se denomina "fuente de trazo", " fuente de una sola línea ", "fuente de grabado", "fuente de letras técnicas" o simplemente "fuente de trazado".

Un trazador traza imágenes en papel con un bolígrafo. No puede llenar imágenes excepto si las acaricia repetidamente a menos de un ancho de lápiz. Por lo tanto, las fuentes diseñadas para su uso con trazadores contendrán glifos con un trazo ("simplex"), dos trazos más o menos paralelos ("duplex") o tres trazos ("triplex"). Las fuentes con más trazos tardan más en dibujarse, pero permiten una mayor variación en el ancho del trazo dentro de un glifo. El uso de un bolígrafo demasiado estrecho para un glifo de un tamaño determinado causará espacios visibles entre los trazos.

Un ejemplo de una fuente mayormente simplex es Hershey Vector Font . Sus signos @, soportes [], llaves {}y tilde ~son dúplex.

Glyphs in Hershey Vector Font

Si ha visto " pizarra en negrita ", esa es una fuente 𝕕𝕦𝕡𝕝𝕖𝕩 con el ancho del lápiz menor que la distancia entre trazos.

BOLD en una fuente serif dúplex

Las bibliotecas de imágenes de la vieja escuela admitían las fuentes de trazo de la misma manera que un trazador. Al renderizar texto, una aplicación establecería el ancho y el color del trazo antes de dibujar el texto, tal como lo hace antes de dibujar una línea. Esto es análogo a seleccionar una pluma en un trazador.

Pero las bibliotecas de imágenes ráster modernas usan fuentes OpenType, que contienen contornos TrueType o CFF (PostScript Tipo 2). Las fuentes OpenType que simulan fuentes de trazo en su lugar contienen el contorno de un trazo con cierto ancho de línea. Esta operación de trazo se puede revertir insertando el contorno del glifo a una distancia de medio ancho de trazo, algo así como el inverso de negrita algorítmica.

Damian Yerrick
fuente
¡Bingo! Existen, pero son bastante inútiles a menos que se utilicen para BluePrints, grabado o aplicaciones láser. Diseñe aplicaciones como Adobe, Corel, etc. Les resulta difícil incluso renderizarlas, por lo que no son muy útiles para diseñar.
DavidC
@DavidC: en las plataformas gráficas que pueden aplicar transformaciones por separado al lápiz de dibujo de forma independiente y a la fuente, las fuentes adhesivas pueden funcionar bien si uno usa un lápiz elíptico muy delgado y le aplica una transformación pura (produciendo un aspecto como un lápiz caligráfico). Hacer eso parece funcionar mejor con una fuente casi parecida a un palo que con una fuente que tiene un ancho de trazo normal.
supercat
10

La mayoría de las aplicaciones de ingeniería admiten fuentes con solo líneas y grosores de suministros de usuario. Al igual que muchas máquinas de grabado y fresado. Existen algunas fuentes, aunque no funcionan muy bien en el software moderno (si es que lo hacen).

Este es el problema: los motores de fuentes han retrocedido desde que dejamos de usar PostScript. Lo siento, no hay soluciones fáciles. Entonces, uno podría tener todo tipo de golosinas en el día que ya no es posible en la mayoría de las computadoras. Casi ninguna aplicación admite esto, incluso si el presente no funciona en svg, ya que las definiciones de fuente svg quedaron en desuso de los navegadores.

El problema es que no hay un formato universal para tales fuentes. Y las fuentes mismas funcionarán mal en muchos casos. Las aplicaciones normales los tratarán de forma extraña. Ver:

  • Otra pregunta sobre el tema star-trek-interior-plaques donde puede encontrar una fuente como esta que puede funcionar en algunas aplicaciones.

Jongware ha creado un script llamado monoline text drawing para ilustrador, por ejemplo, puede obtenerlo aquí:

Es posible hacer sus propias fuentes de este tipo en PostScript usando fuentes tipo 3 (pero el soporte ya no es amplio *, aunque el ilustrador podría usarlas en algunas circunstancias). Sin embargo, el soporte en aplicaciones de diseño es escaso. Pero en realidad uso esto todo el día cuando hago ostScript. Aquí hay un ejemplo (la fuente para uso especial solo se   editó para esta demostración):

%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 200 40
%%Title: Demo type 3 font
%%Creator: Janne Ojala
%%CreationDate:  2015-12-23
%%EndComments

% set stroking characteristics
5 setlinewidth 
1 setlinecap
1 setlinejoin

% lets define the font
10 dict dup begin
  /FontType 3 def
  /FontMatrix [.01 0 0 .01 0 0] def
  /FontBBox [-2 0 52 102] def

  /Encoding 256 array def
  0 1 255 {Encoding exch /.notdef put} for 

  Encoding
    dup (L) 0 get /L put
    dup (a) 0 get /a put
        (b) 0 get /b put

  /Metrics 4 dict def
  Metrics begin
    /.notdef 30 def
    /L 65 def
    /a 65 def
    /b 55 def
  end

  /BBox 4 dict def
  BBox begin
    /.notdef [0 0 0 0] def
    /L [0 0 75 100] def
    /a [25 0 75 100] def
    /b [25 0 65 100]  def
  end

  /CharacterDefs 4 dict def
  CharacterDefs begin
    /.notdef { } def

    /L
      { newpath
        0 100 moveto
        0 0 lineto
        50 0 lineto
        stroke
      } def 
    /a
      { newpath
        25 25 25 0 360 arc 
        50 45 moveto 
        50 0 lineto
        stroke
      } def
    /b
      { newpath
        0 100  moveto
        0 0 lineto
        40 0 40 50 17.5 arct
        40 50 0 50 17.5 arct
        0 50  lineto
        stroke
      } def
    end

  /BuildChar
    { 0 begin

        /char exch def
        /fontdict exch def

        /charname fontdict /Encoding get char get def
        fontdict begin
          Metrics charname get 0
          BBox charname get aload pop
              setcachedevice

          CharacterDefs charname get exec
        end
      end
    } def
  /BuildChar load 0 3 dict put
  /UniqueID 1 def
end

/SpecialUseOnly exch definefont pop
/special /SpecialUseOnly findfont 20 scalefont def

special setfont 

10 10 moveto

%write some text
(Lab baa baa abL) show

%%EOF

Para usar esto, simplemente colóquelo en un archivo de texto con un final EPS y arrástrelo y suéltelo en ilustrador o palabra. asegúrese de que no haya líneas vacías antes del comienzo. Puede editar el texto cambiando lo que hay dentro de los parens en el final del formulario de 3 líneas. La advertencia aquí es que solo definí los caracteres 'L' 'a' y 'b'.

Avance

Imagen 1 : Vista previa del programa de fuentes.

* Así que esto fue fácilmente posible a fines de los 80 y mediados de los 90, pero no hoy. El soporte se ha eliminado principalmente, algunos softs de adobe todavía tienen esto.

joojaa
fuente
1
Sin embargo, incluso mi script no puede hacer que funcione sin ningún grosor: aún debe establecer el grosor 'a' en las líneas que dibuja. Pero, concedido, puede establecerlo en cualquier valor que desee, a diferencia de las fuentes de contorno que tienen un grosor "predefinido".
usr2564301
2
Sin embargo, una nota al margen, las cortadoras láser y las máquinas cnc y las aplicaciones cad funcionarán sin grosor de línea, ya que el grosor para ellas es solo un artefacto del procesamiento posterior.
joojaa
2
Eso está bien y elegante, pero no es una fuente. Verifiqué varias definiciones de fuente y aún no he encontrado ninguna que no incluya grosor / ancho como parte de la definición. En diseño gráfico, esto no es fuente de nada que haya encontrado. Incluso @Jongware y usted reconoce que debe haber algo de grosor para que funcione. Yo diría (y cada definición que he encontrado está de acuerdo) que no es una fuente hasta que eso ocurra. Sin embargo, en la práctica, esto podría ser lo que busca el OP si solo están tratando de trazar puntos :) Tal vez quiera mirar Corel Draw, sé que los creadores de letreros a menudo lo usan.
Ryan
1
Tampoco sigue siendo unidimensional, como se hizo en la pregunta. Pero entonces diría que una fuente real unidimensional es imposible, porque una dimensión lo limitará a una línea recta, bueno, en una dimensión. Puedes hacer I y I sin dos dimensiones, pero no mucho más.
Janus Bahs Jacquet
3
@Ryan: puede ser bueno y elegante, pero la conclusión es que las fuentes de solo trazo pueden existir pero no son compatibles con las tecnologías de fuentes principales actuales.
usr2564301
8

Metafont es un lenguaje de descripción utilizado para definir fuentes vectoriales.

A diferencia de los formatos de fuente de contorno más comunes (como TrueType o PostScript Type 1), una fuente Metafont está compuesta principalmente de trazos con "plumas" de ancho finito, junto con regiones rellenas. Por lo tanto, en lugar de describir el contorno del glifo directamente, un archivo Metafont describe los trazados del lápiz.

Lo que describa podría implementarse como una fuente Metafont con un ancho de lápiz constante.

Locoluis
fuente
6

Otro término para lo que está buscando es una "fuente de palo": hay un conjunto gratuito de 9 de ellos que he usado para grabado CNC y láser en http://www.mrrace.com/CamBam_Fonts/

Tenga en cuenta que estas fuentes tienden a verse mal en la pantalla, con áreas cerradas que a menudo aparecen sólidas. Esto se debe a que son fuentes de contorno técnicamente inválidas: cada carácter consiste necesariamente en uno o más bucles cerrados (dado que los sistemas operativos modernos no admiten ningún otro tipo de fuente), pero cada bucle tiene un área cero. Por lo tanto, pueden no ser adecuados para usted si el objetivo no es el grabado.

jasonharper
fuente
Funciona bien con Inkscape, siempre que lo acaricies en lugar de llenarlo. ¡Gracias!
Giovanni Mascellani
3

En arquitectura, un principiante puede dibujar paredes como líneas simples. Sin embargo, esto es inexacto y no puede existir: las paredes, incluso las delgadas, tienen un grosor.

Del mismo modo, su A a la izquierda, incluso una delgada, tiene un grosor. ¿Cómo de grueso? ¿Es 1pt? ¿Es 0.025pt? ¿Cómo sabe la impresora? Hay que contarlo.

Para responder a su pregunta, no, no puede existir una fuente unidimensional como la describe. Todas las líneas deben tener cierto grosor para existir.

Ryan
fuente
2
No estoy completamente de acuerdo: el propósito de una fuente es describir las geometrías relacionadas con la representación del texto. Cómo deben representarse estas geometrías es un tema diferente, que no se describe en la fuente en sí. Incluso con las fuentes ordinarias descritas en TrueType, OpenType o lo que desee, aún tiene que decidir qué color, patrón y lo que usará para rellenar o trazar contornos. Entonces puede tener una fuente como la que yo digo: es deber del usuario especificar el grosor de la línea y las otras propiedades.
Giovanni Mascellani
2
Además, hay aplicaciones en las que tiene el concepto de una línea independientemente de su grosor. Por ejemplo, la aplicación que tengo en mente es el grabado láser de vectores. El grosor de lo que grabo es un subproducto de la velocidad del láser, la potencia y las propiedades físicas del material que estoy usando. No necesita ser conocido por el software que maneja el grabador.
Giovanni Mascellani
2
@ Ryan esto no es estrictamente cierto. Es simplemente cierto en un mundo centrado en el adobe. Y solo si quieres ser feliz contigo mismo. De lo contrario, incluso entonces es una mentira.
joojaa
1
@immibis que ciertamente se considera impreso cuando se selecciona un material, tinta y color, pero no tiene nada que ver con la fuente. Una fuente puede existir en su pantalla sin profundidad, pero no puede existir en su pantalla sin algún tipo de ancho.
Ryan
3
Todo el texto debe tener un ancho de línea cuando se dibuja, pero este ancho no necesita almacenarse en la fuente. En cambio, puede almacenarse en el documento utilizando la fuente, tanto como el tamaño y el color.
Damian Yerrick