pdf.js 사용 방법 [닫힌]


92

pdf.js (웹 페이지에 pdf를 포함 할 수있는 오픈 소스 도구) 사용을 고려 하고 있습니다. 사용 방법에 대한 문서가 없습니다.

내가하는 일은 헤더에서 참조 된 스크립트로 html 페이지를 만든 다음 본문에 파일 이름과 위치의 배열로 일종의 함수 호출을 넣는 것이라고 가정합니다. 누구든지 여기서 나를 도울 수 있습니까?


1
### Github 기사 방금 GitHub의 프로젝트 위키 웹 사이트 에서 Setup PDF.js 기사를 시작했습니다 . ### 수료 요청 경험이 있으시다면 기사를 작성해주세요.
Édouard Lopez

viewerjs.org 와 같은 더 높은 수준의 것이 아마도 당신이 원하는 것일 것입니다.
최대

PDF에서 포함 된 xml 파일을 추출하고 싶습니다. 그렇게 할 수있는 방법이 있습니까?
Ananta Prasad

답변:


33

Google'ing 사용해보기 pdf.js documentation

/* create the PDF document */

var doc = new pdf();
doc.text(20, 20, 'hello, I am PDF.');
doc.text(20, 30, 'i was created in the browser using javascript.');
doc.text(20, 40, 'i can also be created from node.js');

/* Optional - set properties on the document */
doc.setProperties({
  title: 'A sample document created by pdf.js',
  subject: 'PDFs are kinda cool, i guess',        
  author: 'Marak Squires',
  keywords: 'pdf.js, javascript, Marak, Marak Squires',
  creator: 'pdf.js'
});

doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'This is a title');
doc.setFontSize(16); 
doc.text(20, 30, 'This is some normal sized text underneath.');

var fileName = "testFile"+new Date().getSeconds()+".pdf";
var pdfAsDataURI = doc.output('datauri', {"fileName":fileName});

참고 : 여기에 언급 된 "pdf.js"프로젝트는 https://github.com/Marak/pdf.js 이며이 답변이 게시 된 이후 더 이상 사용되지 않습니다. @Treffynnon의 대답은 대부분의 검색자가 찾고 있는 여전히 활성 상태 인 Mozilla 프로젝트 ( https://github.com/mozilla/pdf.js )에 대한 것입니다.


나는 그것을 보았지만 var = filename 위의 내용에 대해 혼란 스럽습니다. doc.text에 doc.addPage ()가 필요하고 그 위에 트리플 doc.text가 필요합니까?
Chris

또 다른 질문은 무엇을 변경해야 하는가입니다. 마지막 줄의 첫 번째 "파일 이름"과 doc 속성을 변경해야한다고 가정합니다. 그게 다야?
Chris

25
이것은 다른 pdf.js 아닌가요?
Swiss

@Swiss, 이것은 2 월의 업 보트와 함께 답변으로 표시되었습니다. 나는 이것이 OP가 찾던 것이라고 말하고 싶습니다.
James Hill

14
네 그래서 혼란 스러웠습니다. op는 pdf를 html로 표시하기 위해 mozilla 프로젝트를 참조하는 것처럼 보이지만 링크하는 블로그에서 참조하는 프로젝트는 javascript를 사용하여 pdf 파일을 만드는 것과 다릅니다.
Swiss

50

github readme 에서 사용할 수있는 문서가 있습니다 . 그들은 다음 예제 코드를 인용합니다 .

/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */

//
// See README for overview
//

'use strict';

//
// Fetch the PDF document from the URL using promises
//
PDFJS.getDocument('helloworld.pdf').then(function(pdf) {
  // Using promise to fetch the page
  pdf.getPage(1).then(function(page) {
    var scale = 1.5;
    var viewport = page.getViewport(scale);

    //
    // Prepare canvas using PDF page dimensions
    //
    var canvas = document.getElementById('the-canvas');
    var context = canvas.getContext('2d');
    canvas.height = viewport.height;
    canvas.width = viewport.width;

    //
    // Render PDF page into canvas context
    //
    var renderContext = {
      canvasContext: context,
      viewport: viewport
    };
    page.render(renderContext);
  });
});

19
잘 문서화되어 있지는 않지만 pdf.js zip을 추출하고 디렉토리 구조를 그대로 둡니다. 그런 다음 pdf를 보려면 끝에 파일이 추가 된 viewer.html 파일 (브라우저를 통해)로 이동하면됩니다. Ex yoursite.com/directory_that_viewer_._html_is_in/viewer.html?file=somepdfthatyouhave.pdf pdf 위치는 viewer.html 파일에 GET 변수로 전달됩니다.
Craig Lafferty

4
로부터 GitHub의 위키 : "당신이 당신 자신의 사이트에 포함 된 뷰어를 계획하는 경우, 우리는 그냥 수정되지 않은 버전이 아닐 것을 물어 마십시오 다시 피부 그것을 또는 빌드를 그 위에.." -그들의 끔찍하게 존재하지 않는 API 문서를 감안할 때이 프로젝트는 당신이 몸매를 유지하기에 충분한 후프를 통과하는지 확인합니다 : \
Philzen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.