Преобразование файлов из растрового формата в векторный
Преобразование файлов
Необходимость преобразования графических файлов из одного формата в другой может возникнуть по разным причинам:
• программа, с которой работает пользователь, не воспринимает формат его файла;
• данные, которые надо передать другому пользователю, должны быть представлены в специальном формате.
Существуют два способа преобразования файлов из растрового формата в векторный:
1) преобразование растрового файла в растровый объект векторного изображения;
2) трассировка растрового изображения для создания векторного объекта.
Первый способ используется в программе CorelDRAW, которая, как правило, успешно импортирует файлы различных растровых форматов. К примеру, если растровая картинка содержит 16 миллионов цветов, CorelDRAW покажет изображение, приближенное по качеству к телевизионному. Однако, импортируемый растровый объект может становиться довольно большим даже в том случае, если исходный файл невелик. В файлах растровых форматов информация хранится достаточно эффективно, так как часто используются методы сжатия. Векторные форматы такой способностью не обладают. Поэтому растровый объект, хранящийся в векторном файле, может значительно превосходить по размерам исходный растровый файл.
Особенность второго способа преобразования растрового изображения в векторное заключается в следующем. Программа трассировки растровых изображений (например, CorelTRACE) ищет группы пикселей с одинаковым цветом, а затем создает соответствующие им векторные объекты. После трассировки векторизованные рисунки можно редактировать как угодно. На рис. показано растровое изображение, которое хорошо преобразуется в векторное. Дело в том, что растровые рисунки, имеющие четко выраженные границы между группами пикселей одинакового цвета, хорошо переводятся в векторные. В то же время результат трассировки растрового изображения фотографического качества со сложными цветовыми переходами выглядит хуже оригинала.
Исходное растровое изображение Векторизованное изображение
Векторные форматы содержат описания линий, дуг, закрашенных полей, текста и т. д. В различных векторных форматах эти объекты описываются по-разному. Когда программа пытается преобразовать один векторный формат в другой, она действует подобно обычному переводчику, а именно:
• считывает описания объектов на одном векторном языке,
• пытается перевести их на язык нового формата.
Если программа-переводчик считает описание объекта, для которого в новом формате нет точного соответствия, этот объект может быть либо описан похожими командами нового языка, либо не описан вообще. Таким образом, некоторые части рисунка могут исказиться или исчезнуть. Всё зависит от сложности исходного изображения. На рис. представлен один из возможных результатов преобразования файла из одного векторного формата в другие. Исходный рисунок создан в программе CorelDRAW и состоит из следующих элементов: импортированная растровая картинка в формате JPEG, рамка вокруг растровой картинки, текст, прямоугольник с конической заливкой.
а б в
а – исходное изображение в формате CDR; б - результат преобразования в векторный формат CGM; в - результат преобразования в векторный форамат DXF
При преобразовании рисунка в формат CGM сохранились все исходные элементы. Формат DXF проигнорировал растровую картинку, исказил контур вокруг нее, коническую заливку, а также увеличил размер шрифта. Дело в том, что этот формат предназначен для конструкторских разработок и, следовательно, в нём отсутствуют команды для описания различных художественных эффектов.