웹 프론트엔드 JS 튜토리얼 PDF.js를 사용자 정의하는 방법

PDF.js를 사용자 정의하는 방법

Oct 20, 2024 am 06:24 AM

How to customize PDF.js

PDF.js는 자주 업데이트되고 새로운 기능이 추가되는 훌륭한 오픈 소스 프로젝트입니다. 그러나 외관상 보기 흉하거나 오래되었다고 말할 수 있습니다. PDF.js에서 최신 PDF 기능과 수정 사항을 가져오면서 프레젠테이션 측면에서는 멋진 모습을 유지하는 것은 어떻습니까?

PdfJsKit의 PDF 뷰어는 눈에 띄지 않으며 PDF.js의 코드를 직접 변경하지 않고 iframe에 PDF.js를 포함하며 런타임 시 HTML, JS 및 CSS를 재정의하여 매끄럽고 현대적인 디자인과 더 나은 UI를 제공합니다. 구조와 유용성, 새로운 기능. 이렇게 하면 언제든지 PDF.js를 최신 버전으로 쉽게 업데이트하고 모든 버그 수정 및 개선 사항을 얻을 수 있습니다.

PDF.js를 기반으로 하는 다른 PDF 뷰어는 일반적으로 기본 모양을 업데이트하지 않으며 구성 요소로 분리되어 있지만 부분적으로 구현되거나 잘못된/부분 API를 제공하기 때문에 기능이 누락되는 경우가 많습니다.

시작하기

프로젝트에 패키지를 설치합니다.

npm install pdfjskit
로그인 후 복사

패키지가 설치되거나 버전이 업데이트되면 PdfJsKit에서 사용하는 자산(CSS, 이미지 등)이 node_modulespdfjskitdistpdfjskit에서 publicpdfjskit로 자동 복사됩니다. 프로젝트의 공개 하위 디렉터리는 웹 자산을 위한 일반적인 장소이지만 JS 프레임워크의 디렉터리 구조가 다른 경우 자산을 다른 위치로 이동할 수 있습니다.

기본적으로 PdfJsKit은 호스트 페이지를 기준으로 pdfjskit 하위 디렉터리에서 자산을 로드하지만 사용자 정의 libraryPath 옵션을 PdfViewer 생성자에 전달하여 이 경로를 변경할 수 있습니다.

용법

import PdfViewer from "pdfjskit";

var pdfViewer = new PdfViewer({
  documentUrl: "pdfjskit/sample.pdf",
  width: "80%",
  height: 720,
  resizable: true,
  language: "en-US",
  theme: "slate, classic-dark"
});

pdfViewer.render(document.getElementById("container"));
로그인 후 복사

NPM 패키지에는 ES6 모듈 pdfjskit.min.mjs가 포함되어 있으며, 스크립트 버전 pdfjskit.min.js도 GitHub dist/pdfjskit 디렉토리와 여기에서 제공되는 개발자 패키지에 제공됩니다.

Vite를 사용하여 일반 JS 프로젝트에서 PdfJsKit 사용

PdfJsKit과 함께 모든 JS 프레임워크(React, Vue, Angular, Svelte, Blazor 등)를 사용할 수 있지만 이 게시물에서는 단순화를 위해 일반 JS 프로젝트에 대한 사용법을 보여 드리겠습니다.

일반 JS 프로젝트의 경우 Vite를 사용하는 것이 좋습니다. 이렇게 하면 HTML 파일의 모듈에서 쉽게 가져올 수 있습니다.

  1. Vite 프로젝트 템플릿 만들기:

    npm create vite@latest
    
    로그인 후 복사

    설정 선택:

    ✔ Project name: … pdfjskit-vite-example
    ✔ Select a framework: › Vanilla
    ✔ Select a variant: › JavaScript
    
    로그인 후 복사
  2. 프로젝트 이름이 포함된 하위 디렉터리가 생성됩니다. 다음을 수행하세요.

    cd pdfjskit-vite-example
    npm install
    npm install pdfjskit
    
    로그인 후 복사
  3. index.html을 편집하고 내용을 다음으로 바꾸세요.

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
        <title>PdfJsKit Vite Example</title>
      </head>
      <body>
    
        <div id="container"></div>
    
        <script type="module">
          import PdfViewer from "pdfjskit";
    
          var pdfViewer = new PdfViewer({
            documentUrl: "pdfjskit/sample.pdf",
            width: "80%",
            height: 720,
            resizable: true,
            language: "en-US",
            theme: "slate, classic-dark"
          });
    
          pdfViewer.render(document.getElementById("container"));
        </script>
    
      </body>
    </html>
    
    로그인 후 복사
  4. 이제 개발 웹 서버를 실행할 수 있습니다:

    npm run dev
    
    로그인 후 복사

    표시되는 항목:

    ➜  Local:   http://localhost:5173/
    ➜  Network: use --host to expose
    ➜  press h + enter to show help    
    
    로그인 후 복사

    CTRL 키를 사용하여 로컬 URL을 클릭하여 브라우저를 시작하세요.
    PDF 뷰어가 페이지에 렌더링되는 것을 볼 수 있습니다.

선적 서류 비치

  • HTML API 문서
  • 마크다운 API 문서
  • 지식 기반

라이브 데모

  • 모듈 번들 테스트
  • 스크립트 번들 테스트

모래밭:

  • 깃허브
  • NPM

위 내용은 PDF.js를 사용자 정의하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

JavaScript로 문자열 문자를 교체하십시오 JavaScript로 문자열 문자를 교체하십시오 Mar 11, 2025 am 12:07 AM

JavaScript로 문자열 문자를 교체하십시오

jQuery는 요소 패딩/마진을 얻습니다 jQuery는 요소 패딩/마진을 얻습니다 Mar 01, 2025 am 08:53 AM

jQuery는 요소 패딩/마진을 얻습니다

jQuery 날짜가 유효한지 확인하십시오 jQuery 날짜가 유효한지 확인하십시오 Mar 01, 2025 am 08:51 AM

jQuery 날짜가 유효한지 확인하십시오

10 JQuery Accordions 탭 10 JQuery Accordions 탭 Mar 01, 2025 am 01:34 AM

10 JQuery Accordions 탭

10 JQuery 플러그인을 확인할 가치가 있습니다 10 JQuery 플러그인을 확인할 가치가 있습니다 Mar 01, 2025 am 01:29 AM

10 JQuery 플러그인을 확인할 가치가 있습니다

사용자 정의 Google 검색 API 설정 자습서 사용자 정의 Google 검색 API 설정 자습서 Mar 04, 2025 am 01:06 AM

사용자 정의 Google 검색 API 설정 자습서

노드 및 HTTP 콘솔로 HTTP 디버깅 노드 및 HTTP 콘솔로 HTTP 디버깅 Mar 01, 2025 am 01:37 AM

노드 및 HTTP 콘솔로 HTTP 디버깅

jQuery div에 스크롤 바를 추가합니다 jQuery div에 스크롤 바를 추가합니다 Mar 01, 2025 am 01:30 AM

jQuery div에 스크롤 바를 추가합니다

See all articles