node.js 그림 재단 + 그림 크기 가져오기 + 로고 스탬프 추가

5005 단어
1、웹storm에 장착npm install images 코드는 다음과 같습니다.
var fs = require("fs");
var images=require('images');
router.get('/zipFile',function (req,res,next) {
    var lastPut='222.jpg';//     
    var sourcePic="../public/images/jietu.png";//   
    var watermark="../public/defaultPicture/defaultMan.jpg";//logo  
    var x=images(sourcePic).width()-images(watermark).width();//sourcePic.width-watermark.width
    var y=images(sourcePic).height()-images(watermark).height();//sourcePic.height-watermark.height
    images(sourcePic)
    //      
        .size(1000,1000)//       width   ,         。
        .draw(images(watermark),x,y)     // (x,y)   watermark  ,     logo
        .save(lastPut, {

quality:
50
//그림을 파일로 저장하고 그림 품질은 50
});
var
staSync =
fs.statSync(
lastPut).size;
//생성된 그림의 크기
});
관련 자료:https://github.com/zhangyuanwei/node-images
http://nodejs.cn/api/fs
이미지 플러그인 사용하기
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
사용:sharp 플러그인의 속도는 상대적으로 gmimages 블록보다 낮고 정조를 잃는 정도도 비교적 낮다.
npm install sharp --save
var sharp=require('sharp');
sharp(__dirname+'/../public/temp/333.jpg')
   .overlayWith(__dirname+'/../public/temp/shuiyin.png',{gravity:sharp.gravity.southeast}
)//   
.resize(null,
1280)//height에 따라 압축
.toFile(
__dirname+
'/../public/temp/qqq1.jpg',
function (error) {
console.
log(error);
console.
log(
typeOptions.
isEmpty(error));
if(
typeOptions.
isEmpty(error)){
//잘못을 보고하지 않는다.
console.
log(
"잘못 보고하지 않습니다.");
sharp.
cache(
false);
//차지 자원 제거}
else{
console.
log(
"오류 보고.");}};sharp는 다른 플러그인보다 낫다.sharp 프로젝트 홈 페이지:https://github.com/lovell/sharpsharp프로젝트에 원본 코드가 있습니다. 원본 코드에 있는 데모에 따라 자신의 모듈을 쓸 수 있습니다.

좋은 웹페이지 즐겨찾기