from pdfrw import PdfReader from PIL import Image import os from time import sleep from pdf2image import convert_from_path import cv2 import numpy as np from PyPDF2 import PdfFileReader, PdfFileWriter pdf = PdfReader('target.pdf') measures = pdf.pages[0].MediaBox basenumberwidth, ext1 = os.path.splitext(measures[2]) basenumberheight, ext2 = os.path.splitext(measures[3]) basewidth = int(basenumberwidth) baseheight = int(basenumberheight) print(basewidth) print(baseheight) fileName = ("out.pdf") pdfFile = PdfFileReader(open(fileName, 'rb')) # Getting only first page! newPage = pdfFile.getPage(0) newHeight = baseheight newWidth = basewidth newPage.scaleTo(newWidth, newHeight) writer = PdfFileWriter() writer.addPage(newPage) with open('cover.pdf', 'wb') as f: writer.write(f)