Guide de montage du vhéliotech
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

24 lines
791 B

import subprocess
import re
pdf_filename = 'build/weasyprint/index.pdf'
css_filename = 'source/css/print-theme.css'
additional_pages = 2
# count pages in index.pdf
pdfinfo = subprocess.run(['pdfinfo', pdf_filename], stdout=subprocess.PIPE)
pages_match = re.search('\\nPages:\s+([0-9]+)\\n', pdfinfo.stdout.decode())
num_pages = int(pages_match.group(1))
print('index.pdf: ' + str(num_pages) + ' pages')
num_pages = num_pages + additional_pages # account for table of content that will be added later
# update the CSS file with the correct number of pages
with open(css_filename) as css_file:
css = css_file.read()
css = re.sub('content: counter\(page\) "/[0-9]+";', 'content: counter(page) "/'+str(num_pages)+'";', css)
with open(css_filename, 'w') as css_file:
css_file.write(css)