Другие языки программирования и технологии
Как залить фигуру цветом в Corel draw
Допустим, у меня есть нарисованный, замкнутый контур гитары. Как залить получившуюся фигуру цветом, чтобы получилась не прозрачная, а, например, синяя гитара?
Обычно в Кореле с правой стороны экрана есть палитры с различными цветами. Выдели мышкой свой объект и ткни мышкой на нужный цвет в палитре.
Либо выдели объект и нажми сочетание клавиш Shift+F11 и задай нужный цвет в открывшемся окне.
А еще лучше зайди в опцию Справка и почитай Руководство по программе.

Либо выдели объект и нажми сочетание клавиш Shift+F11 и задай нужный цвет в открывшемся окне.
А еще лучше зайди в опцию Справка и почитай Руководство по программе.

Jamin J
Костик, я тебе удивляюсь - школоте сопли вытираешь... :) заняться тебе что ли нечем? :)))
Сергей Никулин
Обалденный профи! Сидеть на ответах майл. ру, чтобы рекомендовать почитать руководство к программе!!
Берешь, выделяешь контур, объединяешь (crtl+L) убеждаешься что он действительно замкнутый или же ставишь в настройках документа на галочку заливать незамкнутые кривые, выделяешь, щелкаешь по палитре или в свойствах объекта настраиваешь точной цвет заливки
Процедура FloodFill. Заполняет произвольную замкнутую фигуру, используя текущий стиль заполнения (узор и цвет) . Заголовок:
Procedure FloodFill(X,Y: Integer; Border: Word);
Здесь X, Y- координаты любой точки внутри замкнутой фигуры; Border - цвет граничной линии.
Если фигура незамкнута, заполнение «разольется» по всему экрану.
Следует учесть, что реализованный в процедуре алгоритм просмотра границ замкнутой фигуры не отличается совершенством. В частности, если выводятся подряд две пустые строки, заполнение прекращается. Такая ситуация обычно возникает при заполнении небольших фигур с использованием типа LtSlashFill. В фирменном руководстве по Турбо Паскалю рекомендуется, по возможности, вместо процедуры FloodFill использовать FillPoly (заполнение прямоугольника) .
Следующая программа демонстрирует заполнение случайных окружностей. Сначала в центре экрана создается окно, в котором заполняется небольшой прямоугольник. Часть прямоугольника останется незаполненной, в чем Вы можете убедиться, так как программа в этот момент приостанавливает работу, ожидая нажатия на клавишу Enter. Затем осуществляется вывод и заполнение случайных окружностей до тех пор, пока не будет нажата любая клавиша. Замечу, что прямоугольник заполняется полностью, если вместо типа LtSlashFill (косая штриховка линиями обычной толщины) используется SlashFill (штриховка утолщенными линиями) . Если программа будет работать достаточно долго, она может «зависнуть» , что лишний раз свидетельствует о несовершенстве реализованного в ней алгоритма.
Uses Graph, CRT;
var
d, r, е, х, у, с : Integer;
begin
{Инициируем графику}
d := Detect; InitGraph(d, r, ' ') ;
e := GraphResult;
if e <> grOk then . .WriteLn(GraphErrorMsg(e))
else
begin
{Создаем прямоугольное окно}
х := GetMaxX div 4;
у. := GetMaxY div 4;
Rectangle(х, у, 3*x,3*y);
SetViewPort(x+1,y+1, 3*x-1,3*y-1,ClipOn);
{Демонстрируем заливку маленького прямоугольника}
SetPillStyle(LtSlashFill,GetMaxColor);
Rectangle(0,0,8,20); FloodFill(1,1,GetMaxColor);
OutTextXY(10,25,'Press Enter...');
ReadLn; {Ждем нажатия Enter}
{Выводим окружности до тех пор, пока не будет нажата любая клавиша}
repeat
{Определяем случайный стиль заливки}
SetFillStyle(Random(12),Random(GetMaxColor+1));
{Задаем координаты центра и цвет окружности}
х := Random (GetMaxX div 2);
у := Random (GetMaxY div 2);
с := Random (succ(GetMaxColor));
SetColor(c);
{Выводим и заливаем окружность}
Circle(x, у, Random(GetMaxY div 5));
FloodFill (x, у, с)
until KeyPressed;
if ReadKey=#0 then
x := ord(ReadKey);
CloseGraph
end
end.
Фух, вроде все, причем работает :) если непонятно - пиши, помогу более детально.
P.S. не за что :-)
Procedure FloodFill(X,Y: Integer; Border: Word);
Здесь X, Y- координаты любой точки внутри замкнутой фигуры; Border - цвет граничной линии.
Если фигура незамкнута, заполнение «разольется» по всему экрану.
Следует учесть, что реализованный в процедуре алгоритм просмотра границ замкнутой фигуры не отличается совершенством. В частности, если выводятся подряд две пустые строки, заполнение прекращается. Такая ситуация обычно возникает при заполнении небольших фигур с использованием типа LtSlashFill. В фирменном руководстве по Турбо Паскалю рекомендуется, по возможности, вместо процедуры FloodFill использовать FillPoly (заполнение прямоугольника) .
Следующая программа демонстрирует заполнение случайных окружностей. Сначала в центре экрана создается окно, в котором заполняется небольшой прямоугольник. Часть прямоугольника останется незаполненной, в чем Вы можете убедиться, так как программа в этот момент приостанавливает работу, ожидая нажатия на клавишу Enter. Затем осуществляется вывод и заполнение случайных окружностей до тех пор, пока не будет нажата любая клавиша. Замечу, что прямоугольник заполняется полностью, если вместо типа LtSlashFill (косая штриховка линиями обычной толщины) используется SlashFill (штриховка утолщенными линиями) . Если программа будет работать достаточно долго, она может «зависнуть» , что лишний раз свидетельствует о несовершенстве реализованного в ней алгоритма.
Uses Graph, CRT;
var
d, r, е, х, у, с : Integer;
begin
{Инициируем графику}
d := Detect; InitGraph(d, r, ' ') ;
e := GraphResult;
if e <> grOk then . .WriteLn(GraphErrorMsg(e))
else
begin
{Создаем прямоугольное окно}
х := GetMaxX div 4;
у. := GetMaxY div 4;
Rectangle(х, у, 3*x,3*y);
SetViewPort(x+1,y+1, 3*x-1,3*y-1,ClipOn);
{Демонстрируем заливку маленького прямоугольника}
SetPillStyle(LtSlashFill,GetMaxColor);
Rectangle(0,0,8,20); FloodFill(1,1,GetMaxColor);
OutTextXY(10,25,'Press Enter...');
ReadLn; {Ждем нажатия Enter}
{Выводим окружности до тех пор, пока не будет нажата любая клавиша}
repeat
{Определяем случайный стиль заливки}
SetFillStyle(Random(12),Random(GetMaxColor+1));
{Задаем координаты центра и цвет окружности}
х := Random (GetMaxX div 2);
у := Random (GetMaxY div 2);
с := Random (succ(GetMaxColor));
SetColor(c);
{Выводим и заливаем окружность}
Circle(x, у, Random(GetMaxY div 5));
FloodFill (x, у, с)
until KeyPressed;
if ReadKey=#0 then
x := ord(ReadKey);
CloseGraph
end
end.
Фух, вроде все, причем работает :) если непонятно - пиши, помогу более детально.
P.S. не за что :-)
выделяешь свою гитару и щелкаешь на палитру
Как в кореле залить объект, контур в кореле и др. http://oformitelblok.ru/obekty-v-korele.html
Похожие вопросы
- Как узнать правильное количество цвета в файле в Corel Draw ?? (подробности внутри)
- Слишком большое разрешение в Corel Draw или как изменить dpi?
- Help! только опытные пользователи Corel Draw
- Нужна помощь кто знает программу Corel Draw
- Photoshop & Corel Draw
- что такое corel draw?
- Скажите пожалуйста. Я новчиок и поэтому интересно знать, есть какие-то существенные различия между Potoshop и Corel Draw
- Срочный вопрос по Corel Draw
- Corel Draw
- Экспорт в Corel Draw