texlive-base/texlive-base-pdfbook2-py3.patch

103 lines
3.7 KiB
Diff

diff -up ./scripts/pdfbook2/pdfbook2.py3 ./scripts/pdfbook2/pdfbook2
--- ./scripts/pdfbook2/pdfbook2.py3 2020-01-10 08:49:13.071743210 -0500
+++ ./scripts/pdfbook2/pdfbook2 2020-01-10 08:50:18.938615714 -0500
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/python3
""" pdfbook2 - transform pdf files to booklets
This program is free software: you can redistribute it and/or modify
@@ -29,15 +29,15 @@ import shutil
def booklify( name, opts ):
#------------------------------------------------------ Check if file exists
- print "\nProcessing", name
+ print("\nProcessing", name)
if not os.path.isfile( name ):
- print "SKIP: file not found."
+ print("SKIP: file not found.")
return
- print "Getting bounds...",
+ print("Getting bounds...", end=' ')
sys.stdout.flush()
#---------------------------------------------------------- useful constants
- bboxName = "%%HiResBoundingBox:"
+ bboxName = b"%%HiResBoundingBox:"
tmpFile = ".crop-tmp.pdf"
#------------------------------------------------- find min/max bounding box
@@ -50,8 +50,8 @@ def booklify( name, opts ):
p.wait()
out, err = p.communicate()
if len( err ) != 0:
- print err
- print "\n\nABORT: Problem getting bounds"
+ print(err)
+ print("\n\nABORT: Problem getting bounds")
sys.exit( 1 )
lines = out.splitlines()
bboxes = [s[len( bboxName ) + 1:] for s in lines if s.startswith( bboxName )]
@@ -69,11 +69,11 @@ def booklify( name, opts ):
minLOdd -= maxWidth - widthOdd
maxREven += maxWidth - widthEven
- print "done"
+ print("done")
sys.stdout.flush()
#--------------------------------------------- crop file to area of interest
- print "cropping...",
+ print("cropping...", end=' ')
sys.stdout.flush()
p = subprocess.Popen( ["pdfcrop",
"--bbox-odd", "{L} {T} {R} {B}".format( L = minLOdd - opts.innerMargin / 2,
@@ -92,16 +92,16 @@ def booklify( name, opts ):
p.wait()
out, err = p.communicate()
if len( err ) != 0:
- print err
- print "\n\nABORT: Problem with cropping"
+ print(err)
+ print("\n\nABORT: Problem with cropping")
sys.exit( 1 )
- print "done"
+ print("done")
sys.stdout.flush()
else:
shutil.copy( name, tmpFile )
#-------------------------------------------------------- create the booklet
- print "create booklet...",
+ print("create booklet...", end=' ')
sys.stdout.flush()
pdfJamCallList = [ "pdfjam",
"--booklet", "true",
@@ -124,7 +124,7 @@ def booklify( name, opts ):
p.wait()
out, err = p.communicate()
if len( out ) == 0:
- print "\n\nABORT: The everyshi.sty latex package is needed for short-edge."
+ print("\n\nABORT: The everyshi.sty latex package is needed for short-edge.")
sys.exit( 1 )
else:
pdfJamCallList.append( "--preamble" )
@@ -139,7 +139,7 @@ def booklify( name, opts ):
#-------------------------------------------- move file and remove temp file
os.rename( tmpFile[:-4] + "-book.pdf", name[:-4] + "-book.pdf" )
os.remove( tmpFile )
- print "done"
+ print("done")
sys.stdout.flush()
@@ -228,7 +228,7 @@ if __name__ == "__main__":
if len( args ) == 0:
parser.print_version()
parser.print_help()
- print ""
+ print("")
sys.exit( 2 )
#------------------------------------------- run for each provided file name