Cài đặt wkhtmltopdf dòng lệnh Windows

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

Tải xuống phiên bản mới nhất của gói từ trang phát hành dự án Wkhtmltopdf và cài đặt nó. Thay thế X. Y. Trình giữ chỗ Z và PLATFORM với các chuỗi nền tảng và phiên bản chính xác từ tên tệp phát hành

GHI CHÚ. Phiên bản mới nhất của Wkhtmltopdf không tương thích với Odoo trong một số bản phân phối Linux. Vui lòng kiểm tra phiên bản được đề xuất cho bản phân phối Linux của bạn trong kho lưu trữ Odoo GitHub

      $ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/X.Y.Z/wkhtmltox_X.Y.Z.PLATFORM.deb
      $ sudo apt install -f ./wkhtmltox_X.Y.Z.PLATFORM.deb
  • Khởi động lại tất cả các máy chủ đang chạy

      $ sudo /opt/bitnami/ctlscript.sh restart
    
  • Các tùy chọn PDF sẽ có sẵn trong ứng dụng của bạn

    Xử lý sự cố

    Nếu bạn gặp sự cố với độ phân giải màn hình trên nền tảng Linux, chúng có thể liên quan đến gói xfonts-75dpi hoặc xfonts-100dpi. Gỡ cài đặt chúng bằng cách thực hiện

    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â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 20. 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

    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 0.12.0, 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 libpnglibjpeg, với rất nhiều bản phân phối lựa chọn giữa 1. 2, 1. 5 và 1. Sê-ri 6 cho phiên bản cũ và nhiều phiên bản của libjpeg và/hoặc nhánh của nó libjpeg-turbo. 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 alpine đã 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. alpine 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. fontconfig

    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 bạn hoặc tạo một lớp. Đừng quên cung cấp biến môi trường cho fontconfig (
    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)

    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 EXE 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ị. Ngoài ra còn có một thư viện C, nếu bạn thích loại đó. open source (LGPLv3) command line tools 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. There is also a C library, if you're into that kind of thing.

    Gói Wkhtmltopdf là gì?

    wkhtmltopdf là công cụ dòng lệnh nguồn mở (LGPLv3) để kết xuất HTML thành PDF bằng công cụ kết xuất Qt WebKit .

    Wkhtmltopdf Linux là gì?

    Wkhtmltopdf là tiện ích shell dòng lệnh mã nguồn mở đơn giản và hiệu quả cao cho phép người dùng chuyển đổi bất kỳ HTML (Trang web) nhất định nào thành tài liệu PDF hoặc hình ảnh (jpg, png . .