wkhtmltopdf - преобразование HTML в PDF - PullRequest
0 голосов
/ 17 июня 2020

Я хотел бы использовать wkhtmltopdf для распечатки содержимого моего файла html. Я выполнил шаг, чтобы сделать это на https://wkhtmltopdf.org/, но мне просто не удалось преобразовать его в pdf. Я здесь что-то не так делаю?


Я запускаю эту команду.

C:\Program Files\wkhtmltopdf\bin>wkhtmltopdf.exe> C:\Users\MyPc\Desktop\test.html C:\Users\MyPc\Desktop\new.pdf


А вот содержимое моего html файла, которое я скопировал из https://wkhtmltopdf.org/usage/wkhtmltopdf.txt

<!DOCTYPE html>
<html><head><script>
function subst() {
  var vars = {};
  var query_strings_from_url = document.location.search.substring(1).split('&');
  for (var query_string in query_strings_from_url) {
      if (query_strings_from_url.hasOwnProperty(query_string)) {
          var temp_var = query_strings_from_url[query_string].split('=', 2);
          vars[temp_var[0]] = decodeURI(temp_var[1]);
      }
  }
  var css_selector_classes = ['page', 'frompage', 'topage', 'webpage', 'section', 'subsection', 'date', 'isodate', 'time', 'title', 'doctitle', 'sitepage', 'sitepages'];
  for (var css_class in css_selector_classes) {
      if (css_selector_classes.hasOwnProperty(css_class)) {
          var element = document.getElementsByClassName(css_selector_classes[css_class]);
          for (var j = 0; j < element.length; ++j) {
              element[j].textContent = vars[css_selector_classes[css_class]];
          }
      }
  }
}
</script></head><body style="border:0; margin: 0;" onload="subst()">
<table style="border-bottom: 1px solid black; width: 100%">
<tr>
  <td class="section"></td>
  <td style="text-align:right">
    Page <span class="page"></span> of <span class="topage"></span>
  </td>
</tr>
</table>
</body></html>

И это ошибка, которую я получаю, когда запускаю приведенную выше команду, она также очищает мой html файл до пустого.

You need to specify at least one input file, and exactly one output file
Use - for stdin or stdout

Name:
  wkhtmltopdf 0.12.6 (with patched qt)

Synopsis:
  wkhtmltopdf [GLOBAL OPTION]... [OBJECT]... <output file>

Document objects:
  wkhtmltopdf is able to put several objects into the output file, an object is
  either a single webpage, a cover webpage or a table of contents.  The objects
  are put into the output document in the order they are specified on the
  command line, options can be specified on a per object basis or in the global
  options area. Options from the Global Options section can only be placed in
  the global options area.

  A page objects puts the content of a single webpage into the output document.

  (page)? <input url/file name> [PAGE OPTION]...
  Options for the page object can be placed in the global options and the page
  options areas. The applicable options can be found in the Page Options and
  Headers And Footer Options sections.

  A cover objects puts the content of a single webpage into the output document,
  the page does not appear in the table of contents, and does not have headers
  and footers.

  cover <input url/file name> [PAGE OPTION]...
  All options that can be specified for a page object can also be specified for
  a cover.

  A table of contents object inserts a table of contents into the output
  document.

  toc [TOC OPTION]...
  All options that can be specified for a page object can also be specified for
  a toc, further more the options from the TOC Options section can also be
  applied. The table of contents is generated via XSLT which means that it can
  be styled to look however you want it to look. To get an idea of how to do
  this you can dump the default xslt document by supplying the
  --dump-default-toc-xsl, and the outline it works on by supplying
  --dump-outline, see the Outline Options section.

Description:
  Converts one or more HTML pages into a PDF document, using wkhtmltopdf patched
  qt.

Global Options:
      --collate                       Collate when printing multiple copies                                      (default)
      --no-collate                    Do not collate when printing multiple                                      copies
      --copies <number>               Number of copies to print into the pdf                                      file (default 1)
  -H, --extended-help                 Display more extensive help, detailing                                      less common command switches
  -g, --grayscale                     PDF will be generated in grayscale
  -h, --help                          Display help
      --license                       Output license information and exit
      --log-level <level>             Set log level to: none, error, warn or                                      info (default info)
  -l, --lowquality                    Generates lower quality pdf/ps. Useful to                                      shrink the result document space
  -O, --orientation <orientation>     Set orientation to Landscape or Portrait                                      (default Portrait)
  -s, --page-size <Size>              Set paper size to: A4, Letter, etc.                                      (default A4)
  -q, --quiet                         Be less verbose, maintained for backwards                                      compatibility; Same as using --log-level                                      none
      --read-args-from-stdin          Read command line arguments from stdin
      --title <text>                  The title of the generated pdf file (The                                      title of the first document is used if not                                      specified)
  -V, --version                       Output version information and exit
Page Options:
      --print-media-type              Use print media-type instead of screen
      --no-print-media-type           Do not use print media-type instead of                                      screen (default)
Contact:
  If you experience bugs or want to request new features please visit
  <https://wkhtmltopdf.org/support.html>
...