winapi — Как я могу добавить текст в мой растровый файл в Stack Overflow

С примером кода ниже, я успешно создал файл .bmp, который при открытии просто отображает серый квадрат. Теперь я хотел бы добавить текст в растровое изображение перед его сохранением. Например: «Hello World» зеленым цветом должен отображаться поверх серого квадрата. Пост переполнения стека Вот это самая близкая вещь, которую я нашел до сих пор. К сожалению, я до сих пор не могу понять полную реализацию.

Обратите внимание, что я хотел бы избежать использования любых сторонних библиотек. Любая помощь будет оценена, спасибо.

void SaveImage(const char* filename)
{
int Width = 470;
int Height = 470;
FILE *f;
unsigned char *img = NULL;
int triple_area = 3*Width*Height;
if(img) free(img);
img = (unsigned char *)malloc(triple_area);
memset(img,0,sizeof(img));
int res;
Assign_Bitmap_Req(triple_area); //Sets up BmpFileHeader, BmpInfoHeader, BmpPadding as unsigned char arrays

for(int i=0; i<Width; i++)
{
for(int j=0; j<Height; j++)
{
res = Height - 1 - j;
img[(i+res*Width)*3+2] = (unsigned char)(100);
img[(i+res*Width)*3+1] = (unsigned char)(100);
img[(i+res*Width)*3+0] = (unsigned char)(100);
}
}

f = fopen(filename,"wb");
fwrite(BmpFileHeader,1,14,f);
fwrite(BmpInfoHeader,1,40,f);
int remainder = (4-(Width*3)%4)%4;
for(int i=0; i<Height; i++)
{
fwrite(img+(Width*(Height-i-1)*3),3,Width,f);
fwrite(BmpPadding,1,remainder,f);
}
fclose(f);
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]