2017-12-21 31 views
0

출력을 렌더링하기 위해 일련의 URL을 연 다음 PhantomJS를 사용하여 단일 PDF로 결합하려고 시도하지만이를 수행하는 방법에 대한 문서를 찾을 수 없습니다. 나는 시행 착오를 사용하고 있지만 아무데도 가지 않고있다. 누군가가 이것을 어떻게하는지 알기를 바란다.여러 URL을 하나의 PDF로 렌더링하는 방법

PhantomJS에 완전히 설정되지 않았으므로 더 나은 명령 줄, 노드 또는 JAVA 도구를 알고 있다면 나는 모든 귀 (이 경우 눈)입니다.

다음은 단일 페이지를 렌더링하는 코드입니다. 열려있는/렌더링을 복제하려고했지만 항상 PDF를 추가하는 대신 덮어 씁니다.

var page = require('webpage').create(), 
    system = require('system'), 
    fs = require('fs'), 
    pages = { 
     page1: 'http://localhost/test1.html', 
     page2: 'http://localhost/test2.html' 
    }; 

page.paperSize = { 
    format: 'A4', 
    orientation: 'portrait', 
}; 

page.settings.dpi = "96"; 

// this renders a single page and overwrites the existing PDF or creates a new one 
page.open('pages.page1', function() { 
    setTimeout(function() { 
     page.render('capture.pdf'); 
     phantom.exit(); 
    }, 5000); 
}); 

답변

1

PhantomJS 하나 개의 PDF 파일로 하나 개의 웹 페이지를 렌더링, 그래서 당신은 하나 개의 html 파일에 여러 개의 URL을 병합 할 수 있다면 당신은 PhantomJS에서 열어 PDF 파일을 만들 수 있습니다.

PhantomJS child module에서 병합 명령을 실행

그러나 여러 PDF 파일을 만들기 위해 간단 것하고 스크립트의 끝에 다음 merge them into one with something like pdfkt,