Cài đặt cửa sổ wkhtmltopdf

Repo này chứa các tệp nhị phân Windows (MSVC 2013) cho Windows Vista trở lên; . dự án wkhtmltopdf. Thông tin thêm về chức năng của wkhtmltopdf và wkthmltoimage có thể được tìm thấy ở đó

Bạn có thể tìm thấy các tệp nhị phân cho Linux i386, cũng có thể cài đặt bằng trình soạn thảo tại đây. github. com/h4cc/wkhtmltopdf-i386

Có thể tìm thấy các tệp nhị phân cho Linux amd64, cũng có thể cài đặt được với trình soạn thảo, tại đây. github. com/h4cc/wkhtmltopdf-amd64

gói PHP

Đối với Laravel 5. x github. com/wemersonjanuario/laravelpdf Non Framework github. com/wemersonjanuario/pdf

Cài đặt

Gợi ý. Phiên bản của tệp nhị phân bằng với thẻ git. Để cài đặt phiên bản mới nhất, hãy sử dụng '0. 12. 2. 3'

Trong trường hợp gói này không hoạt động trên hệ thống của bạn, hãy thử cài đặt các gói hệ thống phù hợp từ đây. http. //wkhtmltopdf. tổ chức/tải xuống. html

wkHTMLtoPDF là một công cụ nguồn mở và đa nền tảng có thể chuyển đổi các trang HTML thành PDF. Đây là một tiện ích dòng lệnh và nó khá dễ sử dụng. Cú pháp sử dụng công cụ khá đơn giản, nhập tên wkhtmltopdf, sau đó là URL của trang web và tên tệp PDF mà bạn muốn tạo, như vậy

wkhtmltopdf URL filename.pdf

Phần mềm cơ sở kiến ​​thức PHPKB sử dụng công cụ này để hỗ trợ xuất các bài báo cơ sở kiến ​​thức sang định dạng PDF

Không còn nghi ngờ gì nữa, wkhtmltopdf là một chương trình mượt mà cần có, đặc biệt nếu bạn đã quen thuộc với các ngôn ngữ lập trình. Với điều này, bạn có thể ngay lập tức chuyển đổi bất kỳ trang HTML nào thành tài liệu PDF. Bạn cũng có thể thao tác các tham số của mình để tạo đầu ra mà bạn mong muốn. Tuy nhiên, phần mềm này có thể quá sức đối với người mới bắt đầu và người dùng không am hiểu về công nghệ

mở lại

Chỉnh sửa

Xóa bỏ

Lá cờ

Làm cách nào để cài đặt wkhtmltopdf trong windows? Đã đóng

mở lại

Chỉnh sửa

Xóa bỏ

Lá cờ

Siddharth Gajjar (sga)

13 Tháng ba 2020

Hủy đăng ký Đăng ký

Cảm ơn bạn đã đăng ký

Câu hỏi đã bị đóng vì lý do. không liên quan hoặc lỗi thời

qua

Ermin Trevisan

vào 05/10/2021 23. 29. 44

mở lại

Làm cách nào để cài đặt wkhtmltopdf trong windows?

đăng bình luận

1Trả lời

0

Alexander

2 tháng mười hai 2020

Câu trả lời hay nhất

Trên trang https. //wkhtmltopdf. tổ chức/tải xuống. html có Windows Installer. Vui lòng xác định vấn đề

Nhận xét Chia sẻ

đăng bình luận

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
1 và
layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
2 là các công cụ dòng lệnh mã nguồn mở (LGPLv3) để kết xuất HTML thành PDF và các định dạng hình ảnh khác nhau bằng công cụ kết xuất Qt WebKit. Chúng chạy hoàn toàn "không đầu" và không yêu cầu dịch vụ hiển thị hoặc hiển thị

Ngoài ra còn có một thư viện C, nếu bạn thích loại đó

