pdfmkr
Version:
Generate PDF documents from JavaScript objects
249 lines (248 loc) • 4.79 kB
TypeScript
/**
* A length definition as a number, optionally followed by a unit.
* Supported units are `pt` (point), `in` (inch), `mm` (millimeter),
* and `cm` (centimeter).
* If the unit is left out, the number is interpreted as point (`pt`).
* One point is defined as `1/72` of an inch (`72pt = 1in`).
*/
export type Length = number | `${number}${LengthUnit}`;
/**
* A length unit, either `pt` (point), `in` (inch), `mm` (millimeter),
* or `cm` (centimeter).
* One point is defined as 1/72 of an inch (72pt = 1in).
*/
export type LengthUnit = 'pt' | 'in' | 'mm' | 'cm';
/**
* A set of lengths to describe the inner or outer edges of a box. Used
* for paddings and margins.
*/
export type BoxLengths = {
/** Space on the left edge, overrides `x`. */
left?: Length;
/** Space on the right edge, overrides `x`. */
right?: Length;
/** Space on the upper edge, overrides `y`. */
top?: Length;
/** Space on the lower edge, overrides `y`. */
bottom?: Length;
/** Space on the left and right edge. */
x?: Length;
/** Space on the upper and lower edge. */
y?: Length;
};
export type Size = {
width: Length;
height: Length;
};
/**
* A paper size, either as a string (e.g. `'A4'`) or as an object with
* `width` and `height` properties.
*/
export type PaperSize = Size | NamedPaperSize;
export type NamedPaperSize = keyof typeof paperSizes;
export type Orientation = 'portrait' | 'landscape';
/**
* Common paper sizes, in portrait orientation.
*/
export declare const paperSizes: {
'4A0': {
width: number;
height: number;
};
'2A0': {
width: number;
height: number;
};
A0: {
width: number;
height: number;
};
A1: {
width: number;
height: number;
};
A2: {
width: number;
height: number;
};
A3: {
width: number;
height: number;
};
A4: {
width: number;
height: number;
};
A5: {
width: number;
height: number;
};
A6: {
width: number;
height: number;
};
A7: {
width: number;
height: number;
};
A8: {
width: number;
height: number;
};
A9: {
width: number;
height: number;
};
A10: {
width: number;
height: number;
};
B0: {
width: number;
height: number;
};
B1: {
width: number;
height: number;
};
B2: {
width: number;
height: number;
};
B3: {
width: number;
height: number;
};
B4: {
width: number;
height: number;
};
B5: {
width: number;
height: number;
};
B6: {
width: number;
height: number;
};
B7: {
width: number;
height: number;
};
B8: {
width: number;
height: number;
};
B9: {
width: number;
height: number;
};
B10: {
width: number;
height: number;
};
C0: {
width: number;
height: number;
};
C1: {
width: number;
height: number;
};
C2: {
width: number;
height: number;
};
C3: {
width: number;
height: number;
};
C4: {
width: number;
height: number;
};
C5: {
width: number;
height: number;
};
C6: {
width: number;
height: number;
};
C7: {
width: number;
height: number;
};
C8: {
width: number;
height: number;
};
C9: {
width: number;
height: number;
};
C10: {
width: number;
height: number;
};
RA0: {
width: number;
height: number;
};
RA1: {
width: number;
height: number;
};
RA2: {
width: number;
height: number;
};
RA3: {
width: number;
height: number;
};
RA4: {
width: number;
height: number;
};
SRA0: {
width: number;
height: number;
};
SRA1: {
width: number;
height: number;
};
SRA2: {
width: number;
height: number;
};
SRA3: {
width: number;
height: number;
};
SRA4: {
width: number;
height: number;
};
Executive: {
width: number;
height: number;
};
Folio: {
width: number;
height: number;
};
Legal: {
width: number;
height: number;
};
Letter: {
width: number;
height: number;
};
Tabloid: {
width: number;
height: number;
};
};