---
name: "PDF::Builder::Basic::PDF::Utils"
section: "3pm"
platform: "linux"
package: "perl-pdf-builder"
version: "3.028-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/PDF::Builder::Basic::PDF::Utils"
---

# PDF::Builder::Basic::PDF::Utils(3pm)

Utility functions for PDF library

## NAME

PDF::Builder::Basic::PDF::Utils - Utility functions for PDF library

## DESCRIPTION

A set of utility functions to save the fingers of the PDF library users!

## METHODS

### PDFBool

```
    PDFBool()
```

Creates a Bool via PDF::Builder::Basic::PDF::Bool-\>**new()**

### PDFArray

```
    PDFArray()
```

Creates an array via PDF::Builder::Basic::PDF::Array-\>**new()**

### PDFDict

```
    PDFDict()
```

Creates a dict via PDF::Builder::Basic::PDF::Dict-\>**new()**

### PDFName

```
    PDFName()
```

Creates a name via PDF::Builder::Basic::PDF::Name-\>**new()**

### PDFNull

```
    PDFNull()
```

Creates a null via PDF::Builder::Basic::PDF::Null-\>**new()**

### PDFNum

```
    PDFNum()
```

Creates a number via PDF::Builder::Basic::PDF::Number-\>**new()**

### PDFString

```
    PDFString($text, $usage)
```

Returns either PDFStr($text) or PDFUtf($text), depending on whether `$text` is already in UTF-8 and whether the `$usage` permits UTF-8. If UTF-8 is *not* permitted, `"downgrade"` will be called on a UTF-8 formatted `$text`.

`$usage` is a single character string indicating the use for which `$text` is to be applied. Some uses permit UTF-8, while others (currently) forbid it:

- 's'

  An ordinary **string**, where UTF-8 text is permitted.

- 'n'

  A **named destination**, where UTF-8 text is permitted.

- 'o'

  An **outline title**, where UTF-8 text is permitted.

- 'p'

  A **popup title**, where UTF-8 text is permitted.

- 'm'

  **metadata**, where UTF-8 text is permitted.

- 'f'

  A **file path and/or name**, where UTF-8 text is currently **not** permitted.

- 'u'

  A **URL**, where UTF-8 text is currently **not** permitted.

- 'x'

  Any other usage where UTF-8 text is **not** permitted.

### PDFStr

```
    PDFStr()
```

Creates a string via PDF::Builder::Basic::PDF::String-\>**new()**

**DEPRECATED.** It is preferable that you use `"PDFString"` instead.

### PDFStrHex

```
    PDFStrHex()
```

Creates a hex-string via PDF::Builder::Basic::PDF::String-\>**new()**

### PDFUtf

```
    PDFUtf()
```

Creates a utf8-string via PDF::Builder::Basic::PDF::String-\>**new()**

**DEPRECATED.** It is preferable that you use `"PDFString"` instead.
