feat(page): add 'preferCSSPageSize' to page.pdf options (#2928)
Fixes #1963.
This commit is contained in:
parent
78ebf401c2
commit
12e3510eca
@ -1277,6 +1277,7 @@ Page is guaranteed to have a main frame which persists during navigations.
|
|||||||
- `right` <[string]> Right margin, accepts values labeled with units.
|
- `right` <[string]> Right margin, accepts values labeled with units.
|
||||||
- `bottom` <[string]> Bottom margin, accepts values labeled with units.
|
- `bottom` <[string]> Bottom margin, accepts values labeled with units.
|
||||||
- `left` <[string]> Left margin, accepts values labeled with units.
|
- `left` <[string]> Left margin, accepts values labeled with units.
|
||||||
|
- `preferCSSPageSize` <[boolean]> Give any CSS `@page` size declared in the page priority over what is declared in `width` and `height` or `format` options. Defaults to `false`, which will scale the content to fit the paper size.
|
||||||
- returns: <[Promise]<[Buffer]>> Promise which resolves with PDF buffer.
|
- returns: <[Promise]<[Buffer]>> Promise which resolves with PDF buffer.
|
||||||
|
|
||||||
> **NOTE** Generating a pdf is currently only supported in Chrome headless.
|
> **NOTE** Generating a pdf is currently only supported in Chrome headless.
|
||||||
|
@ -889,6 +889,7 @@ class Page extends EventEmitter {
|
|||||||
const marginLeft = convertPrintParameterToInches(marginOptions.left) || 0;
|
const marginLeft = convertPrintParameterToInches(marginOptions.left) || 0;
|
||||||
const marginBottom = convertPrintParameterToInches(marginOptions.bottom) || 0;
|
const marginBottom = convertPrintParameterToInches(marginOptions.bottom) || 0;
|
||||||
const marginRight = convertPrintParameterToInches(marginOptions.right) || 0;
|
const marginRight = convertPrintParameterToInches(marginOptions.right) || 0;
|
||||||
|
const preferCSSPageSize = options.preferCSSPageSize || false;
|
||||||
|
|
||||||
const result = await this._client.send('Page.printToPDF', {
|
const result = await this._client.send('Page.printToPDF', {
|
||||||
landscape: landscape,
|
landscape: landscape,
|
||||||
@ -903,7 +904,8 @@ class Page extends EventEmitter {
|
|||||||
marginBottom: marginBottom,
|
marginBottom: marginBottom,
|
||||||
marginLeft: marginLeft,
|
marginLeft: marginLeft,
|
||||||
marginRight: marginRight,
|
marginRight: marginRight,
|
||||||
pageRanges: pageRanges
|
pageRanges: pageRanges,
|
||||||
|
preferCSSPageSize: preferCSSPageSize
|
||||||
});
|
});
|
||||||
const buffer = Buffer.from(result.data, 'base64');
|
const buffer = Buffer.from(result.data, 'base64');
|
||||||
if (options.path)
|
if (options.path)
|
||||||
|
Loading…
Reference in New Issue
Block a user