test_svg_pdf.py 558 B

12345678910111213141516171819
  1. import tempfile
  2. import svgwrite
  3. import cairosvg
  4. from PyPDF2 import PdfFileWriter, PdfFileReader
  5. import io
  6. draft_pdf_fd, draft_pdf_path = tempfile.mkstemp(suffix='.pdf')
  7. print(draft_pdf_path)
  8. pdf_writer = PdfFileWriter()
  9. unit = svgwrite.Unit("mm")
  10. svg_page = svgwrite.Drawing(size=(unit(297), unit(210)))
  11. _text = svg_page.text('123123', (unit(10), unit(20)))
  12. svg_page.add(_text)
  13. pdf_writer.addPage(PdfFileReader(io.BytesIO(cairosvg.svg2pdf(bytestring=svg_page.tostring()))).getPage(0))
  14. with open(draft_pdf_path, 'ab') as out:
  15. pdf_writer.write(out)