jsPDF

jsPDF

new jsPDF(optionsopt) → {jsPDF}

Source:
{
 orientation: 'p',
 unit: 'mm',
 format: 'a4',
 putOnlyUsedFonts:true,
 floatPrecision: 16 // or "smart", default is 16
}
Parameters:
Name Type Attributes Description
options Object <optional>

用于初始化 jsPDF 实例的一组设置

属性
Name Type Attributes Default Description
orientation string <optional>
portrait

第一页的方向。可能的值为 "portrait" 或 "landscape"(或简写 "p" 或 "l")。

unit string <optional>
mm

用于指定坐标时的测量单位(基础单位)。
可能的值有 "pt" (points), "mm", "cm", "in", "px", "pc", "em" 或 "ex"。请注意,为了正确缩放 "px" 单位,需要通过设置 options.hotfixes = ["px_scaling"] 来启用 hotfix "px_scaling"。

format string/Array <optional>
a4

第一页的格式。可以为:

  • a0 - a10
  • b0 - b10
  • c0 - c10
  • dl
  • letter
  • government-letter
  • legal
  • junior-legal
  • ledger
  • tabloid
  • credit-card

默认值为 "a4"。如果你想使用自定义格式,请传入一个数字数组来表示尺寸,例如 [595.28, 841.89]

putOnlyUsedFonts boolean <optional>
false

仅将实际使用的字体嵌入 PDF。

compress boolean <optional>
false

压缩生成的 PDF。

precision number <optional>
16

元素位置的精度。

userUnit number <optional>
1.0

不要与基础单位混淆。使用前请确保了解相关信息。

hotfixes Array.<string> <optional>

用于启用 hotfix(例如正确像素缩放)的字符串数组。

encryption Object <optional>
属性
Name Type Attributes Description
userPassword string <optional>

用于给定权限列表下用户的密码。

string <optional>

必须同时设置 userPassword 和 才能进行正确的身份验证。

userPermissions Array.<string> <optional>

包含用户可访问权限(如 "print", "modify", "copy", "annot-forms")的数组。

floatPrecision number | "smart" <optional>
16
Returns:

jsPDF-instance

Type
jsPDF

Members

(static) __bidiEngine__

Source:

constructor ( options )

初始化双向文本引擎

advancedAPI

Source:

出于兼容性原因,jsPDF提供了两种API模式,它们在屏幕坐标系和PDF坐标系的转换方式上有所不同。

  • "compat": 提供所有插件的完全兼容性,但不允许任意变换
  • "advanced": 允许任意变换和更高级的功能,如图案填充。但某些插件可能不支持此模式。 初始模式为 "compat"。

你可以为body参数提供一个回调函数,这意味着jsPDF会在之后自动切换回原始API模式;或者你可以省略回调函数, 使用compatAPI手动切换回去。

请注意,在回调函数内部或在此方法与其对应的compatAPI方法之间的调用中,saveGraphicsState和restoreGraphicsState的调用需要保持平衡。 在切换回"compat" API模式之前,beginFormObject或beginTilingPattern的调用需要由它们的对应方法关闭。

API

Source:

jsPDF.API 是 jsPDF 类的静态属性。 jsPDF.API 是一个可以添加方法和属性的对象。 你添加的方法/属性将出现在新的 jsPDF 对象中。

其中预先填充了一个属性,即'events'对象。插件作者可以向该对象添加主题和回调函数。 这些将被重新分配给所有新的 jsPDF 实例。

Example
jsPDF.API.mymethod = function(){
  // 'this' 将引用内部 API 对象。参见 jsPDF 源码
  // 因此你可以这样引用内置方法:
  //     this.line(....)
  //     this.text(....)
}
var pdfdoc = new jsPDF()
pdfdoc.mymethod() // <- !!!!!!

beginTilingPattern

Source:

开始一个新的平铺图案。在调用 API.endTilingPattern 之前,所有后续的渲染调用都会绘制到这个图案中。仅在"advanced" API 模式下可用。

CapJoinStyles

Source:

这是一个对象,提供了从人类可读的值到整数标志值的映射,用于指定线条端点和连接样式的各种变体。

compatApi

Source:

切换到"compat" API模式。更多详情请参见 advancedAPI。

endTilingPattern

Source:

结束平铺图案并将渲染目标设置回调用 API.beginTilingPattern 之前的活动目标。

仅在"advanced" API模式下可用。

