|
Mostrar Mensajes
|
Páginas: [1] 2 3
|
3
|
Programación / Programación C/C++ / Re: [Ayuda] Abrir fichero de imagen en c
|
en: 14 Enero 2014, 20:16 pm
|
hola, gracias por responder pero no entiendo mucho lo que me estas tratando de explicar, estoy empezando a programar en c y pues no se si me puedas ayudar con un ejemplo especifico #include <alloc.h> #include <conio.h> #include <graphics.h> #include <stdio.h> #include <stdlib.h>
typedef struct { char Type[2]; /*Tipo de archivo. establecido en "BM".*/ unsigned long Size; /*Tamano en BYTES del archivo*/ unsigned long Reserved; /*Reservado. establecido en cero*/ unsigned long OffSet; /*Desplazamiento hacia datos*/ unsigned long headsize; /*Tamaño de la cabecera del bitmap. establecido en 40.*/ unsigned long Width; /*Anchura en pixeles.*/ unsigned long Height; /* Altura en pixeles.*/ unsigned int Planes; /*Numero de Planos. establecido en 1.*/ unsigned int BitsPerPixel; /*Numero de Bits por pixeles.*/ unsigned long Compression; /*Compresion. Usually establecido en 0.*/ unsigned long SizeImage; /*Tamano en BYTES del bitmap.*/ unsigned long XPixelsPreMeter; /*Pixeles Horizontales por metro.*/ unsigned long YPixelsPreMeter; /*Pixeles Verticales por metro.*/ unsigned long ColorsUsed; /*Numero de colores utilizados.*/ unsigned long ColorsImportant; /*Numero de colores "Importantes".*/ }BMP;
int muestraBMP(int x, int y, char* NomArchivo); void main() { int color; int gd , gm ; gd = VGA ; gm = VGAHI; clrscr(); initgraph(&gd,&gm,"C:\TC20\BIN"); muestraBMP(0,0,"pez.bmp"); /* Ingresa el nombre y direccion del archivo aqui */ getch(); closegraph(); }
int muestraBMP(int x, int y, char* NomArchivo) { int b,a; BMP Obj;
unsigned char* Datas; int in=0; unsigned char c=0; FILE * fp;
fp = fopen(NomArchivo,"rb"); if(!fp){ printf("Error : No se puede abrir el archivo ..."); getch(); exit(0); }
fread(&Obj, sizeof(Obj), 1, fp); if(Obj.BitsPerPixel!=4) /* Este NO es un bmp de 16 colores que podamos leer*/ { fclose(fp); printf("Error : Formato de archivo no soportado..."); getch(); exit(0); }; fseek(fp,Obj.OffSet,SEEK_SET); Datas=(unsigned char*) calloc(Obj.Width/2+1, sizeof(unsigned char)); for(b=Obj.Height;b>=0;b--) { fread(Datas, sizeof(unsigned char), Obj.Width/2, fp); c=0; in=0; for(a=0;a<=Obj.Width;a+=2) { c = (Datas[in] | 0xF0) & 0x0F; putpixel(a+1+x,b+y,c); c = (Datas[in] | 0x00) >>4; putpixel(a+x,b+y,c); in++; } } free (Datas); fclose(fp); return 1; } Este es un codigo que me paso una amiga, pero no me corre muy bien, no se que estoy haciendo mal
|
|
|
4
|
Programación / Programación C/C++ / [Ayuda] Abrir fichero de imagen en c
|
en: 14 Enero 2014, 19:10 pm
|
Hola comunidad, hoy me dejaron un proyecto en TC20. El proyecto se basa en abrir ficheros y modo grafico. Lo que me preocupa es la parte de abrir el fichero de una imagen, tengo entendido que solo se pueden abrir imagenes con extension .bmp pero no se como hacerlo. Si alguien me puede ayudar con un codigo de ejemplo se lo agradeceria mucho.
Espero su respuesta y muchas gracias de antemano.
|
|
|
8
|
Media / Multimedia / Re: Video desfasado con WinAvi
|
en: 10 Julio 2012, 22:35 pm
|
Usa el "Magic DVD Ripper"... con solo este programa ripearas y convertiras al formato que quieras sin problema de desfase entre audio y video, y pudiendo editar títulos y otras cosillas más...
Para poner 15 capítulos en secuencia para luego grabarlos en un DVD, te estaría perfecto el "ProShow Producer"...
Saludos y suerte... Perdón, cuál de los dos me recomendas?. 1.- Magic DVD Ripper o 2.- ProShow Producer De antemano gracias por la sugerencia
|
|
|
10
|
Media / Multimedia / Re: Video desfasado con WinAvi
|
en: 10 Julio 2012, 03:55 am
|
Gracias por la respuesta, pero esto no me sirve. Lo quiero pasar a .vob porque no todos los reproductores reproducen .avi y es que no pretendo verlo sola, sino, con las amistades. No me importa trabajar la sincronización de los 153 capitulos, así que, si hay manera de repararlos, por favor tú o alguien que me ayude Como mencioné en el título, es el video el desfasado (o atrasado), el audio ocurre una pelea y la pelea aparece en video tipo 3 segundos después. Si hay cómo sincronizarlos, por favor, díganme el cómo y que incluya el poder ripearlo luego con mi WinAvi
|
|
|
|
|
|
|