2012-10-05 1 views
1

이미지를 가져 와서 크기가 다른 여러 변형 (예 : imgur)을 작성하는 스크립트를 작성하고 있습니다. 바로 지금, 내가 할 Node.js를에 https://github.com/aheckmann/gm를 사용하여 각 변형에 대해 다음 : 나는 이미지 크기를 조정할 때마다, graphicsmagick 이미지가 메모리에 디스크로드를 형성 읽고 가정하나의 이미지 읽기/스트림을 사용하여 여러 크기 조정

function(file, size, newfile, callback) { 
    gm(file) 
    .noProfile() 
    .quality(80) 
    .resize(size, size) 
    .write(newfile, callback) 
} 
  1. . 이 올바른지? 그렇다면 어떻게 디스크에서 한 번만 읽을 수 있습니까?
  2. 스트림에서 파일을 읽고 단일 스트림에서 여러 크기를 실행할 수 있습니까? 스트림에 대해 충분히 알지 못합니다.이 마지막 작업을 시도 할 때 좌절감을 느끼고 포기하고 코드 부분을 삭제했습니다.
+0

혹시 이것을 알아 냈습니까? –

+0

nope. 난 그냥 지금 버퍼로 저장 : https://github.com/discore/image-resize-s3 –

+0

그냥 옆으로 :이 일을하면 메모리를 죽일 것이므로, 당신이 낮은 메모리에 있다면 권하고 싶지 않다. heroku 같은 플랫폼. 당신은 mpc 파일을 사용하여 내기를하고 있습니다 : http://www.imagemagick.org/Usage/files/#mpc –

답변

2

ImageMagick을 사용하여 수행하는 방법은 다음 두 가지입니다. 명령 줄

그들은 (프로세싱 동안) 나중에 그것에서 할 수있는 것보다 훨씬 빠르게 데이터를 판독 할 수있는 일시적 레지스터라는 메모리에 프로그램으로 입력 화상을 저장 ImageMagick를 말한다 ImageMagick과 의해 지원 mpr: 구문을 사용 하드 디스크. Splitting image with ImageMagick

  • Efficiently generating thumbnails with ImageMagick and convert
  • 당신이 용어로 이러한 commandlines을 번역하는 것은 쉬워야한다

    • .