programaciÓn multimedia archivos bitmap (.bmp). programación multimediaarchivos.bmp © carlos a....
TRANSCRIPT
PROGRAMACIÓN MULTIMEDIA
ARCHIVOS BITMAP(.BMP)
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
2
Programación Multimedia Archivos .BMP
Colores
Bitmaps
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
3
Programación Multimedia Archivos .BMP
Contextos de Dispositivo
Estructura que define un conjunto de objetos gráficos con sus correspondientes atributos:
1. Pluma2. Brocha3. Mapa de bits (Bitmap)4. Paleta5. Fuente6. Región 7. Path
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
4
Programación Multimedia Archivos .BMP
- Independencia del dispositivo
- Dos librerías dinámicas: GDI.DLL y otra, dependiente del dispositivo.
- Comunicación con el GDI a través de los CD
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
5
Programación Multimedia Archivos .BMP
Atributos:
Bitmap Tamaño, Dimensiones, Formato del Color, Compresión...
Brocha Estilo, Color, Origen...Paleta Colores y TamañoFuente Anchura, Altura, Conjunto de
caracteres...Path FormaPluma Estilo, Grosor y ColorRegión Ubicación y Dimensiones
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
6
Programación Multimedia Archivos .BMP
Modos Gráficos:
Background Define cómo los colores del fondo se mezclan con las ventanas existentes o con los colores de la pantalla en operaciones gráficas o de texto.
Drawing Define cómo los colores se mezclan con las ventanas existentes o con los colores de la pantalla en operaciones de texto, gráficas, con plumas o con brochas.
Mapping Define cómo se “mapea” la salida gráfica hacia una ventana, una pantalla o un papel impreso.
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
7
Programación Multimedia Archivos .BMP
Modos Gráficos:
Polygon-fill Define cómo se usa la brocha para rellenar el interior de regiones complejas.
Stretching Define cómo los colores de los bitmaps se mezclan con ventanas existentes o con los colores de la pantalla cuando escalamos el bitmap.
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
8
Programación Multimedia Archivos .BMP
Modos Gráficos (funciones):
GetBkModeGetROP2GetMapModeGetPolyFillModeGetStretchBltMode SetBkModeSetROP2SetMapModeSetPolyFillModeSetStretchBltMode
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
9
Programación Multimedia Archivos .BMP
Tipos de Contextos de Dispositivo:
•Display
•Printer
•Memory
•Information
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
10
Programación Multimedia Archivos .BMP
Contextos de Dispositivo Display:
Dispositivos Tipo Class: Compatibilidad con API 16
Dispositivos Tipo Common: Aplicaciones normales, los CD son limitados y hay que liberarlos
Dispositivos Tipo Private: Aplicaciones de diseño (CAD) o de dibujo. Los CD son permanentes hasta que se cierra la ventana. Su creación va asociada a la creación de la ventana.
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
11
Programación Multimedia Archivos .BMP
Contextos de Dispositivo Printer:
• Para manejar Impresoras de Impacto, de Chorro de Tinta, Láser y Plotters.
• Son iguales que los Contextos de Dispositivo Display de tipo Common
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
12
Programación Multimedia Archivos .BMP
Contextos de Dispositivo Memory:
• Asociados a los Bitmaps
• “Espejo” en disco de un determinado dispositivo
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
13
Programación Multimedia Archivos .BMP
Contextos de Dispositivo Information:
•Se utilizan para obtener información de los dispositivos
•Se crean mucho más rápidos que los demás
•Hay que liberarlos
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
14
Programación Multimedia Archivos .BMP
Operaciones:
· Enumerar los objetos existentes · Crear nuevos objetos · Borrar los objetos existentes · Grabar los objetos actuales, con sus atributos · Recuperar objetos grabados previamente, con sus atributos
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
15
Programación Multimedia Archivos .BMP
Funciones:
GetObject()GetCurrentObject()SelectObject()DeleteObject()Create...()DeviceCapabilities()SaveDC()RestoreDC()ResetDC()
Contextos de Dispositivo
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
16
Programación Multimedia Archivos .BMP
Definición
• Objeto gráfico que sirve para crear, manipular (escalar, rotar, pintar) y almacenar imágenes como archivos en disco.
• Uno de los siete objetos incluidos en un contexto de dispositivo
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
17
Programación Multimedia Archivos .BMP
Definición
- Una cabecera que describe la resolución, las dimensiones, etc. - Una paleta de colores. - Un vector de bits que define la relación entre los pixels de la imagen y las entradas de la paleta.
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
18
Programación Multimedia Archivos .BMP
Tipos de Bitmaps:
• Bitmaps Independientes del Dispositivo
• Bitmaps Dependientes del Dispositivo
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
19
Programación Multimedia Archivos .BMP
Bitmaps independientes del dispositivo:
- Formato de color- Resolución- Paleta- Vector de bits para mapear RGB- Compresión de datos
Estructuras:
BITMAPINFO: BITMAPINFOHEADER RGBQUAD
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
20
Programación Multimedia Archivos .BMP
Bitmaps independientes del dispositivo:
Clases: “Top-Down” y “Bottom-up”
Color: 1 bit, monocromo; 4, VGA; 8,16 y 32, otros
Resolución: Píxels por metro.
Paleta: Vector de estructuras RGBQUAD
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
21
Programación Multimedia Archivos .BMP
Bitmaps dependientes del dispositivo:
- Compatibilidad con API 16 bits.
- Guardan toda la información en una estructura: BITMAP
- Existen dos tipos: Discardable (se elimina si no es incluido en un CD) y Undiscardable
- Se pueden crear con la misma llamada que se usa para crear BMPs independientes del dispositivo: CreateDIBitmap
Bitmaps
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
22
Programación Multimedia Archivos .BMP
Bitmaps Operaciones:
- Rotar: PlgBlt()
- Ajustar: Stretchblt()
- Almacenamiento: BITMAPFILEHEADER BITMAPINFOHEADER
RGBQUAD
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
23
Programación Multimedia Archivos .BMP
- Combinación de los tres colores primarios Rojo, Verde y Azul.
- Cada color, representado por 8 bits
- Blanco: (255,255,255)
- Negro: (0,0,0)
Colores
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
24
Programación Multimedia Archivos .BMP
- Color Aproximado: GetNearestColor()
COLORREF GetNearestColor(
HDC hdc, COLORREF crColor );
- Bitmaps: Dependencia de la paleta.
Colores
© Carlos A. Lázaro Carrascosa. Laboratorio de Comunicación Oral R.W.N.
25
Programación Multimedia Archivos .BMP
Funciones:
CreatePalette()
SelectPalette()
SetPaletteEntries()
Colores
PROGRAMACIÓN MULTIMEDIA
ARCHIVOS BITMAP(*.BMP)