我正在使用" gm"转换不同的图像和pdf文件nodejs的模块。图像类型成功,但当我想将PDF转换为图像时出现问题。我只需要将一个选定的页面从pdf文件转换为jpg / png。如果我将整个pdf文件传递给" gm"它只保存到图像第一页,但我找不到保存另一页的方法。
gm(file).toBuffer(format.toUpperCase(),
function (err, buffer) {
// so in buffer now we have converted image
}
谢谢。
答案 0 :(得分:0)
仅用于第一个pdf页面:
gm(file,'pdf.pdf [0]')。toBuffer(...)
仅用于第二个pdf页面:
gm(file,'pdf.pdf [1]')。toBuffer(...)
答案 1 :(得分:0)
gm(file).selectFrame(0).toBuffer()//获取首页
gm(file).selectFrame(1).toBuffer()//获取第二页
答案 2 :(得分:-1)
spindrift用于操作pdf(包括图像转换)。
您可以使用(不要使用所有命令)来定义pdf:
var pdf = spindrift('in.pdf')
.pages(7, 24)
.page(1)
.even()
.odd()
.rotate(90)
.compress()
.uncompress()
.crop(100, 100, 300, 200) // left, bottom, right, top
稍后转换为图片:
// Use the 'index' property of an image element to extract an image:
pdf.extractImageStream(0)
如果你必须使用gm,你可以做@Ben Fortune在评论中提出的建议并首先拆分pdf。