![]() |
Модераторы: Snowy, Alexeis, MetalFan |
![]() ![]() ![]() |
|
as555 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 17.5.2006 Репутация: нет Всего: нет |
Необходимо сделать Векторный редактор чтоб он мог:
Например - нарисовать прямоугольник - переместить его - изменить его размеры. Если у кого-то есть какие-то мысли или примеры, буду очень благодарен |
|||
|
||||
drkot |
|
|||
![]() Ищущий ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1042 Регистрация: 5.5.2006 Репутация: нет Всего: 8 |
Думаю надо создать ряд объектов типа: элипс, прямоугольник, замкнутая область, линия, ломаная линия, сглаженая ломаная и тд.
Само изображение хранить в виде коллекции выше перечисленых объектов. Причем обекты не стоит делать наследниками TWinControl (и даже TComponent), в идеале об TObject. TObject - TVectorElement - TLine TElipse ... Можно пойти другим путем и взять за основу метафайлы и их векторный движок. -------------------- Ошибка не становится истиной по причине широкого распространения, как и Истина не становится Ошибкой из-за того, что никто её не видит. |
|||
|
||||
Mechanic |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 228 Регистрация: 5.5.2006 Где: Kharkov, Ukraine Репутация: нет Всего: 7 |
Вот есть пример, как можно описать 2D фигуры, чтоб манипулировать ими. Только к ним нужно ещё мышиные события для полноты прикрутить, да научить их в файл сохраняться / возвращаться потом оттуда в память.. Коллекции тоже понадобятся (та же группировка), да много всего можно навернуть.. Тот же простейший Corel Draw посмотреть можно для идей..
![]() Присоединённый файл ( Кол-во скачиваний: 127 ) ![]() --------------------
Tell me the extensions of the files You backup and I'll tell You who You are.. ©Mch |
|||
|
||||
as555 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 17.5.2006 Репутация: нет Всего: нет |
Большое спасибо
есть еще один вопросик если к объекту привязать текс допустим с помощью TCanvas.TextOut то встает вопрос насчет масштаба т.е. сам объект отмаштабировать можно т.к. он векторный т..е умножить длину на коэфф. а вот, что делать с текстом ? |
|||
|
||||
rounin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 10.5.2006 Репутация: 1 Всего: 1 |
Еще один примерчик.
На счет текста - можно сделать что-нибудь типа Font.Height := Round(Font.Height*K) Присоединённый файл ( Кол-во скачиваний: 80 ) ![]() |
|||
|
||||
ДЫМ |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 6.1.2004 Репутация: нет Всего: 8 |
Используй GDI+, там размер текста можнет быть дробным, т. е. размер = коэффициент * исходный размер.
|
|||
|
||||
Leos |
|
|||
Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 7.2.2006 Репутация: нет Всего: нет |
GDI+ надо использовать однозначно, так как там очень много возможностей по работе с графикой, например есть antialiasing. И вообще GDI+ объектно-ориентированный.
Потребность в использовании antialiasing'а встанет на 99.99%. Так, что сразу надо начинать его юзать. TCanvas.TextOut не отделаешься, так как его возможности сильно ограничены, им даже нельзя выводить юникод. И ещё: если привязывать текст, то типа WideString - юникод. |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 18 Всего: 484 |
||||
|
||||
as555 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 17.5.2006 Репутация: нет Всего: нет |
всем пасибо
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Звук, графика и видео" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |