Project

General

Profile

Actions

Feature #35683

closed

PDF rendering improvements when exporting an issue or a list of issues

Added by Jens Krämer about 3 years ago. Updated over 2 years ago.

Status:
Closed
Priority:
Normal
Category:
PDF export
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Resolution:

Description

Two PDF generation improvements:

1. Currently, when rendering an issue PDF, macros are only expanded in the description, but not when rendering custom fields with fulltext formatting enabled. The patch changes the behaviour so that formatted full-width custom fields are rendered in the same way the description is rendered, fully interpreting macros. The behaviour for rendering normal-width custom fields is unchanged, probably it is better to leave it as is due to space constraints.
2. Thumbnail macro output was not rendered properly (in the issue description and elsewhere) because the thumbnail image file could not be retrieved - the second patch extends get_image_filename to check for thumbnail URLs and retrieve the proper file path in that case.

Both patches were initially developed for Planio .


Files


Related issues

Related to Redmine - Defect #34709: No Images in PDF export of issue list (with option show description)Closed

Actions
Actions #1

Updated by Mischa The Evil about 3 years ago

  • Target version set to Candidate for next minor release

Nice improvements.

Actions #2

Updated by Go MAEDA about 3 years ago

  • Target version changed from Candidate for next minor release to 5.0.0

Setting the target version to 5.0.0.

Actions #3

Updated by Jens Krämer about 3 years ago

  • File 0001-interpret-thumbnail-macro-in-description-notes-and-f.patch added

One more patch (based on the first two) which introduces the full rendering of last notes, description and formatted full width custom fields for the tabular issues list PDF export.

Actions #4

Updated by Mischa The Evil about 3 years ago

  • Status changed from New to Needs feedback
  • Assignee set to Jens Krämer

Jens Krämer wrote:

One more patch (based on the first two) [...]

Jens, I have only read the patch, but it seems to contain an error/typo. Shouldn't:

diff --git a/lib/redmine/export/pdf/issues_pdf_helper.rb b/lib/redmine/export/pdf/issues_pdf_helper.rb
index 98c7347ab..f55c80f5c 100644
--- a/lib/redmine/export/pdf/issues_pdf_helper.rb
+++ b/lib/redmine/export/pdf/issues_pdf_helper.rb
@@ -232,14 +225,7 @@ module Redmine
               if journal.notes?
                 pdf.ln unless journal.details.empty?
                 pdf.SetFontStyle('', 8)
-                text =
-                  textilizable(
-                    journal, :notes,
-                    :only_path => false,
-                    :edit_section_links => false,
-                    :headings => false,
-                    :inline_attachments => false
-                  )
+                text = pdf_format_text(issue, :description)
                 pdf.RDMwriteFormattedCell(190, 5, '', '', text, issue.attachments, "")
               end
               pdf.ln

actually be:

diff --git a/lib/redmine/export/pdf/issues_pdf_helper.rb b/lib/redmine/export/pdf/issues_pdf_helper.rb
index 98c7347ab..f55c80f5c 100644
--- a/lib/redmine/export/pdf/issues_pdf_helper.rb
+++ b/lib/redmine/export/pdf/issues_pdf_helper.rb
@@ -232,14 +225,7 @@ module Redmine
               if journal.notes?
                 pdf.ln unless journal.details.empty?
                 pdf.SetFontStyle('', 8)
-                text =
-                  textilizable(
-                    journal, :notes,
-                    :only_path => false,
-                    :edit_section_links => false,
-                    :headings => false,
-                    :inline_attachments => false
-                  )
+                text = pdf_format_text(journal, :notes)
                 pdf.RDMwriteFormattedCell(190, 5, '', '', text, issue.attachments, "")
               end
               pdf.ln

If so, then I think pdf_format_text would be better defined as something along the lines of:

diff --git a/lib/redmine/export/pdf/issues_pdf_helper.rb b/lib/redmine/export/pdf/issues_pdf_helper.rb
index 98c7347ab..f55c80f5c 100644
--- a/lib/redmine/export/pdf/issues_pdf_helper.rb
+++ b/lib/redmine/export/pdf/issues_pdf_helper.rb
@@ -375,6 +368,15 @@ module Redmine
           pdf.output
         end

+        def pdf_format_text(object, attribute)
+          textilizable(object, attribute,
+                       :only_path => false,
+                       :edit_section_links => false,
+                       :headings => false,
+                       :inline_attachments => false
+                      )
+        end
+
         def is_cjk?
           case current_language.to_s.downcase
           when 'ja', 'zh-tw', 'zh', 'ko'
Actions #5

Updated by Jens Krämer about 3 years ago

  • File 0001-interpret-thumbnail-macro-in-description-notes-and-f.patch added

you're completely right, I attached an updated patch.

Actions #7

Updated by Mischa The Evil about 3 years ago

  • File deleted (0001-interpret-thumbnail-macro-in-description-notes-and-f.patch)
Actions #8

Updated by Mischa The Evil about 3 years ago

  • File deleted (0001-interpret-thumbnail-macro-in-description-notes-and-f.patch)
Actions #9

Updated by Mischa The Evil about 3 years ago

  • Status changed from Needs feedback to New
  • Assignee deleted (Jens Krämer)

Jens, thanks for the update. I've removed the faulty files to keep it clear.

@committers: the correct order of the patchset is:
  1. 0001-render-formatted-full-width-custom-fields-in-the-sam.patch
  2. 0001-retrieve-filenames-of-thumbnails-when-rendering-a-PD.patch
  3. 0001-interpret-thumbnail-macro-in-description-notes-and-f.patch
Actions #10

Updated by Marius BĂLTEANU about 3 years ago

  • Status changed from New to Resolved
  • Assignee set to Marius BĂLTEANU

All three patches committed, thanks for the nice improvements.

Actions #11

Updated by Marius BĂLTEANU about 3 years ago

  • Subject changed from PDF rendering improvements to PDF rendering improvements when exporting an issue or a list of issues
Actions #12

Updated by Marius BĂLTEANU about 3 years ago

  • Status changed from Resolved to Closed
Actions #13

Updated by Go MAEDA almost 3 years ago

  • Related to Defect #34709: No Images in PDF export of issue list (with option show description) added
Actions #14

Updated by Go MAEDA over 2 years ago

  • Tracker changed from Patch to Feature
Actions

Also available in: Atom PDF