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.
25 lines
768 B
25 lines
768 B
import subprocess |
|
import re |
|
import sys |
|
|
|
pdf_filename = sys.argv[1] |
|
css_filename = sys.argv[2] |
|
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)
|
|
|