![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TIFF Format
Ajax © (2001-11-07 14:42:00)Кто-нибудь знает как програмно определить разрешение tif файла в точках на сантиметр?
Гарик (2001-11-12 10:31:00) [1]ResolutionUnit - единица измерения, и если она определена как пиксель, тогда невозможно получить реальные размеры изо-я - они просто не определены.
В случае, если это дюймы или см, тогда тэги ImageLength и ImageHeght содержат размеры изо-я именно в заданных единицах измерения.
могу выслать пример, который читает все тэги IFD.
Ajax (2001-11-08 22:06:00) [2]Кстати, ResolutionUnit - это не разрешение, а указание на единицу измерения разрешения (пиксель/см или пиксель/дюйм).
Ajax (2001-11-08 17:11:00) [3]2Гарик: Можешь код написать? А то я совсем заколебался. Ничего не получается.
Гарик (2001-11-08 09:58:00) [4]В tiff"е оно может быть, а может и не быть.
Определяется это тэгом ResolutionUnit(296);
В зависимости от значения тэга ResolutionUnit высота и ширина изо-я определяется в пикселях в пикселях, см и дюймах.
А читать тэги просто:
сначала идет 8-байтный заголовок.
В первых 4х - определяется порядок байт (Intel или Motorola).
В последних - смещение на первую Image File Directory (IFD).
Заголовок IFD состоит из 2 байтов, в которых хранится количество тэгов.
Далее идут непосредственно тэги в порядке возрастания номера.
Струтура тэга следующая:
TTIFTag = Record
TagID : Word;
DataType : Word;
DataCnt : LongWord;
DataPtr : LongWord;
end;
Ajax (2001-11-08 08:53:00) [5]Оно там точно есть. Попробуй создать в Photoshop какую-нибудь картинку и задать размеры в сантиметрах. У TIFF здоровенный заголовок и там есть секция XResolution и YResolution, а вот по какому адресу, я понять не смог.
vasco (2001-11-07 23:04:00) [6]Честно говоря, сомневаюсь, что в самом файле этого формата прописано это соотношение. Скорее всего, там просто идет ширина * высота в пикселах, а уж как ты это хочешь представить на каком-либо девайсе (экран, принтер) - это твое личное дело...