#identityMatrix :Matrix

Source:

单位矩阵(等同于 new Matrix(1, 0, 0, 1, 0, 0))。

Type:

isAdvancedAPI

Source:

matrixMult

Source:

矩阵相乘。(参见 Matrix

version :string

Source:

jsPDF 的版本号。

Type:
  • string

Methods

addFont(postScriptName, id, fontStyle, fontWeight, encoding) → {string}

Source:

向当前实例添加自定义字体。

参数:
名称 类型 描述
postScriptName string

PDF规范中字体的完整名称。

id string

分配给字体的PDF文档实例特定标签。

fontStyle string

字体样式。

fontWeight number | string

字体粗细。

encoding Object

编码名称到字体度量对象的映射。

Returns:

fontId

Type
string

addGState(key, gState) → {jsPDF}

Source:

添加一个新 GState 用于后续使用。参见 setGState。

参数:
名称 类型 描述
key String
gState GState
Returns:
Type
jsPDF

addPage(format, orientation) → {jsPDF}

Source:

向PDF文档添加(并转移焦点到)新页面。

参数:
名称 类型 描述
format String/Array

新页面的规格。可以是:

  • a0 - a10
  • b0 - b10
  • c0 - c10
  • dl
  • letter
  • government-letter
  • legal
  • junior-legal
  • ledger
  • tabloid
  • credit-card

默认是 "a4"。如果你想使用自己的格式,只需传递一个数字数组,例如 [595.28, 841.89]

orientation string

新页面的方向。可能的值是 "portrait" 或 "landscape"(或快捷方式 "p"(默认),"l")。

Returns:
Type
jsPDF

addPattern(key, pattern) → {jsPDF}

Source:

添加一个新 API.ShadingPattern 用于后续使用。仅在 "advanced" API 模式下可用。

参数:
名称 类型 描述
key String
pattern Pattern
Returns:
Type
jsPDF

beginFormObject(x, y, width, height, matrix) → {jsPDF}

Source:

开始一个新的 PDF 表单对象,这意味着所有后续的绘制调用都会指向一个新的独立对象,直到调用 endFormObject 为止。创建的对象可以稍后使用 doFormObject 引用和绘制。支持嵌套的表单对象。 x、y、width、height 设置用于裁剪内容的边界框。

参数:
名称 类型 描述
x number
y number
width number
height number
matrix Matrix

将应用于将表单对象的坐标系转换为父级的矩阵。

Returns:
Type
jsPDF

circle(x, y, r, styleopt) → {jsPDF}

Source:

在 PDF 中添加一个圆。

Parameters:
名称 类型 属性 描述
x number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

r number

半径(使用PDF文档创建时声明的单位)

style string <可选>

指定绘制样式的字符串或null。有效的样式包括: 'S' [默认] - 描边, 'F' - 填充, 以及 'DF' (或 'FD') - 先填充后描边。 在"compat" API模式下,null值会推迟设置样式,这样可以使用多个方法调用来组合形状。用于定义形状的最后一个绘制方法调用不应该有null样式参数。

在"advanced" API模式下此参数已弃用。

Returns:
Type
jsPDF

clip(rule) → {jsPDF}

Source:

在使用 null 样式参数调用绘图操作之后,所有 .clip() 均被调用。

参数:
名称 类型 描述
rule string

唯一可能的值是 'evenodd'

Returns:
Type
jsPDF

clipEvenOdd() → {jsPDF}

Source:

使用奇偶规则将当前路径与当前剪切路径相交来修改剪切路径。 注意 这不会消耗当前路径。如果只想将此路径用于剪切,请在之后调用 API.discardPath。

Returns:
Type
jsPDF

close() → {jsPDF}

Source:

关闭当前路径。PDF "h" 操作符。

Returns:
Type
jsPDF

comment(text) → {jsPDF}

Source:

在生成的PDF中插入调试注释。

参数:
名称 类型 描述
text String
Returns:
Type
jsPDF

curveTo(x1, y1, x2, y2, x3, y3) → {jsPDF}

Source:

在当前路径上添加一条三次贝塞尔曲线。该曲线从当前点延伸到点(x3, y3),使用(x1, y1)和(x2, y2)作为贝塞尔控制点。新的当前点将是(x3, y3)。

参数:
名称 类型 描述
x1 number
y1 number
x2 number
y2 number
x3 number
y3 number
Returns:
Type
jsPDF

deletePage(targetPage) → {jsPDF}

Source:

从PDF中删除一个页面。

参数:
名称 类型 描述
targetPage number
Returns:
Type
jsPDF

discardPath() → {jsPDF}

Source:

消耗当前路径但不产生任何效果。主要与 clip 或 clipEvenOdd 组合使用。对应 PDF 的 "n" 操作符。

Returns:
Type
jsPDF

doFormObject(key, matrix) → {jsPDF}

Source:

通过引用使用 API.beginFormObject 和 endFormObject 创建的相应 PDF XObject 来绘制指定的表单对象。 位置由矩阵决定。

参数:
名称 类型 描述
key String

表单对象的键。

matrix Matrix

绘制表单对象之前应用的矩阵。

Returns:
Type
jsPDF

ellipse(x, y, rx, ry, styleopt) → {jsPDF}

Source:

在 PDF 中添加一个椭圆。

Parameters:
名称 类型 属性 描述
x number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

rx number

x轴方向的半径(使用PDF文档创建时声明的单位)

ry number

y轴方向的半径(使用PDF文档创建时声明的单位)

style string <可选>

指定绘制样式的字符串或null。有效的样式包括: 'S' [默认] - 描边, 'F' - 填充, 以及 'DF' (或 'FD') - 先填充后描边。 在"compat" API模式下,null值会推迟设置样式,这样可以使用多个方法调用来组合形状。用于定义形状的最后一个绘制方法调用不应该有null样式参数。

在"advanced" API模式下此参数已弃用。

Returns:
Type
jsPDF

endFormObject(key) → {jsPDF}

Source:

完成并保存表单对象。

Parameters:
名称 类型 描述
key String

可以引用此表单对象的键。

Returns:
Type
jsPDF

fill(patternopt) → {jsPDF}

Source:

使用非零环绕数规则填充当前路径。如果提供了图案,路径将使用此图案填充,否则使用当前填充颜色。相当于PDF的"f"运算符。

Parameters:
名称 类型 属性 描述
pattern PatternData <可选>

如果提供,路径将使用此图案填充

Returns:
Type
jsPDF

fillEvenOdd(patternopt) → {jsPDF}

Source:
参见:
  • API.fill

使用奇偶规则填充当前路径。PDF的f*运算符。

Parameters:
名称 类型 属性 描述
pattern PatternData <可选>

如果提供,路径将使用此图案填充

Returns:
Type
jsPDF

fillStroke(patternopt) → {jsPDF}

Source:
See:
  • API.fill

使用非零环绕规则填充并描边当前路径。对应 PDF 的 "B" 操作符。

Parameters:
名称 类型 属性 描述
pattern PatternData <可选>

如果提供,路径将使用此图案描边

Returns:
Type
jsPDF

fillStrokeEvenOdd(patternopt) → {jsPDF}

Source:
See:
  • API.fill

使用奇偶规则填充并描边当前路径。对应 PDF 的 "B" 操作符。

Parameters:
名称 类型 属性 描述
pattern PatternData <可选>

如果提供,路径将使用此图案填充并描边

Returns:
Type
jsPDF

getCharSpace() → {number}

Source:

获取字符间距的全局值。

Returns:

charSpace(字符间距)

Type
number

getCreationDate(type) → {Object}

Source:
Parameters:
名称 类型 描述
type Object
Returns:
Type
Object

getDrawColor() → {string}

Source:

获取即将绘制的元素的描边颜色。

Returns:

colorAsHex(十六进制颜色值)

Type
string

getFileId() → {string}

Source:
Returns:

GUID。

Type
string

getFillColor() → {string}

Source:

获取即将绘制的元素的填充颜色。

Returns:

colorAsHex(十六进制颜色值)

Type
string

getFont() → {Object}

Source:

获取即将绘制的文本元素的字体和字体变体。

Returns:
Type
Object

getFontList() → {Object}

Source:

返回一个对象 - 当前 PDF 文档可用的字体名称到字体样式的关系树。

Returns:

例如 {'times':['normal', 'italic', ... ], 'arial':['normal', 'bold', ... ], ... }

Type
Object

getFontSize() → {number}

Source:

获取即将绘制的文本元素的字体大小。

Returns:
Type
number

getFormObject(key) → {Object|jsPDF}

Source:

返回由键指定的表单对象。

Parameters:
名称 类型 描述
key String
Returns:

getLineHeightFactor() → {number}

Source:

获取行高因子,默认值: 1.15。

Returns:

lineHeightFactor(行高因子)

Type
number

getLineWidth() → {number}

Source:

获取线宽,默认值: 0.200025。

Returns:

lineWidth(线宽)

Type
number

getR2L() → {boolean}

Source:

获取从右到左功能的值。

Returns:

jsPDF实例

Type
boolean

getTextColor() → {string}

Source:

获取即将绘制的元素的文本颜色。

Returns:

colorAsHex(十六进制颜色值)

Type
string

insertPage(beforePage) → {jsPDF}

Source:
Parameters:
名称 类型 描述
beforePage Object
Returns:
Type
jsPDF

line(x1, y1, x2, y2, style) → {jsPDF}

Source:

在当前页面绘制一条线。

Parameters:
名称 类型 描述
x1 number
y1 number
x2 number
y2 number
style string

指定绘制样式的字符串或null。有效的样式包括: 'S' [默认] - 描边, 'F' - 填充, 以及 'DF' (或 'FD') - 先填充后描边。 在"compat" API模式下,null值会推迟设置样式,这样可以使用多个方法调用来组合形状。用于定义形状的最后一个绘制方法调用不应该有null样式参数。默认值: 'S'

Returns:
Type
jsPDF

lines(lines, x, y, scale, styleopt, closedopt) → {jsPDF}

Source:

在画布上添加一系列曲线(直线或三次贝塞尔曲线),从x, y坐标开始。 lines中的所有数据点都是相对于上一条线的原点。 x, y成为集合中第一条线/曲线的x1,y1。 对于直线,你只需要指定[x2, y2] - 相对于x1, y1起点的(终点)向量。 对于贝塞尔曲线,你需要指定[x2,y2,x3,y3,x4,y4] - 控制点1、2和终点的向量。所有向量都是相对于曲线起点x1,y1。

Example
.lines([[2,2],[-2,2],[1,1,2,2,3,3],[2,1]], 212,110, [1,1], 'F', false) // 直线、直线、贝塞尔曲线、直线
Parameters:
名称 类型 属性 描述
lines Array

由成对(直线)或六元组(三次贝塞尔曲线)的向量偏移量组成的数组。

x number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

scale number

(默认值为[1.0,1.0])所有向量的x,y缩放因子。元素可以是任何浮点数。小于1使绘图变小。大于1使绘图变大。负值翻转方向。

style string <optional>

指定绘制样式的字符串或null。有效样式包括: 'S' [默认] - 描边, 'F' - 填充, 以及 'DF' (或 'FD') - 先填充后描边。 在"compat" API模式下,null值会推迟设置样式,这样可以使用多个方法调用来组合形状。用于定义形状的最后一个绘制方法调用不应该有null样式参数。

在"advanced" API模式下此参数已弃用。

closed Boolean <optional>

如果为true,则通过从最后一条曲线的末端到起点画一条直线来闭合路径。

Returns:
Type
jsPDF

save(filename, options) → {jsPDF|Promise}

Source:

保存为PDF文档。是jsPDF.output('save', 'filename.pdf')的别名。 使用FileSaver.js的saveAs方法。

Parameters:
名称 类型 描述
filename string

包含扩展名的文件名。

options Object

包含额外选项的对象,可能的选项包括: 'returnPromise'。

Returns:

jsPDF实例

Type
jsPDF | Promise

saveGraphicsState() → {jsPDF}

Source:

保存当前图形状态("压入栈中")。可以通过后续的restoreGraphicsState恢复。这里指的是通用的PDF图形状态,包括当前的变换矩阵、填充和描边颜色等。

Returns:
Type
jsPDF

setCharSpace(charSpace) → {jsPDF}

Source:

设置字符间距的全局值。

Parameters:
名称 类型 描述
charSpace number
Returns:

jsPDF实例

Type
jsPDF

setCreationDate(date) → {jsPDF}

Source:
Parameters:
名称 类型 描述
date Object
Returns:
Type
jsPDF

setCurrentTransformationMatrix(matrix) → {jsPDF}

Source:

将此矩阵附加到所有先前应用的矩阵的左侧。

Parameters:
Name Type Description
matrix Matrix
Returns:
Type
jsPDF

setDisplayMode(zoom, layout, pmode) → {jsPDF}

Source:

设置页面的显示模式选项,如缩放和布局。

Parameters:
Name Type Description
zoom integer | String

你可以传入整数或百分比字符串。2将文档放大2倍,'200%'将放大相同的倍数。你也可以设置为'fullwidth'、'fullheight'、'fullpage'或'original'。

只有某些PDF阅读器支持此功能,如Adobe Acrobat。

layout string

布局模式可以是:'continuous' - 这是默认的连续滚动。'single' - 单页模式一次只显示一页。'twoleft' - 双栏左侧模式,第一页从左侧开始,'tworight' - 页面以双栏布局,第一页在右侧。这通常用于书籍。

pmode string

'UseOutlines' - 在左侧显示文档大纲。'UseThumbs' - 在左侧显示缩略图。'FullScreen' - 提示用户进入全屏模式。

Returns:
Type
jsPDF

setDocumentProperties(A) → {jsPDF}

Source:

向PDF文档添加属性。

Parameters:
Name Type Description
A Object

属性名到属性值的对象结构。

Returns:
Type
jsPDF

setDrawColor(ch1, ch2, ch3, ch4) → {jsPDF}

Source:

设置即将绘制元素的描边颜色。

根据给定参数的数量,可以推断出是灰度、RGB或CMYK颜色空间。

当仅给出ch1时,表示使用"灰度"颜色空间,如果值以字符串类型传递,它必须在0.00(纯黑)到1.00(白色)范围内,如果以数字类型传递,则必须在0(黑色)到255(白色)范围内。提供RGB类似的0-255范围是为了向后兼容。

当仅给出ch1、ch2、ch3时,表示使用"RGB"颜色空间,如果值以字符串类型传递,每个值必须在0.00(最小强度)到1.00(最大强度)范围内,如果以数字类型传递,则必须在0(最小强度)到255(最大强度)范围内。提供RGB类似的0-255范围是为了向后兼容。

当给出ch1、ch2、ch3、ch4时,表示使用"CMYK"颜色空间,每个值必须在0.00(0%浓度)到1.00(100%浓度)范围内

由于JavaScript处理定点数不太好(四舍五入到最接近二进制表示的浮点数),强烈建议使用字符串类型而不是JavaScript数字类型来传递小数。

Parameters:
Name Type Description
ch1 Number | String

颜色通道值或{string} ch1十六进制颜色值,例如:'#FFFFFF'。

ch2 Number

颜色通道值。

ch3 Number

颜色通道值。

ch4 Number

颜色通道值。

Returns:
Type
jsPDF

setFileId(value) → {jsPDF}

Source:
Parameters:
Name Type Description
value string

GUID。

Returns:
Type
jsPDF

setFillColor(ch1, ch2, ch3, ch4) → {jsPDF}

Source:

设置即将绘制元素的填充颜色。

根据给定参数的数量,可以推断出是灰度、RGB或CMYK颜色空间。

当仅给出ch1时,表示使用"灰度"颜色空间,如果值以字符串类型传递,它必须在0.00(纯黑)到1.00(白色)范围内,如果以数字类型传递,则必须在0(黑色)到255(白色)范围内。提供RGB类似的0-255范围是为了向后兼容。

当仅给出ch1、ch2、ch3时,表示使用"RGB"颜色空间,如果值以字符串类型传递,每个值必须在0.00(最小强度)到1.00(最大强度)范围内,如果以数字类型传递,则必须在0(最小强度)到255(最大强度)范围内。提供RGB类似的0-255范围是为了向后兼容。

当给出ch1、ch2、ch3、ch4时,表示使用"CMYK"颜色空间,每个值必须在0.00(0%浓度)到1.00(100%浓度)范围内

由于JavaScript处理定点数不太好(四舍五入到最接近二进制表示的浮点数),强烈建议使用字符串类型而不是JavaScript数字类型来传递小数。

Parameters:
Name Type Description
ch1 Number | String

颜色通道值或{string} ch1十六进制颜色值,例如:'#FFFFFF'。

ch2 Number

颜色通道值。

ch3 Number

颜色通道值。

ch4 Number

颜色通道值。

Returns:
Type
jsPDF

setFont(fontName, fontStyle, fontWeight) → {jsPDF}

Source:

设置即将出现的文本元素的字体名称和变体。 请参阅 jsPDF.getFontList() 的输出以获取可用的字体名称和样式。

Parameters:
名称 类型 描述
fontName string

字体名称或字体族。例如:"times"。

fontStyle string

字体样式或变体。例如:"italic"。

fontWeight number | string

字体粗细。例如:"normal" | 400

Returns:
Type
jsPDF

setFontSize(size) → {jsPDF}

Source:

设置即将出现的文本元素的字体大小。

Parameters:
名称 类型 描述
size number

字体大小(以磅为单位)。

Returns:
Type
jsPDF

setGState(gState) → {jsPDF}

Source:

设置一个之前通过addGState添加的GState或一个新的GState

Parameters:
名称 类型 描述
gState String | GState

如果类型是字符串,将使用之前添加的GState,如果类型是GState,则会在使用前添加。

Returns:
Type
jsPDF

setLineCap(style) → {jsPDF}

Source:

设置线条端点样式。 参见{jsPDF.CapJoinStyles}获取变体。

Parameters:
名称 类型 描述
style String | Number

标识线条端点类型的字符串或数字。

Returns:
Type
jsPDF

setLineDashPattern(dashArray, dashPhase) → {jsPDF}

Source:

设置即将绘制的线条的虚线模式。

要重置设置,只需不带任何参数调用此方法即可。

Parameters:
名称 类型 描述
dashArray Array.<number>

包含0-2个数字的数组。第一个数字设置虚线的长度,第二个数字设置间隙的长度。如果第二个数字缺失,则认为间隙与虚线等长。空数组表示实线。

dashPhase number

线条开始的相位。

Returns:
Type
jsPDF

setLineHeightFactor(value) → {jsPDF}

Source:

设置行高比例因子。

Parameters:
名称 类型 描述
value number

行高比例因子值。默认值:1.15。

Returns:
Type
jsPDF

setLineJoin(style) → {jsPDF}

Source:

设置线条连接样式。 参见{jsPDF.CapJoinStyles}获取变体。

Parameters:
名称 类型 描述
style String | Number

标识线条连接类型的字符串或数字。

Returns:
Type
jsPDF

setLineMiterLimit(length) → {jsPDF}

Source:

设置斜接限制属性,它影响最大斜接长度。

Parameters:
名称 类型 描述
length number

斜接的长度

Returns:
Type
jsPDF

setLineWidth(width) → {jsPDF}

Source:

设置即将绘制的线条宽度。

Parameters:
名称 类型 描述
width number

线条宽度(使用PDF文档创建时声明的单位)。

Returns:
Type
jsPDF

setPage(page) → {jsPDF}

Source:

向PDF文档添加新页面(并将焦点转移到新页面)。

Example
doc = jsPDF()
doc.addPage()
doc.addPage()
doc.text('I am on page 3', 10, 10)
doc.setPage(1)
doc.text('I am on page 1', 10, 10)
Parameters:
Name Type Description
page number

切换到指定页码的活动页面(从1开始索引)。

Returns:
Type
jsPDF

setPrecision(precision) → {jsPDF}

Source:
Parameters:
Name Type Description
precision string
Returns:
Type
jsPDF

setR2L(value) → {jsPDF}

Source:

设置从右到左(R2L)功能的值。

Parameters:
Name Type Description
value boolean
Returns:

jsPDF实例

Type
jsPDF

setTextColor(ch1, ch2, ch3, ch4) → {jsPDF}

Source:

设置即将绘制元素的文本颜色。

根据给定参数的数量,可以使用灰度、RGB或CMYK颜色空间。

当仅提供ch1参数时,表示使用"灰度"颜色空间。如果值以字符串类型传递,则必须在0.00(纯黑)到1.00(白色)范围内;如果以数字类型传递,则必须在0(黑色)到255(白色)范围内。提供0-255范围是为了向后兼容。

当仅提供ch1、ch2、ch3三个参数时,表示使用"RGB"颜色空间。如果值以字符串类型传递,每个值必须在0.00(最小强度)到1.00(最大强度)范围内;如果以数字类型传递,则必须在0(最小强度)到255(最大强度)范围内。提供0-255范围是为了向后兼容。

当提供ch1、ch2、ch3、ch4四个参数时,表示使用"CMYK"颜色空间,每个值必须在0.00(0%浓度)到1.00(100%浓度)范围内。

由于JavaScript处理定点数的方式不够理想(会四舍五入到最接近的二进制表示),强烈建议使用字符串类型而不是JavaScript数字类型来传递小数。

Parameters:
Name Type Description
ch1 Number | String

颜色通道值或十六进制颜色值字符串,例如:'#FFFFFF'。

ch2 Number

颜色通道值。

ch3 Number

颜色通道值。

ch4 Number

颜色通道值。

Returns:
Type
jsPDF

stroke() → {jsPDF}

Source:

描边路径。PDF "S" 操作符。

Returns:
Type
jsPDF

text(text, x, y, optionsopt, transform) → {jsPDF}

Source:

向页面添加文本。当'text'参数是字符串数组时支持添加多行文本。

Parameters:
Name Type Attributes Description
text String | Array

要添加到页面的字符串或字符串数组。根据在此调用之前声明的字体和间距设置,每行向下移动一行。

x number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)。

