You are here

README.txt in Views PDF 7.3

Same filename and directory in other branches
  1. 8 README.txt
  2. 6 README.txt
  3. 7 README.txt
  4. 7.2 README.txt
With the Views PDF module you can output a view as a PDF document. Each field of
the view can be placed on the PDF page directly in the administration interface.
Therefore a new display called "PDF" is added.

There are already some PDF solutions such as Print. But these solutions use the
HTML output and converts this to PDF. The disadvantages of such an integration
are:
    * No control over page flow (e.g. page break).
    * Little or no control over page header and footer.
    * You need HTML skills to change the layout.
    * The rendering is slow and need a lot of memory, because it need to render
      the HTML.
    * Complex tables make troubles.
    * Vector graphics can not be implemented, therefore the printing of the doc-
      ument can be problematic.
    * You are limited by HTML's capabilities.



Installation instructions:
--------------------------
   1. Download the module or checkout the module.
   2. Upload the module to your Drupal instance.
   3. Download the required libraries. Download TCPDF and FPDI. Copy the files
      to the lib directory in the module directory. The path must be so:
      "sites/all/libraries/tcpdf/tcpdf.php" respectively "sites/all/libraries/fpdi/fpdi.php".
      If you are using the Libraries API then put them into the libraries folder.
   4. Check under reports if you setup everything correct.
   5. Setup a view with a PDF display.
   6. Use it.

Basic Usage
-----------
   1. Setup a new view or use an existing view. How to do this see in the
      documentation of the Views module.
   2. In the view add the display "PDF Page".
   3. Select the new added display.
   4. Select the Style:
      a. PDF Table - place the fields in table with a table header, one record per row.
      b. PDF Unformatted - place the fields in no structured way on the PDF.
      c. PDF Unformatted Grid - place the fields in cells in a grid, one record per cell.
   5. In the settings of the style you can setup per field settings. Such as the
      position, the size of the field, the font and so on. Important: Switch to
      the PDF Page display in the default display this options does not appear.
   6. Under PDF Page Setting you can setup the size of the page.
   7. Under PDF Font Settings you can setup the default fonts for the PDF.
   8. Under PDF Template Settings you can setup a background PDF (see Templates below).
   9. To add a page break, you can add a PDF page-break field. When this field
      is rendered a new page is added. Don't give the field a label, and
      ensure it's the last field.
  10. You can find also a page number field. You can use it to print the current
      page number. Important for positioning the field in the header or footer,
      you need to set the relative position in the field settings to
      "In header / footer".
  11. There are additional settings for the header and footer styling under
      PDF Header & Footer. These allow the default font and alignment parameters
      to be defined separately for the header & footer. The Header Margin and
      Footer Spacing values define the vertical placement of the header and footer.
      For the header it's the distance from the edge of the page, for the footer
      it's the distance from the start of the bottom margin.
  12. You can embed the page number in a header or footer by using the marker !page.
      This is mainly for use in table mode, as you can't place fields in the header
      or footer so the page number field can't be used.
      Note that other variable substitutions can be achieved using the token-filter
      module, with a text format in which it's enabled.

Grid output
-----------
   Grid mode is ideal for printing things like label sheets. In grid settings you specify
   the number of rows and columns, and any spacing between. Cell size is calculated by
   fitting the specified layout within the page margins. You can also choose between
   row-first or column-first ordering.

   Field positioning is similar to unformatted mode, except that it is relative to
   the cell, not the page. Nothing is output beyond the cell boundary, anything that
   would overflow is not output at all.

   There is no option for header or footer fields as it doesn't really make sense.
   HTML is always stripped, which is necessary for cell boundary control.

