Report Lab can't handle hebrew (unicode)

non-ascii-characters, python, reportlab

Solution

This code (see below) works! All you need to do is place `ArialHB.ttf` (or any other font that supports Hebrew characters) into `site-packages/reportlab/fonts`...

The desired output will be at the bottom of the pdf page.

# -*- coding: utf-8 -*-

from reportlab.pdfgen import canvas 
from reportlab.pdfbase import pdfmetrics 
from reportlab.pdfbase.ttfonts import TTFont 

pdfmetrics.registerFont(TTFont('Hebrew', 'ArialHB.ttf'))

def hello(c):
    c.setFont("Hebrew", 14)
    c.drawString(10,10, u"מה שלומך".encode('utf-8'))

c = canvas.Canvas("hello.pdf") 
hello(c) 
c.showPage()
c.save()

Problem

I am trying to generate the pdf from following python programming but generated output doesn't display hebrew letters correctly ``` # -*- coding: utf-8 -*- from reportlab.pdfgen import canvas def hello(c): c.drawString(100,100, "מה שלומך") c = canvas.Canvas("hello.pdf") hello(c) c.showPage() c.save() ```

Original source