我在 C# 中有一个很好的工作系统,它在渲染方法中使用 Cairo 命令进行绘制。但是,有时我想绘制到像素图中,而不是在需要更新屏幕时动态绘制。例如,目前我有:
public override void render(Cairo.Context g) {
g.Save();
g.Translate(x, y);
g.Rotate(_rotation);
g.Scale(_scaleFactor, _scaleFactor);
g.Scale(1.0, ((double)_yRadius)/((double)_xRadius));
g.LineWidth = border;
g.Arc(x1, y2, _xRadius, 0.0, 2.0 * Math.PI);
g.ClosePath();
}
但是,如果我选择,我想将 Cairo 命令渲染到 Gtk.Pixbuf。就像是:
g = GetContextFromPixbuf(pixbuf);
render(g);
那可能吗?如果我不必将上下文转回 pixbuf,那就太好了,但是 cairo 绘图将直接转到 pixbuf。对此的任何提示将不胜感激!