Làm thế nào để tôi sử dụng nó?

  1. Tải xuống tệp nhị phân được biên dịch trước hoặc bản dựng từ nguồn
  2. Tạo tài liệu HTML mà bạn muốn chuyển thành PDF (hoặc hình ảnh)
  3. Chạy tài liệu HTML của bạn thông qua công cụ.
    Ví dụ: nếu tôi thực sự thích cách xử lý mà Google đã thực hiện với biểu trưng của họ ngày hôm nay và muốn lưu giữ nó mãi mãi dưới dạng PDF.

    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    3

Tùy chọn bổ sung

Thật tuyệt, tôi đã luôn muốn biến trang chủ của Google thành PDF, nhưng tôi cũng muốn có mục lục

Có rất nhiều tùy chọn dòng lệnh. Kiểm tra hướng dẫn sử dụng wkhtmltopdf được tạo tự động

Nhận Hardcore

Các công cụ dòng lệnh thật tuyệt vời, nhưng tôi muốn có một thư viện C

Không vấn đề gì. Kiểm tra tài liệu thư viện

Ví dụ thế giới thực?

Như chúng tôi đã nói, nếu bạn thực sự thích trang chủ của Google ngày hôm nay và muốn lưu nó dưới dạng PDF, bạn có thể sử dụng wkhtmltopdf cho việc đó

Nghiêm túc mà nói, bạn có thể sử dụng nó để tạo hóa đơn, tạo thiệp sinh nhật hoặc tất cả những thứ thú vị khác. Chỉ cần sử dụng trí tưởng tượng của bạn

Tất cả các bản tải xuống hiện được lưu trữ thông qua các bản phát hành GitHub, vì vậy bạn có thể duyệt tìm một bản tải xuống cụ thể hoặc sử dụng các liên kết bên dưới

Không sử dụng wkhtmltopdf với bất kỳ HTML không đáng tin cậy nào – hãy đảm bảo khử trùng mọi HTML/JS do người dùng cung cấp, nếu không, nó có thể dẫn đến việc tiếp quản hoàn toàn máy chủ mà nó đang chạy trên đó. Vui lòng đọc trạng thái dự án để biết chi tiết đẫm máu

Ổn định

Chuỗi ổn định hiện tại là 0. 12. 6, được phát hành vào ngày 11 tháng 6 năm 2020 – xem các thay đổi kể từ 0. 12. 5

Tất cả các gói trên được sản xuất tự động và được xây dựng trên bản phát hành bản vá phân phối/hệ điều hành mới nhất tại thời điểm phát hành

Lưu trữ

Xin lưu ý rằng các báo cáo lỗi sẽ không được chấp nhận đối với những điều sau đây, được coi là lỗi thời. Thay vào đó, bạn nên sử dụng bản phát hành ổn định mới nhất và báo cáo sự cố nếu có sự hồi quy từ bản phát hành trước đó

Nếu bạn cần các phiên bản cũ hơn

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
4, bạn có thể xem các bản tải xuống lỗi thời

Câu hỏi thường gặp

Tại sao bạn có bản dựng tĩnh với Qt được vá?

Câu hỏi hay. Một số tính năng yêu cầu bạn sử dụng Qt đã vá vì những tính năng này chưa được cập nhật – vui lòng đọc trạng thái dự án để được giải thích dài hơn

Hầu hết các bản phân phối Linux (khá dễ hiểu) sẽ thích dự án này ngược dòng các bản vá và chọn biên dịch mà không có các tính năng đó. Điều này dẫn đến hành vi hoàn toàn khác – bạn có một công cụ web mới hơn, nhưng hành vi có thể thay đổi từ phân phối này sang phân phối khác

Tại sao không có bản dựng Linux “chung” (đã được cung cấp trước đó)?

