-
Signal (02.02.14 12:10) [0]как можно из буфера обмена загрузить картинку с альфа-каналом?
делаю так:
p := TPNGObject.Create;
// p.CreateAlpha;
if Clipboard.HasFormat(CF_PICTURE) then begin
p.LoadFromClipboardFormat(CF_BITMAP,ClipBoard.GetAsHandle(CF_BITMAP), 0);
p.SaveToFile(PatchDocBase+'fromclipbrd.png');
end;
вместо CF_PICTURE подставлял и CF_BITMAP, палитру пробовал также ставить COLOR_RGBALPA,
картинку копирую в буфер из фотошопа, уже закралась мысль, что пикча копирует без оного(((
если ставить p.CreateAlpha; то не работает вообще -
Signal (02.02.14 13:17) [1]по ходу у фотошопа для этого свой формат, а вот какой, то что буфер содержит 16 объектов
0 BAD 49161
1 BAD 8
2 BAD 3
3 OK 2 isAlpha=False
4 BAD 9
5 BAD 50228
6 BAD 50229
7 BAD 50091
8 BAD 50205
9 BAD 49163
10 BAD 49156
11 BAD 49155
12 BAD 49166
13 BAD 49171
14 BAD 14
15 BAD 17 -
DQ (28.03.14 23:59) [2]Я замечал что разные программы по-разному засовывают альфаканал в буфер обмена. После вставить в той же программе - есть альфа, в другую - нету, в третью - есть. Попробую изучить вопрос.
-
KilkennyCat © (13.04.14 21:28) [3]