Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
ВнизПовернутый эллипс. Найти похожие ветки
← →
Jimmy (2006-11-26 15:54) [0]Как в Delphi на MetaCanvas"е нарисовать эллипс, повернутый, например, на 45 градусов, но чтобы это был имеено эллипс, а не набор отрезочков? То есть чтобы после экспорта рисунка в wmf-файл, и после открытия этого файла например из CorelDraw последний воспринял бы объект как эллипс, а не как что-то другое.
Заранее спасибо.
← →
Джо © (2006-11-26 16:26) [1]
var
Mf: TMetafile;
Mfc: TMetafileCanvas;
XForm: TXForm;
begin
Mf := TMetafile.Create;
try
Mfc := TMetafileCanvas.Create(Mf,0);
try
XForm.eM11 := 0.70710; // cos 45
XForm.eM12 := 0.70710; // sin 45
XForm.eM21 := -0.70710; // -sin 45
XForm.eM22 := 0.70710; // cos 45
XForm.eDx := 0.0; // x offset
XForm.eDy := 0.0; // y offset
SetWorldTransform(Mfc.Handle,XForm);
Mfc.Ellipse(50,60,150,200);
finally
Mfc.Free;
end;
Mf.SaveToFile("d:\ellipse.emf");
finally
Mf.Free
end;
end;
При открытии в Adobe Illustrator получается вполне себе эллипс, без всяких "черточек". CorelDraw нету, поэтому не знаю, что там будет :)
← →
Джо © (2006-11-26 16:27) [2]Да, требования к ОС — Windows NT 3.1 и выше. Windows 9x не поддерживает функции SetWorldTransform.
← →
KilkennyCat © (2006-11-26 16:36) [3]> [2] Джо © (26.11.06 16:27)
В военное время она там работает, вроде бы. Например, в арабских странах именно она заставит справа налево буковки писать... но, может, я и ошибаюсь :)
← →
MBo © (2006-11-26 16:42) [4]еще один способ - рассчитать 4 кривых Безье для частей эллипса, произвести преобразование координат контрольных точек вручную, отрисовать кривые.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.04 c