# Global

##

### Members

#### _UnsupportedManager

(Deprecated) Global observer of unsupported feature usages. Use onUnsupportedFeature callback of the {PDFDocumentLoadingTask} instance.

Source:
  - display/api.js, line 2240

### Methods

#### arrayByteLength(arr) → {number}

Gets length of the array (Array, Uint8Array, or string) in bytes.

##### Parameters:

Name | Type | Description
--- | --- | ---
`arr` | Array | Uint8Array | string |

Source:
  - shared/util.js, line 543

##### Returns:

Type
  number

#### arraysToBytes(arr) → {Uint8Array}

Combines array items (arrays) into single Uint8Array object.

##### Parameters:

Name | Type | Description
--- | --- | ---
`arr` | Array | the array of the arrays (Array, Uint8Array, or string).

Source:
  - shared/util.js, line 556

##### Returns:

Type
  Uint8Array

#### createPromiseCapability() → {PromiseCapability}

Creates a promise capability object.

Source:
  - shared/util.js, line 1116

##### Returns:

A capability object contains: - a Promise, resolve and reject methods.

Type
  PromiseCapability

#### createValidAbsoluteUrl(url, baseUrl) → {URL}

Attempts to create a valid absolute URL (utilizing `isValidProtocol`).

##### Parameters:

Name | Type | Description
--- | --- | ---
`url` | URL | string | An absolute, or relative, URL.
`baseUrl` | URL | string | An absolute URL.

Source:
  - shared/util.js, line 361

##### Returns:

Either a valid , or `null` otherwise.

Type
  URL

#### getDocument(src, pdfDataRangeTransport, passwordCallback, progressCallback) → {PDFDocumentLoadingTask}

This is the main entry point for loading a PDF and interacting with it. NOTE: If a URL is used to fetch the PDF data a standard XMLHttpRequest(XHR) is used, which means it must follow the same origin rules that any XHR does e.g. No cross domain requests without CORS.

##### Parameters:

Name | Type | Description
--- | --- | ---
`src` | string | TypedArray | DocumentInitParameters | PDFDataRangeTransport | Can be a url to where a PDF is located, a typed array (Uint8Array) already populated with data or parameter object.
`pdfDataRangeTransport` | PDFDataRangeTransport | (deprecated) It is used if you want to manually serve range requests for data in the PDF.
`passwordCallback` | function | (deprecated) It is used to request a password if wrong or no password was provided. The callback receives two parameters: function that needs to be called with new password and reason (see {PasswordResponses}).
`progressCallback` | function | (deprecated) It is used to be able to monitor the loading progress of the PDF file (necessary to implement e.g. a loading bar). The callback receives an {Object} with the properties: {number} loaded and {number} total.

Source:
  - display/api.js, line 167

##### Returns:

Type
  PDFDocumentLoadingTask

### Type Definitions

#### DocumentInitParameters

Document initialization / loading parameters object.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`url` | string | The URL of the PDF.
`data` | TypedArray | Array | string | Binary PDF data. Use typed arrays (Uint8Array) to improve the memory usage. If PDF data is BASE64-encoded, use atob() to convert it to a binary string first.
`httpHeaders` | Object | Basic authentication headers.
`withCredentials` | boolean | Indicates whether or not cross-site Access-Control requests should be made using credentials such as cookies or authorization headers. The default is false.
`password` | string | For decrypting password-protected PDFs.
`initialData` | TypedArray | A typed array with the first portion or all of the pdf data. Used by the extension since some data is already loaded before the switch to range requests.
`length` | number | The PDF file length. It's used for progress reports and range requests operations.
`range` | PDFDataRangeTransport |
`rangeChunkSize` | number | Optional parameter to specify maximum number of bytes fetched per range request. The default value is 2^16 = 65536.
`worker` | PDFWorker | The worker that will be used for the loading and parsing of the PDF data.
`docBaseUrl` | string | (optional) The base URL of the document, used when attempting to recover valid absolute URLs for annotations, and outline items, that (incorrectly) only specify relative URLs.
`disableNativeImageDecoder` | boolean | (deprecated) Disable decoding of certain (simple) JPEG images in the browser. This is useful for environments without DOM image support, such as e.g. Node.js. The default value is `false`.

`nativeImageDecoderSupport`

