ATImage

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

ATImage

Сообщение DedFrend » 10.11.2019 22:04:17

Кто-нибудь пользовал указанный компонент? Это отображение картинки на скроллбоксе + масштабирование. Я пользовал в Дельфи и там добился того, что мне надо. Чтобы использовать в Лазаре стянул с Гитхаба версию для Лазаря. Она дала кучу ошибок компиляции. В меру своего понимания попробовал исправить. Установилась, но работает непонятно. К тому же она сильно отличается от варианта для Дельфи.
Попробовал вариант, работавший в Дельфи конвертировать в Лазаря. Автоконвертация прошла успешно, в систему установилась, но при попытке добавить на форму с треском падает лазарь.
Может у кого есть рабочий вариант?
DedFrend
постоялец
 
Сообщения: 156
Зарегистрирован: 25.11.2018 12:21:50

Re: ATImage

Сообщение Alex2013 » 11.11.2019 02:44:19

Не понял зачем вообще нужа такая еруда? Есть скроллбокс есть обычный TImage....
Изображение
Alex2013
долгожитель
 
Сообщения: 2923
Зарегистрирован: 03.04.2013 11:59:44

Re: ATImage

Сообщение iskander » 11.11.2019 07:24:49

ATImageBox вот отсюда https://github.com/Alexey-T/ATImageBox-Lazarus компилируется без ошибок.
iskander
энтузиаст
 
Сообщения: 590
Зарегистрирован: 08.01.2012 18:43:34

Re: ATImage

Сообщение DedFrend » 11.11.2019 19:57:23

Действительно, скачав по адресу данному Iskander все нормально скомпилилось. Моя ошибка была в том, что не будучи хорошо знаком с Git взял оттуда же, но в виде zip архива, а он, видимо, старый. Но то, что мне надо было, все равно не заработало. Почему-то событие MouseMove на картинке работать не хочет.
В общем, пока сделал просто, как советовал Alex2013 TScrollbox+TImage. Вроде заработало.
DedFrend
постоялец
 
Сообщения: 156
Зарегистрирован: 25.11.2018 12:21:50

Re: ATImage

Сообщение DedFrend » 24.11.2019 16:53:28

Нет, не работает. То что работает в Delphi
PictureBMP.Assign(imgJPG.Picture.Graphic);
в лазаре не дает правильной TBitmap . Похоже, он оставляет фактически jpeg изображение (уж не знаю как ему удается при этом сохранять тип TBitmap). Проявляется это когда я пытаюсь рисовать на его канве. Если исходное изображение было TBitmap (из файла bmp), то все нормально рисует на канве, а если было jpg, то при рисовании на канве меняется цвет и толщина линий. Может кто-то сказать как все-таки из jpg получить "правильный" bmp ?
DedFrend
постоялец
 
Сообщения: 156
Зарегистрирован: 25.11.2018 12:21:50

Re: ATImage

Сообщение iskander » 24.11.2019 17:29:46

А если так?
Код: Выделить всё
  PictureBMP.Bitmap.Assign(imgJPG.Picture.Graphic);
iskander
энтузиаст
 
Сообщения: 590
Зарегистрирован: 08.01.2012 18:43:34

Re: ATImage

Сообщение DedFrend » 24.11.2019 23:58:50

iskander
Нет, к сожалению, не работает. Эффект тот же. что и PictureBMP.Assign(imgJPG.Picture.Graphic);

Пока то, что надо, удается получить через mgBMP.Canvas.Draw(0,0,imgJPG.Picture.Graphic);
DedFrend
постоялец
 
Сообщения: 156
Зарегистрирован: 25.11.2018 12:21:50


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Alex2013, Google [Bot], Yandex [Bot] и гости: 26

Рейтинг@Mail.ru