Мастера DELPHI, Delphi programming community Рейтинг@Mail.ru Титульная страница Поиск, карта сайта Написать письмо 
| Новости |
Новости сайта
Поиск |
Поиск по лучшим сайтам о Delphi
FAQ |
Огромная база часто задаваемых вопросов и, конечно же, ответы к ним ;)
Статьи |
Подборка статей на самые разные темы. Все о DELPHI
Книги |
Новинки книжного рынка
Новости VCL
Обзор свежих компонент со всего мира, по-русски!
|
| Форумы
Здесь вы можете задать свой вопрос и наверняка получите ответ
| ЧАТ |
Место для общения :)
Орешник
Коллекция курьезных вопросов из форумов
Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / rsdn.org

 
Чтобы не потерять эту дискуссию, сделайте закладку « предыдущая ветвь | форум | следующая ветвь »
Страницы: 1 2 3

графика [kol_mck, Windows]


митя   (25.04.18 13:06[40]

tinyLoadJPGGIFBMPFile(Image.jpg);
bmp.SaveToStream(ImageStream);
png.LoadFromStream(ImageStream);
png.SaveToFile(Image.png);

Подскажите пожалуйста как правильно


Netspirit   (26.04.18 13:44[41]

procedure TestBmpToPng;
var
 bmp: PBitmap;
 png: PPngObject;
begin
 bmp := NewBitmap(0,0);
 png := NewPngObject;
 
 bmp.LoadFromFile('Test.bmp');
 png.AssignHandle(bmp.Handle, False{Transparent}, 0{Transp. color});
 png.SaveToFile('Test.png');
 
 bmp.Free;
 png.Free;
end;


митя   (27.04.18 15:24[42]

Netspirit -спасибо!


митя   (09.10.19 21:28[43]

Разобрался с функцией дорисовки - надо делать в таймере всё


митя   (09.10.19 21:32[44]

короче это касается пайнта


RusSun ©   (21.07.20 13:08[45]

Доброе время суток.
Пробую сделать простую программку (Редактор добавления надписи с прозрачным фоном).
Есть с PaintBox, Label_Txt, Поля для ввода надписи, Кнопка "открыть рисунок",
Кнопка "Настроить Надпись".

Алгоритм действия простой.
 Открываем рисунок,
 Изменяем надпись (При нажатии на кнопку Enter заканчиваем),
 Навастриваем шрифт, цвет и размер надписи,
 Двигаем, если это необходимо ->Надпись,
 Меняем наклон надписи, если необходимо,
 Вызвав контекстное меню -> Сохраняем рисунок на диск в формате Jpg.

 Вообщем это всё работает
 но только местами, то черный экран
 то прозрачности нет. То исчезает или
 затирается надпись при перетаскивании.

Эти два mck, с двумя кнопками наклона.
https://yadi.sk/d/ciiOHtp_M1ZBfQ

https://yadi.sk/d/zyiIpKmVEGvPDw

Эта версия без кнопок наклона. Временами черный экран.
https://yadi.sk/d/Ne318hNBTBBEjQ

Подскажите, пожалуйста, как улучшить.

Как сделать более грамотный вариант.

Заранее спасибо.


Vladimir Kladov ©   (22.07.20 18:15[46]

procedure TForm1.PMSave(Sender: PMenu; Item: Integer);
var Bm: PBitmap;
   NewFileName:KolString;
begin
//Msgok('begin');
//PB.Canvas.RequiredState( brushvalid );
NewFileName:= GetUniqueFilename(GetStartDir +'Dip.jpg');

Bm := NewBitmap( PB.Width, PB.Height );
Bm.Width:=2*PB.Width;//размеры задать -ширина
Bm.Height:=2*PB.Height;// размеры задать -высота
Bm.Canvas.RequiredState( brushvalid );
                          //Назначение                //Исходник
Bm.Canvas.CopyRect(MakeRect(0,0, 2*PB.Width, 2*PB.Height),PB.Canvas,PB.ClientRect);


Т.е. Вы обращаетесь к канве контрола, чтобы сграбить изображение в PBitmap ? Это не правильно. Канва гарантирует свою работу только в процедуре рисования OnPaint. Это верно и дл VCL тоже.


Страницы: 1 2 3 версия для печати

Написать ответ

Ваше имя (регистрация  E-mail 







Разрешается использование тегов форматирования текста:
<b>жирный</b> <i>наклонный</i> <u>подчеркнутый</u>,
а для выделения текста программ, используйте <code> ... </code>
и не забывайте закрывать теги! </b></i></u></code> :)


Наверх

  Рейтинг@Mail.ru     Титульная страница Поиск, карта сайта Написать письмо