Dominique Leuenberger
ccf66016e9
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=81
27 lines
1.0 KiB
Diff
27 lines
1.0 KiB
Diff
diff --git a/src/cairo-pen.c b/src/cairo-pen.c
|
|
index 61be0e8..8eed775 100644
|
|
--- a/src/cairo-pen.c
|
|
+++ b/src/cairo-pen.c
|
|
@@ -284,7 +284,20 @@ _cairo_pen_vertices_needed (double tolerance,
|
|
radius);
|
|
int num_vertices;
|
|
|
|
- if (tolerance >= 4*major_axis) { /* XXX relaxed from 2*major for inkscape */
|
|
+ if (tolerance >= 100*major_axis) { /* XXX relaxed from 2*major for inkscape */
|
|
+ /*
|
|
+ * When we decide for num_vertices = 1, the object is not drawn.
|
|
+ * To avoid https://bugs.freedesktop.org/show_bug.cgi?id=77298
|
|
+ * we use 100*major -- this just helps us to the 0.001mm line width.
|
|
+ *
|
|
+ * The author of the 'XXX relaxed' comment above, originally used 4*major,
|
|
+ * which is not sufficient for my inkscape lasercutter usecase.
|
|
+ *
|
|
+ * Please double check if num_vertices == 1 should never be done (for PDF).
|
|
+ *
|
|
+ * jnweiger@gmail.com
|
|
+ */
|
|
+ // fprintf(stderr, "tolerance=%g major_axis=%g -> num_vertices = 1\n", tolerance, major_axis);
|
|
num_vertices = 1;
|
|
} else if (tolerance >= major_axis) {
|
|
num_vertices = 4;
|