私は Django Web サイトを実行しており、Pisa と cStringIO を使用して、ビュー コードを含むテンプレートをインライン PDF ファイルとしてレンダリングするレポートを作成しています。それはすべて順調で、うまく機能しています。私が HTML で見たものrender_to_response()
は、PDF 形式でうまく表示されます。これで、一連の HTML<ol></ol>
リストができました。<ol type="1">
外側のリストを数値 ( ) に、内側のリストをアルファベット ( )にしたいと思います<ol type="A">
。タグの inlinetype
プロパティと を使用してみましたが、どちらも OL の文字で PDF をレンダリングしません。代わりに、それらは常に数値です。<ol>
list-style-type: upper-alpha
これが私のrender_to_pdf
方法です:
def render_to_pdf(template_src, context_dict, extra_html=None):
template = get_template(template_src)
context = Context(context_dict)
html = template.render(context)
result = StringIO.StringIO()
if extra_html:
html += extra_html
pdf = pisa.pisaDocument(
StringIO.StringIO(html.encode("UTF-8")),
dest=result,
encoding='UTF-8',
link_callback=fetch_resources
)
if not pdf.err:
return HttpResponse(result.getvalue(), mimetype='application/pdf')
return HttpResponse('We had some errors<pre>%s</pre>' % escape(html))
これが私のテンプレートです:
<ol type="1">
<li>1</li>
<li>2</li>
<li>
3
<ol type="A">
<li>A</li>
<li>B</li>
<li>C</li>
</ol>
</li>
<li>4</li>
</ol>
それrender_to_response
は示しています:
1. 1
2. 2
3. 3
A. A
B. B
C. C
4. 4
それrender_to_pdf
は示しています:
1. 1
2. 2
3. 3
1. A
2. B
3. C
4. 4
順序付きリストに文字を表示させる方法はありますか?