javascript - ReferenceError:使用 Watermarkjs 时未定义图像
问题描述
我给出了文件存在的特定路径,但在使用 watermarkjs 时出错
watermark(['../uploads/file_1546929350511_Name.PNG']).image(text.center('watermrk.js', '48px Josefin Slab', '#fff', 0.5)).then(function (img) { document.getElementById('center').appendChild(img); });
错误是
C:\Users\Admin\Desktop\Nss testing\test\node_modules\watermarkjs\dist\watermark.js:351
var img = new Image();
^ReferenceError: Image is not defined
at loadUrl (C:\Users\Admin\Desktop\Nss testing\test\node_modules\watermarkjs\dist\watermark.js:351:14)
at load (C:\Users\Admin\Desktop\Nss testing\test\node_modules\watermarkjs\dist\watermark.js:337:20)
at watermark (C:\Users\Admin\Desktop\Nss testing\test\node_modules\watermarkjs\dist\watermark.js:164:42)
at C:\Users\Admin\Desktop\Nss testing\test\controller\updateController.js:60:7
at Array.<anonymous> (C:\Users\Admin\Desktop\Nss testing\test\node_modules\multer\lib\make-middleware.js:53:37)
at listener (C:\Users\Admin\Desktop\Nss testing\test\node_modules\on-finished\index.js:169:15)
at onFinish (C:\Users\Admin\Desktop\Nss testing\test\node_modules\on-finished\index.js:100:5)
at callback (C:\Users\Admin\Desktop\Nss testing\test\node_modules\ee-first\index.js:55:10)
at IncomingMessage.onevent (C:\Users\Admin\Desktop\Nss testing\test\node_modules\ee-first\index.js:93:5)
at emitNone (events.js:106:13)
at IncomingMessage.emit (events.js:208:7)
at endReadableNT (_stream_readable.js:1064:12)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickCallback (internal/process/next_tick.js:180:9)
解决方案
看起来应该在浏览器中使用 WatermarkJS 模块。
从您的问题主题(express,node.js)看来,您正在尝试在服务器端使用它。
是 window 对象上的Image
一个全局对象,并创建一个新图像以在 DOM 中使用或预加载图像资源。这就是错误说的原因ReferenceError: Image is not defined
。
我建议您查看可在服务器端使用的ImageMagick模块。
推荐阅读
- flutter - Flutter 从 firebase_admob 切换到 google_mobile_ads
- java - 从 Apache Kerby TGTTicket 检索字符串令牌
- java - g.drawString() 上的 Java“换行文本”+“自动字体大小”
- javascript - React Apex Chart 中的折线图在自定义工具提示中返回 [object Object]
- python - 在数据框中查找唯一值并从另一个唯一数据框中相乘 - Python
- c++ - C++20 std::ranges:范围适配器跳过每第 n 个元素
- r - 如何为 Y 有 2 个系列的多列绘制新图表
- python - 设置标签的背景透明
- javascript - 自定义主题 antd 设计不适用于输入控件
- r - 如何在 R 中两个表都没有唯一 id 列的情况下连接两个数据框?