in src/ras.rs [319:344]
fn load_outline(&mut self, outline: Outline) {
for contour in outline.into_contours() {
let mut started = false;
for segment in contour.iter(ContourIterFlags::IGNORE_CLOSE_SEGMENT) {
if !started {
let start = segment.baseline.from();
self.move_to(start.x(), start.y());
started = true;
}
let to = segment.baseline.to();
if segment.is_line() {
self.line_to(to.x(), to.y());
} else if segment.is_quadratic() {
let ctrl = segment.ctrl.from();
self.quad_to(ctrl.x(), ctrl.y(), to.x(), to.y());
} else if segment.is_cubic() {
let ctrl1 = segment.ctrl.from();
let ctrl2 = segment.ctrl.to();
self.curve_to(ctrl1.x(), ctrl1.y(), ctrl2.x(), ctrl2.y(), to.x(), to.y());
}
}
if contour.is_closed() {
self.close();
}
}
}