CairoContext::clipPreserve

cairo_clip_preserve

(PECL cairo >= 0.1.0)

CairoContext::clipPreserve -- cairo_clip_preserveEstablce una nueva región de recorte desde el recorte actual

Descripción

Estilo orientado a objetos (método):

public CairoContext::clipPreserve ( void ) : void

Estilo por procedimientos:

cairo_clip_preserve ( CairoContext $context ) : void

Establece una nueva región de recorte intersectando la región de recorte actual con el trazado actual como si fuese rellenada por Context.fill() y según la acutual FILL RULE (véase CairoContext::setFillRule() o cairo_set_fill_rule()).

A diferencia de CairoContext::clip(), CairoContext::clipPreserve() preserva el trazado dentro de Context. La región de recorte actual afecta a todas las operaciones de dibujo enmascarando cualquier cambio hecho a la superficie que esté fuera de la región de recorte actual.

Llamar a CairoContext::clipPreserve() sólo puede hacer la región de recorte más pequeña, nunca más grande. Pero el recorte actual es parte del estado de gráficos, por lo que se puede llevar a cabo una restricción temporal de la región de recorte llamando a CairoContext::clipPreserve() dentro de una pareja CairoContext::save()/CairoContext::restore(). El otro medio para incrementar el tamaño de la región de recorte es CairoContext::resetClip().

Parámetros

context

Un objeto CairoContext válido

Valores devueltos

No devuelve ningún valor.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php

$superficie 
= new CairoImageSurface(CairoFormat::ARGB325050);

$contexto = new CairoContext($superficie);

$contexto->clipPreserve();

?>

Ejemplo #2 Estilo por procedimientos

<?php

$superficie 
cairo_image_surface_create(CAIRO_FORMAT_ARGB325050);

$contexto cairo_create($superficie);

cairo_clip_preserve($contexto);

?>

Ver también