Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 5 518

/ вопрос решён /

Доброго времени суток, уважаемые эксперты! подскажите пожалуйста как
в изображения добавить ссылочные надписи? Что для этого нужно сделать? Изображения добавлены в TImage.

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Димон Вопрос решён, но можно продолжить его обсуждение в мини-форуме

Вопрос задал: Димон (статус: Посетитель)
Вопрос отправлен: 22 июля 2011, 09:47
Состояние вопроса: решён, ответов: 0.


Мини-форум вопроса

Всего сообщений: 114; последнее сообщение — 25 июля 2011, 07:49; участников в обсуждении: 6.

Страницы: [1] [2] [3] [4] [5] [6] [Следующая »]

Димон

Димон (статус: Посетитель), 22 июля 2011, 09:49 [#1]:

Изображений будет очень много и на каждую нужно будет добавлять такие ссылки
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 09:53 [#2]:

TImage тут совсем не при делах. Ссылки и дествия по нажатию на мих мышой и другую сопутствующую инфу надо будет где-то хранить вместе с картинкой. А посему, тут надо изобретать свой формат файла и писать редактор для таких файлов.

Ты уверен, что это всё тебе надо?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Димон

Димон (статус: Посетитель), 22 июля 2011, 09:55 [#3]:

Да я уверен, поскольку это мой диплом. Кто чем может подскажите. Может кто то создавал эти редакторы и изобретал собственные форматы изображений. Я в графике вообще чайник
DNK

DNK (статус: Студент), 22 июля 2011, 10:04 [#4]:

Димон: Тебе нужно изменить само изображение?
"Digital Networked Knight"
Димон

Димон (статус: Посетитель), 22 июля 2011, 10:07 [#5]:

Мне нужно в изображение добавить ссылки. по сути min@y прав. Нужно создавать собственный формат изображений с хранением дополнительной информации, но у меня такое впервые.
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 10:15 [#6]:

Цитата (Димон):

Нужно создавать собственный формат изображений с хранением дополнительной информации, но у меня такое впервые.

Ну и в чём проблема? Берём изображение (пусть будет JPEG), пишем в файл его размеры, затем само изображение, а в конец цепляем XML-дерево со всей нужной инфой. Дёшево и сердито.
При показе такой картинки заносим из файла изображение в TImage, а на лежащем поверх него TPaintBox рисуем ссылки и другую нужную лабуду из XML.

Для всего этого проще написать свой класс, который будет заниматься:
а) загрузкой из файла,
б) хранением в памяти,
ц) сохранением в файл,
д) отрисовкой инфы на TCanvas.

Вот примерно так я себе это представляю.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 10:24 [#7]:

Хотя, можно вообще TImage выкинуть, чтобы изображение не торчало в памяти 2 раза, а рисовать всё на TPaintBox. Как-то так.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Димон

Димон (статус: Посетитель), 22 июля 2011, 10:25 [#8]:

min@y, а у Вас нету хотя бы каких нибудь примеров??? если есть помогите пожалуйста
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 11:16 [#9]:

Цитата (Димон):

а у Вас нету хотя бы каких нибудь примеров???

Примеров какого плана?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Димон

Димон (статус: Посетитель), 22 июля 2011, 11:49 [#10]:

В плане собственного формата изображения с привязкой доп. информации. Или изображения с привязкой XML
Димон

Димон (статус: Посетитель), 22 июля 2011, 12:29 [#11]:

Хотя для изображений с привязкой к хмл будет неплохо, если их будет немного, на мой взгляд,а если их миллион то придется каждый раз программно менять координаты, чтобы обвести нужную область. А если делать изображение со ссылками в собственном формате тогда наверно этого не нужно будет делать. Может я ошибаюсь
Вадим К

Вадим К (статус: Академик), 22 июля 2011, 12:50 [#12]:

На самом деле ничего изобретать не нужно - все уже изобретено до нас - есть такой формат (правда он векторый) - svg, но вот только к делфи для него компонент мало. нужно будет писать свой.
Но вот смотрю я на приложенный скриншот и думаю, может просто эмуляция рабочего стола нужна?
Но есть ещё проще решение:)
Посмотрите на это http://rusws.ru/imagecard/ (там картинка с ссылками). Если это подходит, то кто мешает поставить на форму Webbrouser и вперед:)
Галочка "подтверждения прочтения" - вселенское зло.
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 13:10 [#13]:

Цитата (Димон):

В плане собственного формата изображения с привязкой доп. информации. Или изображения с привязкой XML

Нет, я никогда не привязывал таким образом изображения к XML. Однако, это совсем не значит, что я не смогу это написать часа за 4 с перекурами, если это действительно мне понадобится. По сравнению с выкрутасами, которые мне приходится изобретать по работе, это сущая ерунда, поверь.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 13:15 [#14]:

Кстати, вот посмотри мой ответ на один из вопросов. Я на него потратил целый рабочий день просто из интереса: слабО мне или нет. И это было сложнее твоей задачи.

З.Ы. Не реклама! :)
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Димон

Димон (статус: Посетитель), 22 июля 2011, 13:17 [#15]:

Нет, Вадим это не эмуляция рабочего стола. Это просто пример. По поводу картинки с ссылками что Вы прислали мне, очень хорошо, но есть нюанс, если масштаб изображения изменится, а ссылки останутся на тех же местах, то как быть??? Возьмем к примеру составляющие бытовой техники например утюга ссылка http://www.mukhin.ru/stroysovet/electro/images/049.jpg
Там показаны цифры. Это обычное изображение. А вот с ним надо сделать так чтобы при наводке мышью на цифру она становилась выделенной в рамке а при клике по ней мышью рамка окрашивалась, и так с каждой цифрой, только при клике на другую цифру прежняя возвращалась в свое обычное состояние(не выделена) а выделенная связывалась с нужной записью равную по значению выделенной цифры
Димон

Димон (статус: Посетитель), 22 июля 2011, 13:20 [#16]:

min@y я не сказал что вы не можете, более того я вам + в репутацию отметил, потому что вы откликнулись и здорово подсказываете. Я не хотел Вас обидеть. А насчет примера, я просто думал что может у вас есть хоть какой кусочек кода или какие то ссылки для создания собственного формата изображения
Вадим К

Вадим К (статус: Академик), 22 июля 2011, 13:38 [#17]:

Цитата (Димон):

если масштаб изображения изменится, а ссылки останутся на тех же местах, то как быть???
как как? отмасштабировать и координаты ссылок. Элементарная геометрия.
Как сделать, что бы определялись координаты? это не очень сложно, реализуется с помощью слоя-маски.
Припустим, что для всех чисел есть прямоугольник-регион (круг/треугольник - не важно). Делаем следующее - создаем в памяти TBitmap такого же размера, как и картинка и на нем разными цветами рисуем эти регионы. Так как эту картинку показывать никому не нужно (ну разве только для отладки), то нужно выставить битность для картинки - 32бита и номер цвета будет совпадать с номерком на картинке.

А теперь главный финт. Когда пользователь водит/кликает по картинке, берем координаты мыши и смотрим в нашу картинку-маску. Если цвет пикселя для этих координат черный (то есть 0) - значит там ничего нет, если какой то другой - значит есть регион. По цвету легко определяем номер и параметры региона (можно отрисовать/выделить/показать хинт).
Галочка "подтверждения прочтения" - вселенское зло.
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 13:51 [#18]:

Цитата (Димон):

если масштаб изображения изменится, а ссылки останутся на тех же местах, то как быть???

Дык координаты-то должны храниться в файле вместе с картинкой, причём они должны быть ОТНОСИТЕЛЬНЫЕ! При изменении масштаба координаты пересчитываются, а только потом отрисовывается сама картинка и инфа на картинке. Элементарно.

Цитата (Димон):

А насчет примера, я просто думал что может у вас есть хоть какой кусочек кода или какие то ссылки для создания собственного формата изображения

Нет, по твоей теме у меня нету ничего, не было необходимости создавать что-то подобное. Будет такая задача - создам. И ты пойми, это не собственный формат изображения, а собственный формат файла. Это разные вещи.

Можно (нужно) даже написать свой класс-наследник от TPaintBox или TCustomPanel, который помимо загрузки, хранения, отрисовки всей этой лабуды будет реагировать на движения и клики мыши именно так, как ты тут расписал.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Димон

Димон (статус: Посетитель), 22 июля 2011, 14:09 [#19]:

min@y спасибо Вам большое. Чем могли-помогли. Осталось сломать голову как это все воплощать. Мысли есть знаний нет(((((
min@y™

min@y™ (статус: Доктор наук), 22 июля 2011, 14:22 [#20]:

Цитата (Димон):

Осталось сломать голову как это все воплощать. Мысли есть знаний нет(((((

Ну, для начала разбей задачу на подзадачи.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Страницы: [1] [2] [3] [4] [5] [6] [Следующая »]

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:49
Выполнено за 0.03 сек.