C/Visual C - Ayuda con graficos vectoriales

 
Vista:

Ayuda con graficos vectoriales

Publicado por Emir Mtz. (2 intervenciones) el 12/05/2003 20:31:55
Antes que nada un saludo a todos.

Las preguntas o dudas que presento son las siguientes

1. Como prodria cargar un metaarchivo en Turbo C++ para poder mostrarlo en pantalla. (Estructura de este tipo de archivos).

2. Se como cargar las fuentes que incluye el TC, pero me gustaria crear mis propias fuentes. Si alguien me podria pasar informacion como manipular estas fuentes, (crear, dibujar, estructura del archivo, etc).

Nota: Se como crear fuentes a base de puntos pero no me gustan debido a que no pueden rotarse, cambiar tamaño, etc.

Por el momento de despido. Gracias por la ayuda que puedan brindarme.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cargando metaarchivos y creando fuentes en Turbo C++

Publicado por Alejandro (1153 intervenciones) el 02/06/2025 22:37:28

1. Cargar un metaarchivo en Turbo C++



Los metaarchivos son archivos que contienen gráficos vectoriales y pueden ser utilizados para representar imágenes de forma escalable. En Turbo C++, puedes utilizar la función `putimage` para mostrar imágenes en pantalla, pero primero necesitas cargar el metaarchivo en un formato que Turbo C++ pueda entender.

Estructura de un metaarchivo:
Los metaarchivos en Turbo C++ generalmente se guardan en un formato específico que puede incluir comandos de dibujo. Sin embargo, Turbo C++ no tiene soporte nativo para cargar metaarchivos directamente. En su lugar, puedes convertir el metaarchivo a un formato de imagen compatible (como BMP) y luego cargarlo.

Ejemplo de carga de una imagen BMP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <graphics.h>
#include <conio.h>
 
void loadAndDisplayImage(const char* filename) {
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "C:\\Turboc3\\BGI");
 
    // Cargar la imagen BMP
    readimagefile(filename, 0, 0, getmaxx(), getmaxy());
 
    getch();
    closegraph();
}
 
int main() {
    loadAndDisplayImage("mi_imagen.bmp");
    return 0;
}

2. Crear y manipular fuentes en Turbo C++



Para crear tus propias fuentes en Turbo C++, puedes utilizar el formato de archivo de fuente de Turbo C, que es un archivo de tipo `.FON`. Las fuentes en Turbo C++ se definen mediante un conjunto de puntos que representan cada carácter.

Pasos para crear fuentes personalizadas:

1. Definir la fuente: Puedes crear una fuente utilizando un editor gráfico que te permita definir cada carácter como un conjunto de puntos. Cada carácter se define en una matriz de bits.

2. Guardar la fuente: Una vez que hayas definido la fuente, guárdala en un archivo `.FON`. La estructura del archivo puede variar, pero generalmente consiste en una cabecera que define el tamaño de la fuente y los datos de cada carácter.

3. Cargar la fuente en Turbo C++:
- Usa la función `settextstyle` para establecer la fuente que deseas utilizar.
- Usa `loadfont` para cargar tu fuente personalizada.

Ejemplo de carga de una fuente personalizada:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <graphics.h>
#include <conio.h>
 
void loadCustomFont(const char* fontFile) {
    int gd = DETECT, gm;
    initgraph(&gd, &gm, "C:\\Turboc3\\BGI");
 
    // Cargar la fuente
    loadfont(fontFile);
 
    // Establecer el estilo de texto
    settextstyle(1, 0, 2); // Tipo de fuente, dirección, tamaño
 
    outtextxy(100, 100, "Texto con fuente personalizada");
 
    getch();
    closegraph();
}
 
int main() {
    loadCustomFont("mi_fuente.fon");
    return 0;
}

Recursos adicionales



- Documentación de Turbo C++: Busca en la documentación de Turbo C++ para obtener más información sobre la manipulación de gráficos y fuentes.
- Foros y comunidades: Participa en foros de programación donde otros usuarios de Turbo C++ pueden compartir sus experiencias y recursos.

Emir, espero que esta información te sea útil para trabajar con metaarchivos y fuentes personalizadas en Turbo C++.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar