Вниз
Скачать: CL | DM;

Картинки в БД   Найти похожие ветки 

← →
AlexXn   (2004-06-15 10:39) [0]

Есть база данных, а в ней есть поле типа BLOB, куда складываются картинки различных форматов(jpg, bmp, wmf...).База не моя. Как достать оттуда картинку? Т.е. как достать определенного формата я знаю, а вот как определить какой формат?


← →
sniknik ©   (2004-06-15 10:54) [1]

по заголовку (префиксу) в начале файла.


← →
AlexXn   (2004-06-15 10:56) [2]

А где енто прочитать можно, о префиксах то?


← →
sniknik ©   (2004-06-15 11:05) [3]

в любом справочнике/книге описывающей какойто конкретный формат, только см. не общие сведения а где структура описывается.
а можеш просто сравнить свои файлы открыв в hexредакторе.


← →
AlexXn   (2004-06-15 11:06) [4]

ОК. Thanks


← →
AlexXn   (2004-06-15 11:12) [5]

А может кто линки подкинет?


← →
Romkin ©   (2004-06-15 11:22) [6]


function GetStreamImgType(Stream: TStream): TClass;
var
 StreamPos: int64;
 ImgSign: string;
begin
 StreamPos := Stream.Position;
 try
   //BMP если не определено
   Result := Graphics.TBitmap;
   //JPEG
   SetLength(ImgSign, 4);
   Stream.Seek(6, soFromCurrent);
   Stream.Read(ImgSign[1],4);
   if (UpperCase(ImgSign) = "JFIF") or (UpperCase(ImgSign) = "EXIF") then
     Result := Jpeg.TJPEGImage;
   //WMF
   Stream.Position := StreamPos;
   SetLength(ImgSign, 4);
   Stream.Read(ImgSign[1],4);
   if ImgSign = #$D7#$CD#$C6#$9A then
     Result := Graphics.TMetafile;
 finally
   Stream.Position := StreamPos;
 end;
end;

Примечание: у bmp первые символы BM должны быть


← →
Davids   (2004-06-15 19:10) [7]

А как их собственно их оттуда доставать ????


← →
Davids   (2004-06-15 19:23) [8]

У меня база есть а там фотки не тока этих форматов и не знаю как их достать....база на фоксе.....



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

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



Память: 0.46 MB
Время: 0.024 c
1-1088451099
romeo
2004-06-28 23:31
2004.07.11
Есть DC, как для него создать Pen, рисующий XOR ом?


14-1087761613
Катя
2004-06-21 00:00
2004.07.11
Где гостевая? Была вроде


1-1088167428
XeLax
2004-06-25 16:43
2004.07.11
Изменение Теста Item


1-1088060969
Yustas
2004-06-24 11:09
2004.07.11
ActiveX и Explorer


1-1087972744
Relaxxx
2004-06-23 10:39
2004.07.11
Как напечатать текст на бумаге в определенных координатах?




   Наверх