Форум: "Прочее";
Текущий архив: 2006.05.14;
Скачать: [xml.tar.bz2];
ВнизTIFF Найти похожие ветки
← →
Чародей © (2006-04-15 15:07) [0]Подскажите компаненнты для работы с TIFF, открыть/показать/сохранить. Есть LibTiffDelphi, но как работать с ней я не понял, а TiffBitmapCmponent не со все файлами работает:(
← →
vrem (2006-04-15 15:16) [1]> Есть LibTiffDelphi
Есть. разобраться можно, по яндексу я что то нашёл и заработало, вопрос в другом -
YCbCr если цвет, то преобразованный этим компонентом рисунок желтее, на вид отличается чем если открывать PicaView или другими программами. так что я этот компонент выкинул :) Потому что в самом Tiff зашита формула преобразования YCbCr=>RGB, и если компонент всеравно не может правильно преобразовать, значит он не тот, который нужен.
← →
Чародей © (2006-04-15 15:34) [2]
> Есть. разобраться можно, по яндексу я что то нашёл и заработало
Если не сложно поделись что нашел, я в нете вообще про TIFF почти ничего не нашел на torry есть какие-то компоненты но они все SW.
← →
vrem (2006-04-15 16:01) [3]Для Дельфи 7 =
uses LibTiffDelphi;
Если пишет не найден, то найти его вручную, и component - install component
на форму кнопку и image кинуть.
procedure TForm1.Button1Click(Sender: TObject);
var wi,ha:cardinal;
df:string;
OpenTiff: PTIFF;
FirstPageBitmap: TBitmap;
begin
df:="f:\00.tif";
OpenTiff:=LibTiffDelphi.TIFFOpen(df,"r");
if OpenTiff=nil then raise Exception.Create("Не получилось открыть файл """+df+"""");
LibTiffDelphi.TIFFGetField(OpenTiff,TIFFTAG_IMAGEWIDTH,@wi);
LibTiffDelphi.TIFFGetField(OpenTiff,TIFFTAG_IMAGELENGTH,@ha);
try
FirstPageBitmap:=TBitmap.Create;
FirstPageBitmap.PixelFormat:=pf32bit;
FirstPageBitmap.Width:=Wi;
FirstPageBitmap.Height:=Ha;
except
if FirstPageBitmap<>nil then FirstPageBitmap.Destroy;
TIFFClose(OpenTiff);
raise Exception.Create("Unable to create TBitmap buffer");
end;
LibTiffDelphi.TIFFReadRGBAImage(OpenTiff,Wi,Ha,
FirstPageBitmap.Scanline[Ha-1],0);
LibTiffDelphi.TIFFClose(OpenTiff);
TIFFReadRGBAImageSwapRB(Wi,ha,
FirstPageBitmap.Scanline[Ha-1]);
form1.Image1.Align:=alClient;
form1.Image1.Picture.Assign(FirstPageBitmap);
end;
Вот другой компонент для tiff, но он не понимает YCbCr
http://logicnet.dk/lib/
← →
Чародей © (2006-04-15 16:39) [4]
> LibTiffDelphi.TIFFReadRGBAImage(OpenTiff,Wi,Ha,
> FirstPageBitmap.Scanline[Ha-1],0);
> LibTiffDelphi.TIFFClose(OpenTiff);
>
> TIFFReadRGBAImageSwapRB(Wi,ha,
> FirstPageBitmap.Scanline[Ha-1]);
TIFFReadRGBAImageSwapRB - не нашел
а так работает
LibTiffDelphi.TIFFReadRGBAImage(OpenTiff,Wi,Ha,FirstPageBitmap.Scanline[Ha-1],0);
TIFFReadRGBAImage(OpenTiff,Wi,ha,FirstPageBitmap.Scanline[Ha-1],0);
LibTiffDelphi.TIFFClose(OpenTiff);
ImageFileLib скачал. В Demo открываю Tif, а он его рисует с черными полосами? В этой библиотеке есть какие-то ошибки?
← →
Чародей © (2006-04-15 17:33) [5]Нет, ли примера с сохранением файла? А то я чет не понимаю метеодов действия этой библиотеки.
← →
Чародей © (2006-04-15 18:06) [6]В папке ServicePackFiles\i386 нашел файл fxstiff.dll, как показывает eXeScope в нем содержатся функции очень похожие(по названиям) на те которые есть в LibTiffDelphi. И в том числе есть ф-я TiffCreate, но как узнать параметры которые необходимо передать и что будет возвращено?
← →
Чародей © (2006-04-15 21:45) [7]Уф, 3 часа под отладчиком не прошли даром в ImageFileLib все таки нашел ошибку в
procedure TLZW.AddEntry(const Entry:TTableEntry);
есть строчка
4093: Begin CodeLength:=9;
надо 4093 заменить на 4094. Слишком рано таблица сбрасывается. Это так если кто еще сталкнется
← →
Desdechado © (2006-04-18 11:17) [8]> Это так если кто еще сталкнется
лучше автору библиотеки напиши
по сабжу:
Видел библиотеку с кучей графформатов GraphicEx, но насколько там сейчас поддержан TIFF, не знаю. Когда видел, были некоторые ограничения.
← →
Ega23 © (2006-04-18 11:28) [9]Я когда-то очень давно сам писал декодер. Скачал описание формата, посидел над ним с недельку, и написал.
Даже если исходники и остались - не дам, т.к. на них стыдно смотреть, ибо было это дело лет 5 назад. :о)
В принципе, сильно сложного там ничего нет.
← →
Чародей © (2006-04-18 17:00) [10]
> В принципе, сильно сложного там ничего нет.
Сильно сложные форматы я вообще еще не встречал. Основная сложность это алгоритмы сжатия. Вечно нет времени хоть один нормально изучить
> лучше автору библиотеки напиши
Я не видел ни каких координат чтоб что-то сказать
← →
Ega23 © (2006-04-18 17:09) [11]
> Основная сложность это алгоритмы сжатия.
AFAIR, в TIFF кроме Хаффмана, вроде, больше ничего нет.
Хотя могу и ошибаться - давно это было...
← →
Чародей © (2006-04-18 17:24) [12]В тех библиотеках которые я использовал был только LZW, а PhotoShop показывает что может сохранить еще в ZIP и JPEG, про Haffman ни где ни слова
← →
Ega23 © (2006-04-18 17:48) [13]это алгоритм Хаффмана. По нему, к примеру, тот самый JPEG сжимается.
← →
oldman © (2006-04-18 17:54) [14]
> Чародей © (15.04.06 15:07)
Господи, да где ты TIFF нашел???
Конвертеры же есть.
работай с BMP, JPG и т.д...
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2006.05.14;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.009 c