为了账号安全,请及时绑定邮箱和手机立即绑定

w 和 h 必须是数字

w 和 h 必须是数字

幕布斯6054654 2021-09-17 10:25:44
我很难重新创建这个例子。我得到以下输出:2019-08-19T17:19:24.531 [信息] 正在执行“Functions.PdfToTiffConverter”(原因='EventGrid 触发器在 2019-08-19T17:19:24.4859961+00:00'-f9552000'-f95525520 -a9ca7e0daf91) 2019-08-19T17:20:26.112 [信息] 错误:w 和 h 必须是 Jimp.throwError 处的数字 (D:\home\site\wwwroot\node_modules@jimp\utils\dist\index.js:26 :13) 在 Jimp.resize (D:\home\site\wwwroot\node_modules@jimp\plugin-resize\dist\index.js:38:36) 在 Jimp.read.then (D:\home\site\wwwroot \PdfToTiffConverter\index.js:14:19)这是我的function.json:{  "disabled": false,  "bindings": [    {      "type": "eventGridTrigger",      "name": "myEvent",      "direction": "in"    },    {      "name": "myBlob",      "type": "blob",      "direction": "in",      "path": "{data.url}",      "connection": "AZURE_STORAGE_CONNECTION_STRING",      "datatype": "binary"    }  ]}这是我正在使用的代码:const stream = require('stream');const Jimp = require('jimp');const storage = require('azure-storage');const blobService = storage.createBlobService();module.exports = (context, myEvent, myBlob) => {  const widthInPixels = process.env.THUMBNAIL_WIDTH;  const blobName = myEvent.subject.split('/')[6];    Jimp.read(myBlob).then((thumbnail) => {        thumbnail.resize(widthInPixels, Jimp.AUTO);        thumbnail.getBuffer(Jimp.MIME_PNG, (err, buffer) => {            const readStream = stream.PassThrough();            readStream.end(buffer);            blobService.createBlockBlobFromStream('thumbnails', blobName, readStream, buffer.length, (err) => {                context.done();            });        });    }).catch(context.log);};我究竟做错了什么?为什么我会收到此异常?
查看完整描述

1 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

就像@Pointy 指出的那样, process.env.THUMBNAIL_WIDTH 的值是一个字符串,而不是一个数字。

//img1.sycdn.imooc.com//6143fcc50001329d06510451.jpg

//img1.sycdn.imooc.com//6143fcd000010aeb02560111.jpg

试试 const widthInPixels = Number(process.env.THUMBNAIL_WIDTH);


查看完整回答
反对 回复 2021-09-17
  • 1 回答
  • 0 关注
  • 160 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信