Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在开罗旋转文本,因为我正在使用函数 :cairo_rotate(m_cr, angle)来旋转角度弧度。现在要取消设置开始正常文本渲染的角度,我应该调用cairo_rotate(m_cr, - angle) function or cairo_rotate(m_cr, 0.0),我的意思是 cairo 中的旋转是累积的吗?
cairo_rotate(m_cr, angle)
cairo_rotate(m_cr, - angle) function or cairo_rotate(m_cr, 0.0)
旋转(和所有其他变换)是累积的。
但是,恕我直言,使用起来更好,cairo_save(cr); cairo_rotate(cr, angle);然后再cairo_restore(cr);撤消效果。这也适用于其他类型的转换,重置当前剪辑和当前源。事实上,cairo_restore恢复除了当前路径之外的所有内容。
cairo_save(cr); cairo_rotate(cr, angle);
cairo_restore(cr);
cairo_restore