y number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)。

options Object <optional>

指示文本如何编码的设置集合。

Properties
Name Type Attributes Default Description
align string <optional>
left

文本对齐方式,可能的值:left、center、right、justify。

baseline string <optional>
alphabetic

设置绘制文本时使用的文本基线,可能的值:alphabetic、ideographic、bottom、top、middle、hanging

angle number | Matrix <optional>
0

顺时针或逆时针旋转文本。期望角度值以度为单位。

rotationDirection number <optional>
1

旋转方向。0 = 顺时针,1 = 逆时针。

charSpace number <optional>
0

每个字母之间的间距。

horizontalScale number <optional>
1

文本的水平缩放比例(相对于常规大小)。

lineHeightFactor number <optional>
1.15

每行的行高。

flags Object <optional>

to8bitStream的标志。

Properties
Name Type Attributes Default Description
noBOM boolean <optional>
true

不要向Unicode文本添加BOM。

autoencode boolean <optional>
true

自动编码文本。

maxWidth number <optional>
0

按给定宽度分割文本,0 = 不分割。

renderingMode string <optional>
fill

设置文本应如何渲染,可能的值:fill、stroke、fillThenStroke、invisible、fillAndAddForClipping、strokeAndAddPathForClipping、fillThenStrokeAndAddToPathForClipping、addToPathForClipping。

