Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
2-1193943225
SKIPtr
2007-11-01 21:53
2007.11.25
Как удалить форму


15-1193080753
9899100
2007-10-22 23:19
2007.11.25
ктонибудь кто разбирается в схемотехнике!!! помогите!!!


15-1192783300
Сама Сингулярность
2007-10-19 12:41
2007.11.25
Где пятничные задачки?


15-1193073294
БарЛог
2007-10-22 21:14
2007.11.25
В проигрывателе не играются некоторые DVD-диски


2-1194028039
Ореол
2007-11-02 21:27
2007.11.25
Форма из *.dll




   Наверх