Heim > Artikel > Web-Frontend > So fügen Sie in node.js ein Wasserzeichen zu PDF hinzu (Codebeispiel)
Der Inhalt dieses Artikels befasst sich mit dem Hinzufügen von Wasserzeichen zu PDF mit node.js (Codebeispiel). Ich hoffe, dass er für Sie hilfreich ist
2. Ich habe darüber nachgedacht, das PDF in Bilder zu konvertieren, den Bildern Wasserzeichen hinzuzufügen und sie dann wieder in PDF zu konvertieren. Ich hatte jedoch das Gefühl, dass die Zwischenschritte zu mühsam waren und die Klarheit möglicherweise beeinträchtigt wurde.
3. Python und Java verfügen über verwandte Lösungen, die implementiert werden können, um Python-Skripte zum Hinzufügen von Wasserzeichen zu PDFs zu verwenden vielleicht nicht so freundlich.
Lösung
Ich habe Github und NPM durchsucht und festgestellt, dass node-pdftk die Anforderungen erfüllen kann, aber auf die PDFTK-Software angewiesen ist Ich habe festgestellt, dass PDFTK Linux unterstützt. Gut, fangen Sie einfach an, es zu verwenden.Umgebung
Die Projektbereitstellung verwendet Docker. Verwenden Sie daher Docker, was für die Situation besser geeignet ist und Ärger erspart, wenn Sie normalerweise auf Ihrem eigenen Computer entwickeln Wenn Sie eine Linux-Umgebung benötigen, um eine Serverumgebung zu üben oder zu simulieren, können Sie auch ein Linux-Image verwenden, um einen Dokcer-Container auszuführen, worauf ich hier nicht näher eingehen werde.Implementierung
1. app.jsIn der Eingabemethode geben wir die Quelldatei und den Stempel ein Methode geben wir die Wasserzeichendatei ein und geben den gespeicherten Pfad in der Out-Methode an. Hier richten wir einen Dienst ein, um unser mit Wasserzeichen versehenes PDF zu generieren, wenn auf Port 3100 zugegriffen wird.'use strict'; const express = require('express'); const pdftk = require('node-pdftk'); const path = require('path'); const app = express(); app.get('/', (req, res) => { pdftk .input(path.resolve(__dirname + '/../files/javascript.pdf')) .stamp(path.resolve(__dirname + '/../files/watermark.pdf')) .output(path.resolve(__dirname + '/../files/javascript_watermark.pdf')) .then(buffer => { return res.send('successful'); }) .catch(err => { console.error(err); return res.send('failed'); }); }); app.listen(3100);2. Docker-Datei
FROM node:7.6.0 # 创建工作目录 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY ./node_modules /usr/src/app/node_modules RUN npm set registry https://registry.npm.taobao.org/ # 下载安装PDFTK RUN apt-get update RUN apt-get install -y pdftk # 使用PM2启动应用 CMD ["./node_modules/pm2/bin/pm2-docker", "process.yml"]
Wasserzeichendatei
Nach dem Hinzufügen des Wasserzeichens
Das obige ist der detaillierte Inhalt vonSo fügen Sie in node.js ein Wasserzeichen zu PDF hinzu (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!