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.