isInputVisual boolean <optional>

BidiEngine的选项

isOutputVisual boolean <optional>

BidiEngine的选项

isInputRtl boolean <optional>

BidiEngine的选项

isOutputRtl boolean <optional>

BidiEngine的选项

isSymmetricSwapping boolean <optional>

BidiEngine的选项

transform number | Matrix

如果transform是一个数字,文本将围绕由x和y设置的锚点旋转此值。

如果是Matrix,这个矩阵将直接应用于文本,这允许剪切效果等;x和y偏移量将在此矩阵建立坐标系统之后应用。这意味着传递等效于某个旋转角度的旋转矩阵通常会产生不同的结果。矩阵仅在"advanced"API模式下允许。

Returns:
Type
jsPDF

triangle(x1, y1, x2, y2, x3, y3, styleopt) → {jsPDF}

Source:

向PDF添加三角形。

Parameters:
Name Type Attributes Description
x1 number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y1 number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

x2 number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y2 number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

x3 number

相对于页面左边缘的坐标(使用PDF文档创建时声明的单位)

y3 number

相对于页面上边缘的坐标(使用PDF文档创建时声明的单位)

style string <optional>

指定绘制样式的字符串或null。有效的样式包括: 'S' [默认] - 描边, 'F' - 填充, 以及 'DF'(或'FD')- 先填充后描边。 在"compat" API模式下,null值会推迟设置样式,以便可以使用多个方法调用来组合形状。用于定义形状的最后一个绘制方法调用不应该有null样式参数。

在"advanced" API模式下,此参数已弃用。

Returns:
Type
jsPDF

(inner) addGState(key, gState)

Source:

添加一个新的图形状态。重复的状态会被自动消除。

Parameters:
Name Type Description
key String

如果不需要后续引用此图形状态,也可以为null

gState Object

图形状态对象

(inner) addPattern(key, pattern)

Source:

添加一个新的模式以供后续使用。

Parameters:
Name Type Description
key String

用于后续引用的键值。键值必须是唯一的!

pattern API.Pattern

模式对象

(inner) hasHotfix(hotfixName) → {boolean}

Source:

用于检查创建PDF实例时是否请求了指定的热修复。

Parameters:
Name Type Description
hotfixName string

要检查的热修复名称。

Returns:
Type
boolean

(inner) Point()

Source:

(inner) Rectangle()

Source:

矩形

(inner) RenderTarget()

Source:

表单对象/渲染目标