Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2017.07.02;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2017.07.02;
Скачать: [xml.tar.bz2];

Наверх





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


8-1230378378
inviz
2008-12-27 14:46
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 камеры


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





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский