Вверх ↑
Ответов: 1925
Рейтинг: 172
#1: 2018-08-03 11:56:11 ЛС | профиль | цитата
Add(Image,2763176,301,266)
{
Left=20
Top=35
Width=260
Height=205
AutoSize=0
Point(doRefresh)
link(onClick,14633685:doData,[])
}
Add(InlineCode,14654515,462,266)
{
WorkPoints=#4:doDs|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|20: onRes:THI_Event;|0:|45: procedure doDs(var dt:TData; index:word);|0:|5: end;|0:|14:implementation|0:|27:procedure THiAsmClass.doDs;|17:var Clip:PBitmap;|5:begin|22: Clip := ToBitmap(dt);|103: Clip.PixelFormat:=pf8bit; //Можно pf1bit, pf4bit, pf8bit, pf15bit, pf16bit, pf24bit, pf32bit, pfCustom|1: |36: //Ниже - просто мои эксперименты :)|44: //msgbox(int2str(Clip.DIBPalEntries[3]),0);|27: //_hi_OnEvent(onRes,Clip);|4:end;|0:|4:end.|
}
Add(DoData,14633685,350,266)
{
link(onEventData,6020300:doEvent1,[])
link(Data,6633695:Var3,[(356,254)(332,254)(332,313)])
}
Add(Hub,6020300,406,266)
{
link(onEvent1,14654515:doDs,[])
link(onEvent2,2763176:doRefresh,[(432,279)(432,244)(284,244)(284,286)])
}
Add(PictureStream,13298081,294,350)
{
Quality=90
link(onLoad,1729089:In,[])
link(Bitmap,6633695:Var2,[])
}
Add(GetDataEx,6633695,301,308)
{
link(Data,2763176:ImageBitmap,[])
}
Add(Button,16408695,231,357)
{
Left=75
Top=5
Caption="сохр"
Data=String(C:\\test.bmp)
link(onClick,13298081:doSave,[])
}
Add(Button,14948470,119,343)
{
Left=20
Top=5
Caption="откр"
Data=String(C:\\test.bmp)
link(onClick,4893013:doExecute,[])
}
Add(ODialog,4893013,168,343)
{
link(onExecute,13298081:doLoad,[(247,349)(247,356)])
}
Add(LineBreak,11519428,231,266)
{
link(Out,2763176:doLoad,[])
Primary=[1729089,112,84]
}

В общем, формат пикселей задаёт кол-во цветов (в InlineCode). pf8bit - 256 цветов, pf1bit - 2 цвета и т. д. Там написано, что можно подставлять. pf24bit - обычная RGB картинка по 8 бит на канал. А вообще, в KOL.pas всё это есть.

Но только вот при сохранении в jpg это не учитывается, и размер не уменьшается с кол-вом цветов. При сохр. в bmp - учитывается.

Подходит?
карма: 9
0
Редактировалось 1 раз(а), последний 2018-08-03 11:56:37