import fitz files = ('sample-shifted_medeabox.pdf', 'sample-shifted_medeabox2.pdf') def print_boxes(pdfname): doc = fitz.open(pdfname) page = doc[0] print('filename:', pdfname) print('mediabox:', page.mediabox) print('cropbox:', page.cropbox) print('rect:', page.rect) print() def set_cropbox(pdfname): doc = fitz.open(pdfname) page = doc[0] boxA = (36, 45, 607.5, 765.0) boxB = (0, 0, 571.5, 720.0) boxC = (36, 0, 607.5, 720.0) for box in (boxA, boxB, boxC): page.set_cropbox(box) print('setting cropbox', box) print('cropbox:', page.cropbox) print() def set_mediabox(pdfname): # RuntimeError: mediabox must start at (0,0) doc = fitz.open(pdfname) page = doc[0] box = 40, 50, 600, 700 page.set_mediabox(box) if __name__ == '__main__': print('(1)') for fname in files: print_boxes(fname) print('(2)') set_cropbox(files[0]) # print('(3)') # set_mediabox(files[0])