string

(optional) Strategy for decoding certain (simple) JPEG images in the browser. This is useful for environments without DOM image and canvas support, such as e.g. Node.js. Valid values are 'decode', 'display' or 'none'; where 'decode' is intended for browsers with full image/canvas support, 'display' for environments with limited image support through stubs (useful for SVG conversion), and 'none' where JPEG images will be decoded entirely by PDF.js. The default value is 'decode'.

`CMapReaderFactory` | Object | (optional) The factory that will be used when reading built-in CMap files. Providing a custom factory is useful for environments without `XMLHttpRequest` support, such as e.g. Node.js. The default value is {DOMCMapReaderFactory}.
`stopAtErrors` | boolean | (optional) Reject certain promises, e.g. `getOperatorList`, `getTextContent`, and `RenderTask`, when the associated PDF data cannot be successfully parsed, instead of attempting to recover whatever possible of the data. The default value is `false`.

Source:
  - display/api.js, line 85

#### GetAnnotationsParameters

Page annotation parameters.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`intent` | string | Determines the annotations that will be fetched, can be either 'display' (viewable annotations) or 'print' (printable annotations). If the parameter is omitted, all annotations are fetched.

Source:
  - display/api.js, line 687

#### getTextContentParameters

Page getTextContent parameters.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`normalizeWhitespace` | boolean | replaces all occurrences of whitespace with standard spaces (0x20). The default value is `false`.
`disableCombineTextItems` | boolean | do not attempt to combine same line TextItem's. The default value is `false`.

Source:
  - display/api.js, line 647

#### PDFDocumentStats

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`streamTypes` | Array | Used stream types in the document (an item is set to true if specific stream ID was used in the document).
`fontTypes` | Array | Used font type in the document (an item is set to true if specific font ID was used in the document).

Source:
  - display/api.js, line 134

#### PDFOperatorList

PDF page operator list.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`fnArray` | Array | Array containing the operator functions.
`argsArray` | Array | Array containing the arguments of the functions.

Source:
  - display/api.js, line 727

#### PromiseCapability

Promise Capability object.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`promise` | Promise | A promise object.
`resolve` | function | Fulfills the promise.
`reject` | function | Rejects the promise.

Source:
  - shared/util.js, line 1100

#### RenderParameters

Page render parameters.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`canvasContext` | Object | A 2D context of a DOM Canvas object.
`viewport` | PageViewport | Rendering viewport obtained by calling of PDFPage.getViewport method.
`intent` | string | Rendering intent, can be 'display' or 'print' (default value is 'display').
`renderInteractiveForms` | boolean | (optional) Whether or not interactive form elements are rendered in the display layer. If so, we do not render them on canvas as well.
`transform` | Array | (optional) Additional transform, applied just before viewport transform.
`imageLayer` | Object | (optional) An object that has beginLayout, endLayout and appendImage functions.
`continueCallback` | function | (deprecated) A function that will be called each time the rendering is paused. To continue rendering call the function that is the first argument to the callback.
`canvasFactory` | Object | (optional) The factory that will be used when creating canvases. The default value is {DOMCanvasFactory}.
`background` | Object | (optional) Background to use for the canvas. Can use any valid canvas.fillStyle: A DOMString parsed as CSS <color> value, a CanvasGradient object (a linear or radial gradient) or a CanvasPattern object (a repetitive image). The default value is 'rgb(255,255,255)'.

Source:
  - display/api.js, line 697

#### TextContent

Page text content.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`items` | array | array of TextItem
`styles` | Object | TextStyles objects, indexed by font name.

Source:
  - display/api.js, line 657

#### TextItem

Page text content part.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`str` | string | text content.
`dir` | string | text direction: 'ttb', 'ltr' or 'rtl'.
`transform` | array | transformation matrix.
`width` | number | width in device space.
`height` | number | height in device space.
`fontName` | string | font name used by pdf.js for converted font.

Source:
  - display/api.js, line 665

#### TextStyle

Text style.

##### Type:

- Object

##### Properties:

Name | Type | Description
--- | --- | ---
`ascent` | number | font ascent.
`descent` | number | font descent.
`vertical` | boolean | text is in vertical mode.
`fontFamily` | string | possible font family

Source:
  - display/api.js, line 677