powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Масштабирование графики
7 сообщений из 7, страница 1 из 1
Масштабирование графики
    #32287576
_DmG_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу помочь с выбором инструментов и механизмов отображения и масштабирования графических файлов.

Идея следующая: В MS Visio формируется схема и затем преобразуется в графический файл формата TIFF. Нужно в Delphi его показать на форме с возможностью увеличения/уменьшения масштаба и прокрутки, а также вывод на принтер.

Вариант работы через OLE не подошел, т.к. искривляются шрифты, а также придется обучать пользователя работе с Visio.

Может кто-нибудь уже прошел этим путем и подскажет варианты решения данной проблемы, компоненты, исходники и т.д.?
...
Рейтинг: 0 / 0
Масштабирование графики
    #32288277
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не совсем понимаю о чем речь...... а можно Streight поставить ????? и размеры увеличивать картинки ???
...
Рейтинг: 0 / 0
Масштабирование графики
    #32288287
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
только масштабирование растрового формата... гнилое дело.... качество терять будешь...
...
Рейтинг: 0 / 0
Масштабирование графики
    #32288358
oleg_e
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй: SmoothComponents
...
Рейтинг: 0 / 0
Масштабирование графики
    #32288939
GoIV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть способ более или менее нормального масштабирования и именно растра с помощью DIRECTX-овских функций (можно и OPENGL, дабы совсем от платформы отвязаться). Иначе, если их не использовать получается алгоритм 2-ной кратности т.е. масштабы 1-2-4-8-.... и наоборот 0.5-0.25 и т.д.
Работать с TIFF форматом в этом отношении, как-то не совсем удобно, тяжеловесный код выходит, да и скорость резко падает. В подобной задаче намного интереснее индексированный BMP. И качество не потяешь и скорость весьма приемлемая.




Тяжел, тяжел Ты - ключик разводной
...
Рейтинг: 0 / 0
Масштабирование графики
    #32289096
Steel rat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не работал в Visio! Но может попробуешь как-нибудь (хорошо сказано --- КАК-НИБУДЬ!) преобразовать схему в файл *.emf или *.wmf!!! Они очень хорошо маштабируются.
...
Рейтинг: 0 / 0
Масштабирование графики
    #32289219
B0P0H
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выбор средства и метода ИМХО зависит от типа решаемой задачи.
Если нужно масштабировать быстро, в широких пределах и качественно - однозначно векторный формат изображений. Хотябф тот же Flash. Я как-то логотип одной конторы нарисовал на флэш (передрал из растра), так совсем же другое дело! Это видно по всем мультяшкам сделанным на флэшке. Опять же, есть инструменты генерящие флэш картинку из любой растровой. Фотографии туда пихать не нужно, но побаловаться однозначно стОит, это позволит наиболее полно понять пути решения задачи. Macromedia FlashMX посмотри.

Метод: есть один интересный. Изображение 1 становится изображением 2 с помощью изменения масштаба и др. (например поворота). Та к вот, исходя из преобразования, выполняющегося над изобр. 1, надо для каждой точки изобр. 2 (X2, Y2) присвоить цвет точки которой она соотв-ет в изобр 1 (X1, Y1). Может я объясняю запутанно, но на самом деле это не сложно. Надо осуществить обратный поворот-масштабирование.

Такой изврат позволяет избежать проблемы, когда после поворота изображения точек становится больше,чем до (из-за дискретности изображения) и получаются разрывы (пробелы) в результирующем изобр-и.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Масштабирование графики
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]