给出一个URL,我需要将其放入模板pdf文件中,然后直接将其流式传输到响应中。我的问题是,因为我使用hummus.PDFPageModifier
,所以无法暂停上下文,因为无法获取页面对象
如果我将它第一次下载到本地存储,就可以解决此问题。但是,如果我愿意,我会避免。
下面是我的代码
res.writeHead(200, {'Content-Type': 'application/pdf'})
const targetPdf = new hummus.PDFStreamForResponse(res)
const sourcePdf = new hummus.PDFRStreamForFile("./sample.pdf")
const pdfWriter = hummus.createWriterToModify(sourcePdf, targetPdf)
const styleDesc = {
font:pdfWriter.getFontForFile('./geoian.ttf'),
size:20, colorspace:'black', color:0x00
}
const pageModifier = new hummus.PDFPageModifier(pdfWriter,0)
const ctx = pageModifier.startContext().getContext()
let url = "https://farm4.static.flickr.com/3224/3057246139_2317386c2f_o.jpg"
const data = await request.get({url, encoding:null})
const img_buf = new hummus.PDFRStreamForBuffer(data)
//pdfWriter.pausePageContentContext(pageModifier.getAssociatedPage())
const imageXObj = pdfWriter.createImageXObjectFromJPG(img_buf)
ctx.q().cm(500,0,0,400,0,0).doXObject(imageXObj).Q()
pageModifier.endContext().writePage()
pdfWriter.end()
res.end()
我的主要问题是pdfWriter.pausePageContentContext
需要接收一个page
对象,从这里到那里谷歌搜索,我仍然找不到它。
我该如何解决这个问题?
注意:请原谅使用pageModifier.getAssociatedPage()
,我试图在github上浏览一些鹰嘴豆泥c ++代码,偶然发现了一种名为GetAssociatedPage
的方法,但我不习惯阅读c ++,所以在那里我很迷路