2009-05-01 5 views
7

La especificación PDF define un operador de texto llamado '(apóstrofo). La definición es que escribe algo de texto y pasa a la siguiente línea en función del estado actual. El estado inicial actual se puede establecer utilizando el operador TL. Esto hace que sea muy fácil de escribir líneas de texto si usted sabe cuánto deben estar separadas verticalmente:¿Cómo calculo el PDF que proviene de TTF?

 
16 TL 
/F1 12 Tf 
(Line 1) ' 
(Line 2) ' 
(Line 3) ' 
(Line 4) ' 

No estoy usando ninguna biblioteca para esto, ya que es un ejercicio de aprendizaje. He escrito un código para analizar directamente archivos TTF y extraer anchos de caracteres, y otros elementos que son necesarios para los diccionarios PDF FontDescriptor.

He estado leyendo la especificación de formato de archivo TTF para tratar de averiguar dónde se encuentra la altura de la línea o cómo se puede calcular, pero no he tenido suerte.

Suponiendo que tengo los siguientes: Givens

  • El tamaño de la fuente.
  • Todos los valores relevantes desde el archivo TTF (Ascender, descensor, Line Gap, etc.)

¿Cómo calculo PDF que va desde TTF?

edición

Parece ser que el valor de la línea Gap desde el archivo TTF es instrumental en el cálculo de PDF que lleva, pero algunas fuentes no proporcionan un valor adecuado para ello (Courier New en Windows, por ejemplo).

+0

+1 No tengo idea de cuál es la respuesta, pero me gustaría saber también, ya que he hecho mi parte de la salida manual de PDF. – JasonSmith

Respuesta

3

De ninguna manera estoy en lo más mínimo conocimiento acerca de las fuentes, o tener una respuesta definitiva, pero pensé que había puesto algunos enlaces en relación con alguna información que encontré en relación con el tema.

La Microsoft OpenType Specification (vea la sección de Baseline To Baseline Distances, hacia la parte inferior) define leading como siendo igual a LineGap.

La Manzana Text System Overview establece que:

espacio adicional durante la composición tipográfica entre líneas de texto se llama conduce, después de que los lingotes de plomo utilizadas para tal fin en el diseño de página de tipo de metal tradicional. (Que conduce a veces también se llama linegap.)

Así, de acuerdo con estos enlaces, LineGap no es sólo utilizada para calcular el líder, pero en realidad es el principal.

+0

Fuentes como Courier Nuevo en Windows tiene un 0 en Line Gap, ¿ha tratado con eso en absoluto? – Martin

+0

Buena investigación, pero por lo que entiendo, en lenguaje PDF, el liderazgo se define como la distancia desde la línea de base anterior a la línea base actual. En otras palabras, puede usar el cálculo de la distancia entre la línea base y la línea base en la especificación OpenType directamente. – WCWedin

0

no estoy del todo seguro de qué es lo que está tratando de hacer, pero parece que desea incrustar fuentes TrueType en un documento PDF. Si ese es el caso, ¿por qué no solo usas látex?

http://www.radamir.com/tex/ttf-tex.htm

Cuestiones relacionadas