Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2017.07.02;
Скачать: CL | DM;

Вниз

картинка в виде последовательности байт   Найти похожие ветки 

 
inviz   (2008-12-27 14:46) [0]

Добрый день! Скажите как можно представить картинку в виде последовательности байт чтобы записать в файл и потом считать?
не image1.Picture.Graphic.LoadFromStream(); а в массив байт например

var
    img:array[0..65535] of byte


вот в img считать методом FileRead() и отобразить
и если нада записать потом в файл функцией FileWrite ?
Подскажите пожалуста! если можно небольшой код приведите а то я не специалист по потокам и работой с файлами в Delphi
Заранее спасибо! :)


 
KilkennyCat ©   (2008-12-27 14:56) [1]

LoadFromFile
SaveFromFile


 
inviz   (2008-12-27 15:02) [2]


> LoadFromFile
> SaveFromFile

нееет мне последовательность байт полученую из image нада записать в файл например с 256 позиции или с 485 позиции


 
Sapersky   (2008-12-27 15:36) [3]

мне последовательность байт полученую из image нада записать в файл например с 256 позиции или с 485 позиции

TFileStream.Seek(256, 0);
TBitmap(TGraphic).SaveToStream

Или нужно обязательно через array[0..65535] of byte?


 
KilkennyCat ©   (2008-12-27 15:40) [4]


> через array[0..65535] of byte


много картинок не влезет :)


 
inviz   (2008-12-27 15:57) [5]


> Или нужно обязательно через array[0..65535] of byte?

ну у меня имеется запись:

Tdata = record
 imgname : array[0..15] of char;
 imgdata  : array[0..65535] of byte;
end;
                                 // в общем размерность записи составляет  65552 байт
                                 // так получается? :)
                                 // ну вот я и делаю следующее (пытаюсь :))
var
    f:integer;
    buff:Tdata;
begin
f := Fileopen("C:\1.db",fmOpenReadWrite);
buff.imgname := "изображение 1";
buff.imgdata  :=                           // вот тут то и проблемка :))



короче когда я получу картинку из image1 как последовательность байт в
buff.imgdata (65536 байт), то запишу buff.imgdata способом
filewrite(f,buff.imgdata,65536);

у меня в голове то это работает давно уже :))
а вот как реализовать и получить картинку в buff.imgdata не знаю :((


 
inviz   (2008-12-27 16:45) [6]

Блин меня осенило!!! :) можно ведь записать в buff.imgdata не последовательность байт изображения а позицию с которого прочитать данные с файла!!! :))
Sapersky Спасиба за код! :)


 
KilkennyCat ©   (2008-12-27 19:40) [7]

Более того, ты можешь делать все в одном файле. то есть, в начале файла записать buff:Tdata, где описано то, что хранится в оставшейся части файла.


 
inviz   (2008-12-27 20:25) [8]


> Более того, ты можешь делать все в одном файле. то есть,
>  в начале файла записать buff:Tdata, где описано то, что
> хранится в оставшейся части файла.


ага ^-^


 
CrytoGen   (2008-12-29 08:32) [9]

может без файла сразу SetBitmapBits?


 
Sergey   (2009-05-20 02:01) [10]

можно весь полный код пожалуйста


 
KilkennyCat ©   (2009-05-23 03:29) [11]


> Sergey   (20.05.09 02:01) [10]

Здесь вполне достаточно информации. что именно непонятно?
P.S.
Обрати внимание на дату ветки. ты думаешь, что вероятность положительного ответа на запрос полного кода достаточно высока?



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

Текущий архив: 2017.07.02;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.004 c
15-1463500029
K-1000
2016-05-17 18:47
2017.07.02
Про 2-мерные массивы


1-1352360032
stas
2012-11-08 11:33
2017.07.02
Управление плагинами хрома


6-1283429946
dmitrynpk
2010-09-02 16:19
2017.07.02
Корректный выход сервера Indy при подключенных клиентах


15-1463493620
DelphiN!
2016-05-17 17:00
2017.07.02
Выбор IP камеры


8-1230378378
inviz
2008-12-27 14:46
2017.07.02
картинка в виде последовательности байт