---
name: "Text::PDF::Dict"
section: "3pm"
platform: "linux"
package: "libtext-pdf-perl"
version: "0.31-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Text::PDF::Dict"
---

# Text::PDF::Dict(3pm)

PDF Dictionaries and Streams. Inherits from PDF::Objind

## NAME

Text::PDF::Dict - PDF Dictionaries and Streams. Inherits from PDF::Objind

## INSTANCE VARIABLES

There are various special instance variables which are used to look after, particularly, streams. Each begins with a space:

- stream

  Holds the stream contents for output

- streamfile

  Holds the stream contents in an external file rather than in memory. This is not the same as a PDF file stream. The data is stored in its unfiltered form.

- streamloc

  If both ' stream' and ' streamfile' are empty, this indicates where in the source PDF the stream starts.

## METHODS

### $d-\>outobjdeep($fh)

Outputs the contents of the dictionary to a PDF file. This is a recursive call.

It also outputs a stream if the dictionary has a stream element. If this occurs then this method will calculate the length of the stream and insert it into the stream's dictionary.

### $d-\>read\_stream($force\_memory)

Reads in a stream from a PDF file. If the stream is greater than `"PDF::Dict::mincache"` (defaults to 32768) bytes to be stored, then the default action is to create a file for it somewhere and to use that file as a data cache. If `$force_memory` is set, this caching will not occur and the data will all be stored in the `$self`-\>{' stream'} variable.

### $d-\>val

Returns the dictionary, which is itself.

### $d-\>copy($inpdf, $res, $unique, $outpdf, %opts)

Copies an object. See **Text::PDF::Objind::Copy()** for details
