Графика и мультимедиа
- Преобразование битового изображения из цветного в 256 градаций серого
// Преобразование осуществляется следующей функцией:
void SetBitmapPaletteToGreyScale(Graphics::TBitmap *pBitmap){
LOGPALETTE *pal;
HPALETTE hpal;
int i;
int PaletteSize; //Size of the palette buffer
pBitmap->PixelFormat = pf8bit;
pal = NULL;
PaletteSize = sizeof(TLogPalette) + (sizeof(TPaletteEntry) * 255);
pal = (LOGPALETTE *) malloc(PaletteSize);
pal->palVersion = 0x300;
pal->palNumEntries = 256;
for (i = 0 ; i
{
pal->palPalEntry[i].peRed = i;
pal->palPalEntry[i].peGreen = i;
pal->palPalEntry[i].peBlue = i;
pal->palPalEntry[i].peFlags = PC_NOCOLLAPSE;
}
hpal = CreatePalette(pal);
if(hpal != 0) pBitmap->Palette = hpal;
free(pal);
}
- Как пpоигpать MIDI без MediaPlayer-а
// Для того чтобы проиграть MIDI:
#include <mmsystem.h>mciSendString("open anny.mid type sequencer alias MUSIC", NULL, 0, 0);
mciSendString("play MUSIC from 0", NULL, 0, 0);
- Как воспроизвести звуковой файл без MediaPlayer-а
// Для того чтобы воспроизвести звуковой файл:
// напишите следующий код
#include "mmsystem.h"
DWORD fdwSound = SND_ASYNC | SND_FILENAME;PlaySound("C:\\click.wav",NULL, fdwSound);
- Как рисунок TBitmap сделать монохромным?
// напишите следующий код
BMP.Monochrome = true ; //где BMP - TBitmap
Содержание раздела