Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.25;
Скачать: CL | DM;

Вниз

Загрузка изображений средствами Windows   Найти похожие ветки 

 
Ricks ©   (2007-01-29 17:29) [0]

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


 
DVM ©   (2007-01-29 17:39) [1]


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

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


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

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

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


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

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


 
Ricks ©   (2007-01-29 20:32) [4]


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

Именно!


> OleLoadPicture

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


 
Ricks ©   (2007-01-29 20:53) [5]

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

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

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


 
Ricks ©   (2007-01-29 21:10) [6]

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

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

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

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


 
SamBrook ©   (2007-01-29 21:13) [7]


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

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


 
Ricks ©   (2007-01-30 10:37) [8]

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



Страницы: 1 вся ветка

Текущий архив: 2007.11.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
2-1194128657
SveTTT
2007-11-04 01:24
2007.11.25
Где ошибка?


15-1192806374
Slider007
2007-10-19 19:06
2007.11.25
С днем рождения ! 19 октября 2007 пятница


4-1178613598
Iv_
2007-05-08 12:39
2007.11.25
Регион, процедура прорисовки окна


15-1192786540
atruhin
2007-10-19 13:35
2007.11.25
Где найти описание uxtheme.dll


15-1193293364
shadowonline
2007-10-25 10:22
2007.11.25
Остановка загрузки Windows до окончания работы программы