¡Advertencia!
Este tema no ha tenido respuestas en más de un mes. Recuerda que si deseas añadir una nueva debes cumplir con las normas de la web.
Bueno chicos... Tengo una duda mas o menos complicada.
Estoy haciendo un editor de texto pero en el momento de hacer el cambiar tipo de letra me vino una duda...
Yo puedo agregar cada letra al cargar el formulario a el List de la siguiente manera

List1.AddItem "Arial"

Pero ahora digo ¿y si esa persona no tiene esa letra?, tiraria un error fatal en tiempo de ejecucion. me preguntaria si es posible, enlistar todas las letras del pc de manera automatica en el list.

Un ejemplo de esto es Word, power point, block de notas, entre otros...
¿Una ayuda? :S

Edito. se me olvido poner que es en VB6 xddd

Arquitecto, diseñador y programador | Comenzando a proyectar mi vida bajo mis propios ideales. Administrador de ilDom, Twiteck y Century21

Bueno chicos... Tengo una duda mas o menos complicada.
Estoy haciendo un editor de texto pero en el momento de hacer el cambiar tipo de letra me vino una duda...
Yo puedo agregar cada letra al cargar el formulario a el List de la siguiente manera

List1.AddItem "Arial"

Pero ahora digo ¿y si esa persona no tiene esa letra?, tiraria un error fatal en tiempo de ejecucion. me preguntaria si es posible, enlistar todas las letras del pc de manera automatica en el list.

Un ejemplo de esto es Word, power point, block de notas, entre otros...
¿Una ayuda? :S

Edito. se me olvido poner que es en VB6 xddd

Aqui las letras que vienen por defecto en cada S.O
http://www.apaddedcell.com/web-fonts
Espero que pueda ayudarte xD es ir mirando columna a columna y ya

Aqui las letras que vienen por defecto en cada S.O
http://www.apaddedcell.com/web-fonts
Espero que pueda ayudarte xD es ir mirando columna a columna y ya


Si pero, me refiero, no hay una manera que agarre las fonts actuales del pc?
y no unas que ya vengan predefinidas por el programa...

Arquitecto, diseñador y programador | Comenzando a proyectar mi vida bajo mis propios ideales. Administrador de ilDom, Twiteck y Century21
¿Se pueden manejar archivos con VB6? Podrías entrar a la carpeta fonts y mirar que fuentes están instalas.

¿Se pueden manejar archivos con VB6? Podrías entrar a la carpeta fonts y mirar que fuentes están instalas.


Si, eso intente pero... habría que buscar todos los .ttf, agarrar el nombre del archivo, para ser mostrados en el List
Seria "muy lento", aparte que tendría que usar un Modulo BAS lo mas seguro, y de Módulos aun no me e enfocado.

Si alguien sabe de un tutorial, Source, o me pueda ayudar, se lo agradecería un monton.

Saludos.

Arquitecto, diseñador y programador | Comenzando a proyectar mi vida bajo mis propios ideales. Administrador de ilDom, Twiteck y Century21

Bueno chicos... Tengo una duda mas o menos complicada.
Estoy haciendo un editor de texto pero en el momento de hacer el cambiar tipo de letra me vino una duda...
Yo puedo agregar cada letra al cargar el formulario a el List de la siguiente manera

List1.AddItem "Arial"

Pero ahora digo ¿y si esa persona no tiene esa letra?, tiraria un error fatal en tiempo de ejecucion. me preguntaria si es posible, enlistar todas las letras del pc de manera automatica en el list.

Un ejemplo de esto es Word, power point, block de notas, entre otros...
¿Una ayuda? :S

Edito. se me olvido poner que es en VB6 xddd

Lo que yo te aconsejo es buscar un tipo de fuente que esté en todos los S.O. y aplicar una condicional ahí, para que si no tienen dicha font, les muestra otra predeterminada.
Lo que dice Physlet no es válido. Dependiendo del sistema operativo hay unas fuentes u otras. Lo que si que puedes hacer es saber las fuentes predeterminadas de Windows, Mac, y las principales distribuciones Linux y que el programa detecte el SO, y cargue unas fuentes segun el SO.

Tu has caso a estos tipos que yo no tengo ni puta idea de esa cosas...

¿Y entonces para qué contestas?

