diff --git a/src/cairo-pdf-surface.c b/src/cairo-pdf-surface.c index 027e2cb17..64b564180 100644 --- a/src/cairo-pdf-surface.c +++ b/src/cairo-pdf-surface.c @@ -2232,8 +2232,14 @@ _cairo_pdf_surface_stroke (void *abstract_surface, cairo_pdf_document_t *document = surface->document; cairo_status_t status; - if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE) + if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE) { + /* XXX: Does PDF provide a way we can preserve this hint? For now, + * this will trigger a fallback. */ + if (antialias == CAIRO_ANTIALIAS_NONE) + return CAIRO_INT_STATUS_UNSUPPORTED; + return _analyze_operation (surface, op, source); + } assert (_operation_supported (surface, op, source)); @@ -2280,8 +2286,14 @@ _cairo_pdf_surface_fill (void *abstract_surface, const char *pdf_operator; cairo_status_t status; - if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE) + if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE) { + /* XXX: Does PDF provide a way we can preserve this hint? For now, + * this will trigger a fallback. */ + if (antialias == CAIRO_ANTIALIAS_NONE) + return CAIRO_INT_STATUS_UNSUPPORTED; + return _analyze_operation (surface, op, source); + } assert (_operation_supported (surface, op, source));