Tabular output
--------------
   In PDF Table mode there are additional layout settings, for the column data and for
   the column headings. In each case you can set specific text and alignment parameters.
   You can set defaults that apply to all columns, and also override with specifics
   for individual columns. Any value not given a default or specific value will fall
   back to the PDF document settings.

   Cell padding and borders can be specified for both headers and rows.
   Padding applies above and below the text in a cell. A border surrounds any padding
   and can be specified either using "1" for a border on all sides, or a combination
   of the letters L, R, T, B to selectively add a border to any of the four sides
   ("LRTB" is the same as "1").

   You can also set a width for each column. Columns without a set width are divided
   evenly into the remaining space. The table will be sized to fit within the page
   margins, unless you set a width for every column, and the total is less than the
   width between margins.

   Column headings are optional, if specified you can define a header spacing to create
   a gap between the header and the first line.

   Row Height is optional, the default row height will be big enough to accommodate
   one line of the largest column font. An entered Row Height smaller than this will be
   overridden. If a larger Row Height is entered then all rows will be made this height.
   This can be used to allow column data to wrap onto multiple lines - as many lines
   as will fit within the height will be displayed. Data that won't fit is truncated.

   Each page will be filled with as many rows as will fit before reaching the bottom
   margin. You can, however, use the PDF page-break field. The field will not appear
   in the list of columns, but will still force a break after the set number of rows.

   Note that all rows will be the same height, even if the extra space is not filled -
   variable height rows are not supported.

   Row data is never rendered as HTML, as it's impossible to control row height if
   HTML is used. This is important to ensure correct breaking across multiple pages.

Templates
---------
   Templates are external PDF files that can be used as a background for the output,
   as well as be printed before and/or after the generated output.
   To make a PDF available as a template you must first upload it. In the main Views
   list page, there is an additional tab "PDF Templates". Use this to manage your
   template files - you can upload, view, and delete templates.

   Once you have uploaded one or more templates, use PDF Template Settings in the
   view's configuration to select templates in any combination for leading, background,
   or trailing position. For leading and trailing templates you can select whether to
   print page headers and/or footers on the template.

File

