Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Загрузка изображений средствами Windows [D7, WinXP]


Ricks ©   (2007-01-29 17:29:00) 

Как загрузить картинку любого формата, который поддерживается системой? Как это сделано в GDI+
Не используя этот самый GDI+ и сторонние компоненты.
Должен же быть набор каких-нибудь функций!?


Ricks   (2007-01-30 10:37:00) [1]

Покопался с SetMapMode, но не нашел ничего подходящего... в смысле одним вызовом этой ф-ии справиться с задачей...


SamBrook   (2007-01-29 21:13:00) [2]


> Вернее, ровно в 26.46 раз!
> Что-то мне подсказывает что это число как-то связанно с
> разрешением (DPI) монитора (у меня 96), но
>
> 26.46 : 96 = 0.275625 ?
> 96 : 26.46 = 3.628118 ?
>
> Как же (и с чем) это магическое число связать?

Система координат другая используется.
Посмотри справку по фунции SetMapMode и определи какая.


Ricks   (2007-01-29 21:10:00) [3]

Все, разобрался!

Оказывается:

P : TPicture;

.....
P.get_Width(W);
P.get_Height(H);

RealW:=Round( (W * Screen.PixelsPerInch) / (1000 * INCH));
RealH:=Round( (H * Screen.PixelsPerInch) / (1000 * INCH));

где INCH = 2.54016

Вот такие они хитрые! :)


Ricks   (2007-01-29 20:53:00) [4]

Вернее, ровно в 26.46 раз!
Что-то мне подсказывает что это число как-то связанно с разрешением (DPI) монитора (у меня 96), но

26.46 : 96 = 0.275625 ?
96 : 26.46 = 3.628118 ?

Как же (и с чем) это магическое число связать?


Ricks   (2007-01-29 20:32:00) [5]


> Типа кодеков для изображений

Именно!


> OleLoadPicture

Разобрался с этим, только есть одно но: ширина и высота картинки (при получении через get_width/get_height) оказываются ровно в 26.459375 больше, не зависмо даже от DPI картинки! :(


Sapersky   (2007-01-29 18:03:00) [6]

OleLoadPicture (bmp, jpg, ico, gif без анимации).
В качестве примера см. TinyPictures: http://www.homm86.narod.ru


Vovan #2   (2007-01-29 17:50:00) [7]

>что значит "формат, поддерживаемый системой"?

Типа кодеков для изображений.


DVM   (2007-01-29 17:39:00) [8]


> Должен же быть набор каких-нибудь функций!?

что значит "формат, поддерживаемый системой"?


Наверх

Титульная страница Поиск, карта сайта Написать письмо