title: Write multiple lines of text in a flow with reportlab
body: <p>This works to write a text in a PDF file with <code>reportlab</code>:</p>
  
  <pre><code>from reportlab.pdfgen import canvas
  from reportlab.lib.units import cm
  
  c = canvas.Canvas("test.pdf")
  c.drawString(1 * cm, 29.7 * cm - 1 * cm, "Hello")
  c.save()
  </code></pre>
  
  <p>but when dealing with multiple lines of text, it's unpleasant to have to handle the <code>x, y</code> coordinate of each new line:</p>
  
  <pre><code>text = "Hello\nThis is a multiline text\nHere we have to handle line height manually\nAnd check that every line uses not more than pagewidth"
  c = canvas.Canvas("test.pdf")
  
  for i, line in enumerate(text.splitlines()):
      c.drawString(1 * cm, 29.7 * cm - 1 * cm - i * cm, line)
  
  c.save()
  </code></pre>
  
  <p><strong>Is there a more clever way to do this with <code>reportlab</code>?</strong></p>