README.txt
View source
  1. With the Views PDF module you can output a view as a PDF document. Each field of
  2. the view can be placed on the PDF page directly in the administration interface.
  3. Therefore a new display called "PDF" is added.
  4. There are already some PDF solutions such as Print. But these solutions use the
  5. HTML output and converts this to PDF. The disadvantages of such an integration
  6. are:
  7. * No control over page flow (e.g. page break).
  8. * Little or no control over page header and footer.
  9. * You need HTML skills to change the layout.
  10. * The rendering is slow and need a lot of memory, because it need to render
  11. the HTML.
  12. * Complex tables make troubles.
  13. * Vector graphics can not be implemented, therefore the printing of the doc-
  14. ument can be problematic.
  15. * You are limited by HTML's capabilities.
  16. Installation instructions:
  17. --------------------------
  18. 1. Download the module or checkout the module.
  19. 2. Upload the module to your Drupal instance.
  20. 3. Download the required libraries. Download TCPDF and FPDI. Copy the files
  21. to the lib directory in the module directory. The path must be so:
  22. "sites/all/libraries/tcpdf/tcpdf.php" respectively "sites/all/libraries/fpdi/fpdi.php".
  23. If you are using the Libraries API then put them into the libraries folder.
  24. 4. Check under reports if you setup everything correct.
  25. 5. Setup a view with a PDF display.
  26. 6. Use it.
  27. Basic Usage
  28. -----------
  29. 1. Setup a new view or use an existing view. How to do this see in the
  30. documentation of the Views module.
  31. 2. In the view add the display "PDF Page".
  32. 3. Select the new added display.
  33. 4. Select the Style:
  34. a. PDF Table - place the fields in table with a table header, one record per row.
  35. b. PDF Unformatted - place the fields in no structured way on the PDF.
  36. c. PDF Unformatted Grid - place the fields in cells in a grid, one record per cell.
  37. 5. In the settings of the style you can setup per field settings. Such as the
  38. position, the size of the field, the font and so on. Important: Switch to
  39. the PDF Page display in the default display this options does not appear.
  40. 6. Under PDF Page Setting you can setup the size of the page.
  41. 7. Under PDF Font Settings you can setup the default fonts for the PDF.
  42. 8. Under PDF Template Settings you can setup a background PDF (see Templates below).
  43. 9. To add a page break, you can add a PDF page-break field. When this field
  44. is rendered a new page is added. Don't give the field a label, and
  45. ensure it's the last field.
  46. 10. You can find also a page number field. You can use it to print the current
  47. page number. Important for positioning the field in the header or footer,
  48. you need to set the relative position in the field settings to
  49. "In header / footer".
  50. 11. There are additional settings for the header and footer styling under
  51. PDF Header & Footer. These allow the default font and alignment parameters
  52. to be defined separately for the header & footer. The Header Margin and
  53. Footer Spacing values define the vertical placement of the header and footer.
  54. For the header it's the distance from the edge of the page, for the footer
  55. it's the distance from the start of the bottom margin.
  56. 12. You can embed the page number in a header or footer by using the marker !page.
  57. This is mainly for use in table mode, as you can't place fields in the header
  58. or footer so the page number field can't be used.
  59. Note that other variable substitutions can be achieved using the token-filter
  60. module, with a text format in which it's enabled.
  61. Grid output
  62. -----------
  63. Grid mode is ideal for printing things like label sheets. In grid settings you specify
  64. the number of rows and columns, and any spacing between. Cell size is calculated by
  65. fitting the specified layout within the page margins. You can also choose between
  66. row-first or column-first ordering.
  67. Field positioning is similar to unformatted mode, except that it is relative to
  68. the cell, not the page. Nothing is output beyond the cell boundary, anything that
  69. would overflow is not output at all.
  70. There is no option for header or footer fields as it doesn't really make sense.
  71. HTML is always stripped, which is necessary for cell boundary control.
  72. Tabular output
  73. --------------
  74. In PDF Table mode there are additional layout settings, for the column data and for
  75. the column headings. In each case you can set specific text and alignment parameters.
  76. You can set defaults that apply to all columns, and also override with specifics
  77. for individual columns. Any value not given a default or specific value will fall
  78. back to the PDF document settings.
  79. Cell padding and borders can be specified for both headers and rows.
  80. Padding applies above and below the text in a cell. A border surrounds any padding
  81. and can be specified either using "1" for a border on all sides, or a combination
  82. of the letters L, R, T, B to selectively add a border to any of the four sides
  83. ("LRTB" is the same as "1").
  84. You can also set a width for each column. Columns without a set width are divided
  85. evenly into the remaining space. The table will be sized to fit within the page
  86. margins, unless you set a width for every column, and the total is less than the
  87. width between margins.
  88. Column headings are optional, if specified you can define a header spacing to create
  89. a gap between the header and the first line.
  90. Row Height is optional, the default row height will be big enough to accommodate
  91. one line of the largest column font. An entered Row Height smaller than this will be
  92. overridden. If a larger Row Height is entered then all rows will be made this height.
  93. This can be used to allow column data to wrap onto multiple lines - as many lines
  94. as will fit within the height will be displayed. Data that won't fit is truncated.
  95. Each page will be filled with as many rows as will fit before reaching the bottom
  96. margin. You can, however, use the PDF page-break field. The field will not appear
  97. in the list of columns, but will still force a break after the set number of rows.
  98. Note that all rows will be the same height, even if the extra space is not filled -
  99. variable height rows are not supported.
  100. Row data is never rendered as HTML, as it's impossible to control row height if
  101. HTML is used. This is important to ensure correct breaking across multiple pages.
  102. Templates
  103. ---------
  104. Templates are external PDF files that can be used as a background for the output,
  105. as well as be printed before and/or after the generated output.
  106. To make a PDF available as a template you must first upload it. In the main Views
  107. list page, there is an additional tab "PDF Templates". Use this to manage your
  108. template files - you can upload, view, and delete templates.
  109. Once you have uploaded one or more templates, use PDF Template Settings in the
  110. view's configuration to select templates in any combination for leading, background,
  111. or trailing position. For leading and trailing templates you can select whether to
  112. print page headers and/or footers on the template.