pdf: lib: add a method to export wiki (#401)

Contributed by Jun NAITOH.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7740 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Toshi MARUYAMA 2011-11-06 10:48:28 +00:00
parent 0921042bc4
commit 1713432ab0
1 changed files with 34 additions and 0 deletions

View File

@ -410,6 +410,40 @@ module Redmine
pdf.Output
end
# Returns a PDF string of a single wiki page
def wiki_to_pdf(page, project)
pdf = ITCPDF.new(current_language)
pdf.SetTitle("#{project} - #{page.title}")
pdf.alias_nb_pages
pdf.footer_date = format_date(Date.today)
pdf.AddPage
pdf.SetFontStyle('B',11)
pdf.RDMMultiCell(190,5,
"#{project} - #{page.title} - # #{page.content.version}")
pdf.Ln
# Set resize image scale
pdf.SetImageScale(1.6)
pdf.SetFontStyle('',9)
pdf.RDMwriteHTMLCell(190,5,0,0,
Redmine::WikiFormatting.to_html(
Setting.text_formatting, page.content.text.to_s), "TLRB")
if page.attachments.any?
pdf.Ln
pdf.SetFontStyle('B',9)
pdf.RDMCell(190,5, l(:label_attachment_plural), "B")
pdf.Ln
for attachment in page.attachments
pdf.SetFontStyle('',8)
pdf.RDMCell(80,5, attachment.filename)
pdf.RDMCell(20,5, number_to_human_size(attachment.filesize),0,0,"R")
pdf.RDMCell(25,5, format_date(attachment.created_on),0,0,"R")
pdf.RDMCell(65,5, attachment.author.name,0,0,"R")
pdf.Ln
end
end
pdf.Output
end
class RDMPdfEncoding
include Redmine::I18n
def self.rdm_pdf_iconv(ic, txt)