Lo que dice Physlet no es válido. Dependiendo del sistema operativo hay unas fuentes u otras. Lo que si que puedes hacer es saber las fuentes predeterminadas de Windows, Mac, y las principales distribuciones Linux y que el programa detecte el SO, y cargue unas fuentes segun el SO.

Parece que no he entendido bien lo que quiere hacer, me lo explicas mejor?
En Windows tienes Times New Roman, Arial, etc... Pero esas fuentes, al no ser libres, no están incluídas en Ubuntu (y supongo que en otras muchas distribuciones de Linux). Por lo que tú dices no es valido. De todas formas, no sé nada de VB, ¿se puede compilar un aplicación de VB en GNU/Linux? Igual estoy diciendo algo inútil.

Por eso digo, que sepa las fuentes de las principales distros, y segun el SO que tenga el programa utilice unas fuentes u otra.

Si hablamos de Windows, ¿todos las versiones tienen las mismas fuentes, no? Igual alguna que han quitado o puesto, pero básicamente será lo mismo.
VisualBasic no es un lenguaje multiplataforma. Lo único que si es posible es que hayan emuladores que permitan ejecutarlo, pero no creo que alguien quiera perder el tiempoe n eso. Para algo existe Java y C++ que sí son multiplataformas.
Y fuentes como Arial, Verdana y Times New Roman si están en todos las versiones de Windows.
Ahmm no entiendo mucho lo que quieres hacer joaco, pero para los demás, hay que saber que existen tipos de fuente y fuentes...

Cada sistema operativo y navegador interpretan de distinta forma estas fuentes predeterminadas.

- serif: "Times New Roman" en Windows, y "Times" en Macintosh (diferente a la de Windows).
- sans serif: “Arial” en Windows, y "Helvetica" en Macintosh.
- monospace: "Courrier New" en Windows, "Courrier" en Macintosh, y por lo general "VeraSans" o "DejaVuSans" en Linux.


Para las fuentes con serifa, debemos definir:
"Times New Roman", Times, serif;

Para las fuentes sin serifa:
Verdana, Arial, Helvetica, sans-serif;

(Verdana es más fácil de leer en la pantalla que Arial, incluso si existe controversia acerca del uso de esta fuente)

Para las fuentes con un espacio fijo:
"DejaVu Sans Mono","Bitstream Vera Sans Mono", monospace;

DejaVu y Vera son familias de fuentes opensource fáciles de leer y que permiten (contrariamente a Courrier) distinguir bien el 0 de la O y el 1 de la l.
De preferencia elegir éstas antes que Courrier.
(Se encuentran por defecto en la mayoría de distribuciones Linux recientes)

Mas info aca

Políticamente irresistible.
x'DDDDDDDDDDD

Chicos.. después de unas buenas semanas...
Encontré la forma de coger las letras del pc en forma automática, Eso se debe gracias a Screen.Fonts y Screen.FontCount

Lo realice con un bucle usando Screen.FontCount (Numero de fuentes del sistema), y después aplique Screen.Fonts al numero que resulto de la variable para mostrar la letra correspondiente a la id.

Muchísimas gracias de verdad a los que trataron de ayudar...
Y pensando que la cosa fue demasiado fácil y yo aquí matándome.. x'D

Saludos

Arquitecto, diseñador y programador | Comenzando a proyectar mi vida bajo mis propios ideales. Administrador de ilDom, Twiteck y Century21
xDDDDDDD... Yo había pensado que si no tendría algo sencillito para esto Visual Basic, pero como estabas preguntando como hacerlo supuse que no Si se nos hubiese ocurrido decir algo sobre si no existiría una función que haga eso te hubiesemos ahorrado bastante trabajo

xDDDDDDD... Yo había pensado que si no tendría algo sencillito para esto Visual Basic, pero como estabas preguntando como hacerlo supuse que no Si se nos hubiese ocurrido decir algo sobre si no existiría una función que haga eso te hubiesemos ahorrado bastante trabajo


si jaja xDDDDD
Ya estábamos inventando que si buscar archivos ttf, o simplemente poner las letras predeterminadas xD

Quien diría... solo 2 funciones y un bucle y listo xd

Arquitecto, diseñador y programador | Comenzando a proyectar mi vida bajo mis propios ideales. Administrador de ilDom, Twiteck y Century21