---
name: "CAM::PDF::GS::NoText"
section: "3pm"
platform: "linux"
package: "libcam-pdf-perl"
version: "1.60-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/CAM::PDF::GS::NoText"
---

# CAM::PDF::GS::NoText(3pm)

PDF graphic state

## NAME

CAM::PDF::GS::NoText - PDF graphic state

## LICENSE

See CAM::PDF.

## SYNOPSIS

```
    use CAM::PDF;
    my $pdf = CAM::PDF->new($filename);
    my $contentTree = $pdf->getPageContentTree(4);
    my $gs = $contentTree->computeGS(1);
```

## DESCRIPTION

This class is used to represent the graphic state at a point in the rendering flow of a PDF page.  This does not include the graphics state for text blocks.  That functionality is in the subclass, CAM::PDF::GS.

## FUNCTIONS

- $pkg-\>new($hashref)

  Create a new instance, setting all state values to their defaults. Stores a reference to `$hashref` and sets the property `"$hashref-"`{fm}\> to `"undef"`.

- $self-\>**clone()**

  Duplicate the instance.

## CONVERSION FUNCTIONS

- $self-\>applyMatrix($m1, $m2)

  Apply `$m1` to `$m2`, save in `$m2`.

- $self-\>dot($matrix, $x, $y)

  Compute the dot product of a position against the coordinate matrix.

- $self-\>userToDevice($x, $y)

  Convert user coordinates to device coordinates.

- $self-\>getCoords($node)

  Computes device coordinates for the specified node.  This implementation handles line-drawing nodes.

- $self-\>nodeType($node)

  Returns one of `"block"`, `"path"`, `"paint"`, `"text"` or (the fallback case) `"op"` for the type of the specified node.

## DATA FUNCTIONS

- $self-\>i($flatness)

  - $self-\>j($linejoin)

  - $self-\>J($linecap)

  - $self-\>ri($rendering\_intent)

  - $self-\>Tc($charspace)

  - $self-\>TL($leading)

  - $self-\>Tr($rendering\_mode)

  - $self-\>Ts($rise)

  - $self-\>Tw($wordspace)

  - $self-\>w($linewidth)

  - $self-\>g($gray)

  - $self-\>G($gray)

  - $self-\>rg($red, $green, $blue)

  - $self-\>RG($red, $green, $blue)

  - $self-\>k($cyan, $magenta, $yellow, $black)

  - $self-\>K($cyan, $magenta, $yellow, $black)

  - $self-\>**gs()**

  (Not implemented...)

- $self-\>cm M1, M2, M3, M4, M5, M6

  - $self-\>d($arrayref, $scalar)

  - $self-\>m($x, $y)

  Move path.

- $self-\>l($x, $y)

  Line path.

- $self-\>h()

  - $self-\>c($x1, $y1, $x2, $y2, $x3, $y3)

  - $self-\>v($x1, $y1, $x2, $y2)

  - $self-\>y($x1, $y1, $x2, $y2)

  - $self-\>re($x, $y, $width, $height)

  Rectangle path.

## AUTHOR

See CAM::PDF
