Ejemplo n.º 1
0
    def compose(self, **kwargs):
        """
        Compose layer and masks (mask, vector mask, and clipping layers).

        :return: PIL Image object, or None if the layer has no pixels.
        """
        from psd_tools.composer import compose
        return compose(self, **kwargs)
Ejemplo n.º 2
0
    def compose(self, bbox=None, **kwargs):
        """
        Compose the artboard.

        See :py:func:`~psd_tools.compose` for available extra arguments.

        :param bbox: Viewport tuple (left, top, right, bottom).
        :return: :py:class:`PIL.Image`, or `None` if there is no pixel.
        """
        from psd_tools.composer import compose
        return compose(self, bbox=bbox or self.bbox, **kwargs)
Ejemplo n.º 3
0
    def compose(self, bbox=None, **kwargs):
        """
        Compose layer and masks (mask, vector mask, and clipping layers).

        Note that the resulting image size is not necessarily equal to the
        layer size due to different mask dimensions. The offset of the
        composed image is stored at `.info['offset']` attribute of `PIL.Image`.

        :return: :py:class:`PIL.Image`, or `None` if the layer has no pixel.
        """
        from psd_tools.composer import compose, compose_layer
        if self.bbox == (0, 0, 0, 0):
            return None
        if bbox is None:
            return compose_layer(self, **kwargs)
        return compose(self, bbox=bbox, **kwargs)
Ejemplo n.º 4
0
    def compose(self, force=False, bbox=None, layer_filter=None):
        """
        Deprecated, use :py:func:`~psd_tools.api.layers.PixelLayer.composite`.

        Compose layer and masks (mask, vector mask, and clipping layers).

        Note that the resulting image size is not necessarily equal to the
        layer size due to different mask dimensions. The offset of the
        composed image is stored at `.info['offset']` attribute of `PIL.Image`.

        :param bbox: Viewport bounding box specified by (x1, y1, x2, y2) tuple.
        :return: :py:class:`PIL.Image`, or `None` if the layer has no pixel.
        """
        from psd_tools.composer import compose, compose_layer
        if self.bbox == (0, 0, 0, 0):
            return None
        if bbox is None:
            return compose_layer(self, force=force)
        return compose(self, force=force, bbox=bbox, layer_filter=layer_filter)
Ejemplo n.º 5
0
    def compose(self, force=False, bbox=None, **kwargs):
        """
        Compose the PSD image.

        See :py:func:`~psd_tools.compose` for available extra arguments.

        :param bbox: Viewport tuple (left, top, right, bottom).
        :return: :py:class:`PIL.Image`, or `None` if there is no pixel.
        """
        from psd_tools.composer import compose
        image = None
        if not force or len(self) == 0:
            image = self.topil(**kwargs)
        if image is None:
            image = compose(self,
                            bbox=bbox or self.viewbox,
                            force=force,
                            **kwargs)
        elif bbox is not None:
            image = image.crop(bbox)
        return image
Ejemplo n.º 6
0
    def compose(
        self,
        force=False,
        bbox=None,
        layer_filter=None,
        context=None,
        color=None
    ):
        """
        Compose layer and masks (mask, vector mask, and clipping layers).

        :return: PIL Image object, or None if the layer has no pixels.
        """
        from psd_tools.composer import compose
        return compose(
            self,
            force=force,
            context=context,
            bbox=bbox,
            layer_filter=layer_filter,
            color=color,
        )
Ejemplo n.º 7
0
    def compose(self, force=False, bbox=None, layer_filter=None):
        """
        Deprecated, use :py:func:`~psd_tools.PSDImage.composite`.

        Compose the PSD image.

        :param bbox: Viewport tuple (left, top, right, bottom).
        :return: :py:class:`PIL.Image`, or `None` if there is no pixel.
        """
        from psd_tools.composer import compose
        image = None
        if (not force or len(self) == 0) and not bbox and not layer_filter:
            image = self.topil()
        if image is None:
            image = compose(
                self,
                bbox=bbox or self.viewbox,
                force=force,
                layer_filter=layer_filter,
            )
        elif bbox is not None:
            image = image.crop(bbox)
        return image