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

Вниз

TBitmap to XML   Найти похожие ветки 

 
*Стажер*   (2006-11-23 11:32) [0]

В программе на панели создаются кнопки TSpeedButton, при закрытии сохраняю все в XML, а как сохранить Bitmap’ы с кнопок сообразить не могу.

Пытаюсь затолкать данные из памяти в PChar, а его уже сохранить в XML

var
 ms : TMemoryStream;
 Buffer : PChar;
begin
 ms := TMemoryStream.Create;

   TSpeedButton(Panel1.Controls[0]).Glyph.SaveToStream(ms);
   //ms.Seek(0, soFromBeginning);
   ms.Position := 0;
   GetMem(Buffer, ms.Size - 1);
 try  
   ms.ReadBuffer(Buffer[0], ms.Size - 1);
   ShowMessage("MS=" + IntToStr(ms.Size) + #13 +
               "Buffer size=" + IntToStr(length(Buffer) - 1)+ #13
               +"Buffer=" + Buffer);
 finally
   FreeMem(Buffer);
   ms.Free;
 end;

Не работает. Как поправить? Или возможно есть другой способ сохранить Bitmap в XML?


 
clickmaker ©   (2006-11-23 11:38) [1]

по традиции, бинарные данные сливают в XML в base64


 
SPad   (2006-11-23 18:55) [2]

В хелпе D7 нет ни слова о base64, а в сети лежат функции только для кодировки строк :(


 
Андрей Сенченко ©   (2006-11-23 19:22) [3]

*Стажер*   (23.11.06 11:32)  

А Битмапы берутся из "штатных" глифов TSpeedButton или подгружаются извне ?


 
*Стажер*   (2006-11-24 09:25) [4]


> Андрей Сенченко ©

Да и Glyph"ов, да я написал процедуру сохранения уже, пока "кривовато работает", нужно немного доработать.


 
Андрей Сенченко ©   (2006-11-24 10:21) [5]

Тогда просто непонятно - зачем Тебе сохранять битмапы в XML если достаточно сохранить ID-шник глифа в инишку ...

.. ну ладно


 
*Стажер*   (2006-11-24 10:35) [6]


> Андрей Сенченко ©

Сделал AppBar, (а то весь стол ярлыками засыпан) добавляем файл через WM_DROPFILES, из файла извлекаем иконку и вставляем ее в кнопку, если иконка не устраивает устанавливаем свой Bitmap, все кнопки сохраняем в XML, поэтому до кучи и в порядке самообразования решил затолкал туда и Glyph"ы.



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

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

Наверх




Память: 0.48 MB
Время: 0.063 c
1-1162188144
Shopot
2006-10-30 09:02
2006.12.10
Печать.


15-1164004463
pssst
2006-11-20 09:34
2006.12.10
win 2003


15-1163678149
Kolan
2006-11-16 14:55
2006.12.10
Что значит присоединенная информация :KAVICHS:$DATA


15-1164018598
Tex
2006-11-20 13:29
2006.12.10
XPManifest


2-1164443388
Серый
2006-11-25 11:29
2006.12.10
Word