![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить размеры картинки
Saracin © (2003-02-05 19:32:00)Имеется TImage надо получить размеры картинки в см.
Например PhotoShop в меню Image->ImageSize доет инфо:
Width в пиксела (= Image1->Picture->Width)
Height в пикселах (= Image1->Picture->Width)
Width в см (как узнать ?)
Height в см (как узнать ?)
Resolution в pixel per inch (как узнать ?)
C Уважением Saracin.
RBear (2003-04-08 15:40:00) [1]Упс, не пускает. Слишком болшое сообщение. Вобщем, если кому надо код, напишите мне
RBear (2003-04-08 15:30:00) [2]Я тоже уже сталвкивался с такой проблемой. Действительная проблема в том, что WinAPI не сохраняет в BMP информацию о разрешении (PixelsPerMeter, вроде так). В Дельфи класс TBitmap тоже эту информацию не считывает и не сохраняет.
При этом, как показали опыты, картинки на TImage рисуются в разрешении устройства (т.е. попросту графической карты), которое по дефолту утсновлено в 96 дпи.
Информация о разрешении сохраняется не во всех форматах. В тех, где это всё-таки сохраняется, можно прочитать эту информацию из файла (код ниже). Для тех, где это информация отсутствует, надо делать какой-то workaround. Например Фотошоп, не находя информацию о разрешении (например в файлах форматов GIF или TGA) принимает разрешение "по умолчанию" в 72 дпи. Почему так я не знаю. Так же он поступает с теми форматами, где эта информация должна по идее быть, но не записана (те же BMP например).
Я же использую следующую процедуру, которую смотри в следующем сообщении.
Song (2003-02-07 12:38:00) [3]Надо картинку перед выводом на принтер отмасштабировать. Делается это через метод TCanvas.StretchDraw().
Saracin (2003-02-07 12:28:00) [4]>Demetrius © (07.02.03 09:56)
это стандарт или это зависит от монитора?
если от монитора, то как получить эту цифру (0.028).
Demetrius (2003-02-07 09:56:00) [5]
> Михайлов Антон
1 pxl = 0.028 cm
Saracin (2003-02-06 14:22:00) [6]А какой размер нужный ? Почему одна и таже картинка через PhotoShop печатается с размером 12x7 а в Paint печатается с размером 8x4?
Anatoly Podgoretsky (2003-02-06 12:52:00) [7]А для этого не надо знать разрешение, печатай сразу нужным размером
Saracin (2003-02-06 12:47:00) [8]фишка в том что надо знать скаким resolution эта картинка идет.
Но на самом деле вопрос не правельный, полный вопрос звучит так:
пытаюсь распечатать TImage через копирование Canvasa TImage"a в Canvas Printer"a, печатает, но картинка очень маленькая. В чем фича?
iNew (2003-02-06 11:54:00) [9]> Михайлов Антон
Ну ты сказал.
Михайлов Антон (2003-02-06 11:21:00) [10]Гдето читал что 25px=1см :) ненаю на сколько ето правда :)))
Mihey (2003-02-05 21:34:00) [11]Тута есть про измерение баскетбольной площадки:
http://www.efg2.com/Lab/Graphics/Basketball.htm