Mặc dù các bản dựng là tĩnh, điều rất quan trọng là phải hiểu ý nghĩa của nó trong ngữ cảnh của Qt – trên đó wkhtmltopdf được xây dựng. Bản dựng tĩnh có nghĩa là chỉ Qt được liên kết theo cách này – các gói hệ thống còn lại vẫn cần được cài đặt. Trong một khoảng thời gian, các khu vực khác biệt chính giữa các bản phân phối đã được tìm thấy bằng cách thử và sai

  • các phiên bản thư viện khác nhau. không phải mọi bản phân phối đều cung cấp các phiên bản giống nhau. Điều này đặc biệt đúng với trường hợp của
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    5 và
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    6, với rất nhiều bản phân phối lựa chọn giữa 1. 2, 1. 5 và 1. 6 cho phiên bản cũ và nhiều phiên bản của
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    6 và/hoặc nhánh rẽ của nó là
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    8. Mặc dù điều này có thể được giải quyết dễ dàng bằng cách liên kết tĩnh chúng (và thực tế đã được thực hiện như vậy đối với các bản phát hành trước) – nhưng nó đã bị hỏng khi nói đến điểm tiếp theo
  • các phiên bản OpenSSL khác nhau. do lúc đó OpenSSL có thành tích xấu (bây giờ đã tốt hơn), các bản phân phối bắt đầu nâng cấp mạnh mẽ phiên bản OpenSSL của họ và vô hiệu hóa các phần không sử dụng của thư viện. Điều này dẫn đến tình huống không có khả năng tương thích ngược hiệu quả và mọi thứ bắt đầu bị hỏng một cách ngẫu nhiên – xem #3001 để đọc rất dài về các vấn đề gặp phải. Đây là động lực trực tiếp để tạo ra một kho lưu trữ bao bì riêng
  • libc không tương thích. không phải mọi bản phân phối đều có cùng phiên bản glibc. Nếu bạn biên dịch bằng phiên bản mới hơn, nó sẽ không hoạt động trên bản phân phối sử dụng phiên bản cũ hơn. Điều này đã được khắc phục trước đó bằng cách sử dụng CentOS 6 (có phiên bản glibc đủ cũ). Nhưng do sự nổi lên của Docker, hình ảnh
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    9 đã trở nên rất phổ biến. Điều này hoàn toàn không sử dụng glibc, nhưng musl libc. Vì vậy, các tệp nhị phân chung không bao giờ thực sự hoạt động trên Alpine

Mặc dù Python cũng đã cố gắng thực hiện điều này bằng manylinux – nhưng không phải lúc nào nó cũng hoạt động tốt (e. g.

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
9 không được khuyến nghị với bánh xe nhị phân nếu bạn tìm kiếm trên google) và yêu cầu bạn liên kết tĩnh mọi thứ. Điều này có thể phù hợp với họ, nhưng wkhtmltopdf cũng phụ thuộc vào cấu hình thời gian chạy trên các phông chữ thực được cài đặt (tôi. e.
layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
1 và
layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
0). Không thể trừu tượng hóa mọi thứ và kiểm tra/sửa chữa mọi thứ cho mọi hệ điều hành/bản phân phối với nguồn tài nguyên hạn chế mà dự án này có – sẽ hợp lý hơn khi tạo ra các phiên bản dành riêng cho bản phân phối gần như được đảm bảo hoạt động, vì chúng sử dụng các phiên bản cụ thể mà

Tôi không thấy bản tải xuống thích hợp cho nền tảng của mình

Nếu bản phân phối bạn đang sử dụng được liệt kê

  • nhưng không phải là bản phát hành bản vá cụ thể – hãy thử nó, vì nó rất có thể hoạt động bất kể
  • bản phát hành chính không được liệt kê – chúng tôi chỉ hỗ trợ các phiên bản LTS, vì vậy hãy thử phiên bản LTS cũ hơn bản phát hành của bạn
  • không thể cài đặt gói – bạn luôn có thể giải nén nó (google cho
    layers:
      wkhtmltoxLayer:
        name: wkhtmltox
        description: wkhtmltox binaries for pdf/image generation
        package:
          artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip
    
    functions:
        PdfGenerator:
            handler: generatePdf.handler
            layers:
                - { Ref: WkhtmltoxLayerLambdaLayer }
            environment:
                FONTCONFIG_PATH: /opt/fonts
    
    1), nhưng bạn sẽ cần cài đặt các phần phụ thuộc

