Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   agregar fonts (https://www.clubdelphi.com/foros/showthread.php?t=72809)

Celta 12-03-2011 20:07:35

agregar fonts
 
hola a todos del foro, tengo un problema... tengo una aplicación y le puse un font que me baje de internet... todo bien hasta hay, pero cuando lo paso a otra computadora cambia el font... por que? se puede poner el font y que aparezca en todas las compus?
saludos

ElKurgan 13-03-2011 11:21:54

Evidentemente, si no tienes la fuente descargada en los demás ordenadores, windows carga la que le da la gana.

Tendrás que instalarla en los demás ordenadores donde lleves tu aplicación.

Saludos

radenf 13-03-2011 12:15:38

Estimado Celta:

Una forma de incluir tu fuente en el ejecutable y que por lo tanto se muestre en cualquier pc, sin tener que instalarla es la siguiente:

Incluye en tu Form principal el siguiente código:

Código Delphi [-]
procedure CargarFuente( sFuente: String );
begin
AddFontResource( PChar( ExtractFilePath( Application.ExeName ) + sFuente ) );
SendMessage( HWND_BROADCAST, WM_FONTCHANGE, 0, 0 );
end;

procedure EliminarFuente( sFuente: String );
begin
RemoveFontResource( PChar( ExtractFilePath( Application.ExeName ) + sFuente ) );
SendMessage( HWND_BROADCAST, WM_FONTCHANGE, 0, 0 );
end;

y en los eventos FormCreate y FormDestroy colocas este código:

Código Delphi [-]
procedure TFormPrincipal.FormCreate(Sender: TObject);
begin
CargarFuente( 'Dungeon.ttf' );
Label1.Font.Name := 'Dungeon';

procedure TFormPrincipal.FormDestroy(Sender: TObject);
begin
EliminarFuente( 'Dungeon.ttf' );
end;

Este ejemplo es para cargar la fuente Dungeon, que debes incluir en la carpeta de instalación de tu ejecutable, para que aparezca en el Label1. Puedes colocar cualquier fuente para que la utilize cualquier componente, definiéndola en el evento FormCreate.
Espero que te sirva

Salu2

Celta 14-03-2011 23:34:19

ok
 
gracias por responder me sirvió y mucho :D
saludos


La franja horaria es GMT +2. Ahora son las 08:30:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi