![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка в GetBitmapDimensionEx. [D6, XP]
Б © (2009-07-26 23:57:00)
Function Load(const FileName: string): boolean;
Var
Size: TSize;
Bmp: HBITMAP;
begin
Bmp:= LoadImage(0, PChar(FileName), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE or LR_CREATEDIBSECTION);
If not GetBitmapDimensionEx(Bmp, Size) then
begin
Result:= False;
Exit;
end;
. . . . .
В итоге Size.cx и Size.cy, всегда по-нулям. Почему?
Б (2009-07-27 09:57:00) [21]
> А чего его получать? Он всегда будет, как и любой другой
> дескриптор, иметь размер в 4 байта.
Не. Мне нужен не размер дескриптора в байтах, а его размерЫ: ширина и высота.
Amoeba (2009-07-27 00:45:00) [22]
> А как тогда получить размеры дескриптора изображения
А чего его получать? Он всегда будет, как и любой другой дескриптор, иметь размер в 4 байта.
Б (2009-07-27 00:15:00) [23]Точно.
А как тогда получить размеры дескриптора изображения, кроме GetObject?
turbouser (2009-07-27 00:10:00) [24]Справку надо читать..
MSDN:
http://msdn.microsoft.com/en-us/library/dd144851%28VS.85%29.aspx
The retrieved dimensions must have been set by the SetBitmapDimensionEx function.
...
The function returns a data structure that contains fields for the height and width of the bitmap, in .01-mm units. If those dimensions have not yet been set, the structure that is returned will have zeroes in those fields.
Б (2009-07-27 00:09:00) [25]Мне нужно получить размеры дескриптора изображения.
Б (2009-07-26 23:59:00) [26]Такое происходит для любых загруженных изображений.