Đi đến kho lưu trữ bao bì và bắt đầu thảo luận nếu nền tảng của bạn không được liệt kê

Làm cách nào để sử dụng nó với các thiết lập FaaS?

Bạn sẽ cần giải nén gói dành riêng cho phân phối, đóng gói gói đó với các thư viện, cấu hình và/hoặc phông chữ cần thiết rồi tải lên. Xem câu hỏi StackOverflow này cho Google Cloud Function. PR được hoan nghênh mở rộng phần này, nếu bạn có thêm thông tin về điều này – đây không phải là thiết lập mà người bảo trì sử dụng 😄

Làm cách nào để sử dụng nó trong AWS Lambda?

Tất cả các tệp cần thiết cho lớp lambda được đóng gói trong một kho lưu trữ zip (Amazon Linux 2 / lambda zip). Bạn có thể kiểm tra cục bộ bằng cách giải nén kho lưu trữ vào thư mục

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
2 và chạy các lệnh tiếp theo

$ docker run --rm -it -v$PWD/layer:/opt amazonlinux:2
bash-4.2# LD_LIBRARY_PATH=/opt/lib FONTCONFIG_PATH=/opt/fonts /opt/bin/wkhtmltopdf https://google.com/ /opt/google.pdf

Sau đó, bạn có thể tìm thấy tệp pdf được tạo từ trang chủ google trong thư mục

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
2 của mình

Để sử dụng

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
4 trong hàm lambda của bạn, bạn có thể đặt nội dung của kho lưu trữ cùng với hàm lambda của mình hoặc tạo một lớp. Đừng quên cung cấp biến môi trường cho
layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
1 (_______16)

Trong trường hợp bạn sử dụng Serverless framework, bạn có thể thêm các dòng tiếp theo vào tệp

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts
7 của mình

layers:
  wkhtmltoxLayer:
    name: wkhtmltox
    description: wkhtmltox binaries for pdf/image generation
    package:
      artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip

functions:
    PdfGenerator:
        handler: generatePdf.handler
        layers:
            - { Ref: WkhtmltoxLayerLambdaLayer }
        environment:
            FONTCONFIG_PATH: /opt/fonts

Symantec báo cáo vi-rút layers: wkhtmltoxLayer: name: wkhtmltox description: wkhtmltox binaries for pdf/image generation package: artifact: wkhtmltox-x.xx.xxx.amazonlinux2_lambda.zip functions: PdfGenerator: handler: generatePdf.handler layers: - { Ref: WkhtmltoxLayerLambdaLayer } environment: FONTCONFIG_PATH: /opt/fonts 8 cho các bản dựng Windows

Đây là báo cáo sai vì Symantec chưa từng thấy tệp này trước đây – hãy xem phần làm rõ này để biết chi tiết

Wkhtmltopdf được cài đặt ở đâu?

HƯỚNG DẪN. Tải xuống phiên bản thích hợp của thư viện wkHTMLtoPDF từ http. //wkhtmltopdf. tổ chức. Nếu bạn đang sử dụng hệ điều hành Windows thì hãy cài đặt nó trong C. \ drive (ví dụ c. \wkhtmltopdf). Trên Linux/UNIX, bạn có thể cài đặt nó trong /usr/local/bin và đảm bảo wkhtmltopdf có quyền thực thi.

Việc sử dụng Wkhtmltopdf là gì?

Đó là gì? . Chúng chạy hoàn toàn "không đầu" và không yêu cầu dịch vụ hiển thị hoặc hiển thị. to render HTML into PDF and various image formats using the Qt WebKit rendering engine. These run entirely "headless" and do not require a display or display service.