【问题标题】:How to check an image dimensions using js or node如何使用 js 或节点检查图像尺寸
【发布时间】:2018-03-24 19:28:51
【问题描述】:

所以我有一个sample.jpg 文件,我想检查它的尺寸。

想要的逻辑是这样的:

var img = require('./sample.jpg');
console.log(typeof img) // returns string -> Image
console.log(img.height) // returns number -> 300
console.log(img.width)  // returns nubmer -> 250

不要介意typeof 的回归。我只是不想得到尺寸。但这是我要去的地方的简单分解。有没有办法使用 node 或纯 js 来做到这一点?

【问题讨论】:

标签: javascript node.js


【解决方案1】:

你可以使用 JS 来使用它(仅适用于浏览器)

 var img = new Image();
 img.src = './sample.jpg';
 console.log(img.height);
 console.log(img.width);

对于节点,您可以安装 canvas 库。

【讨论】:

  • 是的,我试过了,它给了我这个错误:ReferenceError: Image is not defined at Object. (C:\Users\marvenwilsons\Desktop\h\id.js:1286:15 ) 在 Module._compile (module.js:570:32) 在 Object.Module._extensions..js (module.js:579:10) 在 Module.load (module.js:487:32) 在 tryModuleLoad (module. js:446:12) 在 Function.Module._load (module.js:438:3) 在 Module.runMain (module.js:604:10) 在运行 (bootstrap_node.js:389:7) 在启动时 (bootstrap_node.js:389:7) js:149:9) 在 bootstrap_node.js:504:3
【解决方案2】:

你可以使用image-size npm 模块:

npm install image-size --save

然后可以得到这样的维度:

var sizeOf = require('image-size');
var dimensions = sizeOf('./sample.jpg');
console.log(dimensions.width, dimensions.height);

更多信息请通过image-sizedocumentations

【讨论】:

  • 你是个野蛮先生!非常感谢!
  • 我得到错误无法解决fs
  • @Marfin.F,你在使用 fs 库吗?没有看到你的代码,很难根据你的错误来帮助你。
【解决方案3】:

您可以使用jpeg-js

来自他们的文档:

var jpeg = require('jpeg-js');
var jpegData = fs.readFileSync('grumpycat.jpg');
var rawImageData = jpeg.decode(jpegData);
console.log(rawImageData);

【讨论】:

    【解决方案4】:

    您可以使用GraphicsMagickImageMagick。我推荐 GraphicsMagick,因为它更快。

    安装 npm 包gm 并像这样使用:

    gm = require('gm');
    
    // obtain the size of an image
    gm('test.jpg')
    .size(function (err, size) {
      if (!err) {
        console.log('width = ' + size.width);
        console.log('height = ' + size.height);
      }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-15
      • 1970-01-01
      • 2010-12-03
      • 2021-06-05
      • 1970-01-01
      • 2021-11-25
      • 1970-01-01
      相关资源
      最近更新 更多