当前位置: 首页 > 知识库问答 >
问题:

无法使用夏普调整图像大小

徐洋
2023-03-14

我正在使用multer将图像上传到服务器。我正在使用sharp调整图像的大小,然后发送到客户端。但是发生的情况是,一旦用户上传了图像,multer将其上传到服务器,夏普甚至调整了它的大小,但是如果同一个用户再次上传,multer上传了新文件,但是夏普并没有调整新上传的图像的大小,而是发送原来的调整过大小的图像。

app.post('/upload',(req,res)=>{
    upload(req,res,(err)=>{
        if(err){
            res.render('picupload',{
                msg: err
            });
        }else{
           if(req.file == undefined){
               res.render('picupload',{
                   msg: 'Error: No File selected!'
               });
           } else{
            console.log(req.file);
            sharp(`./public/uploads/${req.file.filename}`)
                .resize(40,40)
                .toFile(`./public/uploads/resize/${req.file.filename}`,(err,info)=>{
                    if(err) throw err;
                    console.log(info);
                });

            res.render(pathjoin13,{
                file: `uploads/${req.file.filename}` ,
                file1: `uploads/resize/${req.file.filename}`
            });
           }
        }
    });
});

共有1个答案

马野
2023-03-14

res.render()调用依赖于异步toFile()调用的输出,因此需要移动到其回调,如下所示:

.toFile(`./public/uploads/resize/${req.file.filename}`,(err,info)=>{
  if (err) throw err;
  console.log(info);

  res.render(pathjoin13,{
    file: `uploads/${req.file.filename}` ,
    file1: `uploads/resize/${req.file.filename}`
  });
});
 类似资料:
  • 问题内容: 我正在尝试在python 2.7中创建一个tkinter项目,用户可以在其中调整窗口的大小,并且窗口中的所有内容都将随之缩放。这意味着画布,画布中的形状以及最重要的是PhotoImages将随窗口缩放。我的问题是我一生都无法正确调整图像大小。我知道并且为此目的而存在,但是首先 在50x50像素的图像中没有明显变化,对于zoom(2,2)也相同。重要的是要注意我知道PIL存在,但是出于本

  • 问题内容: 我有一个快速的问题,我不太确定要进行设置。我在其他地方看到过示例,但没有什么比我的情况更具体。我想使用PHP调整图像的大小,以使图像易于阅​​读,而不仅仅是像使用HTML那样随意拉伸。如果它们的宽度不是250像素,也不是160像素,那么如何调整图片的大小,使其成比例但适合该空间? 谢谢! 问题答案: 好的,下面是我在商店中使用的Image对象。保持规模-需要GD 我在请求时调整图像的大

  • 问题内容: 我在这里使用Go调整大小包:https://github.com/nfnt/resize 我正在从S3中提取图像,如下所示: // this gives me data []byte 之后,我需要调整图像大小: // problem is that the original_image has to be of type image.Image 将图像上传到我的S3存储桶 // pro

  • 问题内容: 我是Django(和Python)的新手,在尝试使用其他人的应用程序之前,我一直在尝试自己做一些事情。我在理解事物在Django(或Python)的执行方式中“适合”何处时遇到了麻烦。我要解决的问题是上传图片后如何调整图片大小。我已经很好地设置了模型并插入了admin,并且图像可以很好地上传到目录: 我现在遇到的麻烦是获取该文件并将新文件制作为缩略图。就像我说的那样,我想知道如何在不使

  • 问题内容: 我需要调整PNG,JPEG和GIF文件的大小。如何使用Java做到这一点? 问题答案: 加载图像后,你可以尝试:

  • 问题内容: 我正在Node.js(+ express 4)上开发一个Web应用程序,用户可以通过将其上载到服务器来设置其个人资料图像。我们已经限制了文件的模仿类型和最大文件大小,因此用户上传的png或jpeg图片不能超过200KB。 问题是我们想将上传的图片分辨率(服务器端)调整为200x200,以改善页面加载并节省磁盘空间。经过研究,所有答案都指向使用任何基于ImageMagick或Graphi