iTop导出中文PDF

更新,iTop 2.7 以上版本已经支持通过配置文件解决此问题。

'export_pdf_font' => [ // @since 2.7.0 PR #49 / N°1947
	'type' => 'string',
	'description' => 'Font used when generating a PDF file',
	'default' => 'DejaVuSans', // DejaVuSans is a UTF-8 Unicode font, embedded in the TCPPDF lib we're using
	// Standard PDF fonts like helvetica or times newroman are NOT Unicode
	// A new DroidSansFallback can be used to improve CJK support (se PR #49)
	'value' => '',
	'source_of_value' => '',
	'show_in_conf_sample' => false,
],

iTop版本2.2.1,默认状态下导出PDF中文字符会显示为方框。解决方法为

  1. 为tcpdf增加支持UTF-8 Unicode的字体(例如droidsansfallback)。也可以使用lib/tcpdf/tools目录下的tcpdf_addfont.php脚本来生成字体
  2. 标题正常显示中文:sed -i 's/dejavusans/droidsansfallback/g' application/pdfpage.class.inc.php
  3. impact图正常显示中文:sed -i 's/dejavusans/droidsansfallback/g' core/displayablegraph.class.inc.php
  4. 列表中文正常显示: sed -i 's/dejavusans/droidsansfallback/g' pages/ajax.render.php
  5. 批量导出PDF格式CI: sed -i 's/dejavusans/droidsansfallback/g' core/pdfbulkexport.class.inc.php

参考资料

1. https://sourceforge.net/p/itop/discussion/922361/thread/86dac901/

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注