#需要用到pyPdf库
from pyPdf import PdfFileWriter,PdfFileReader
from django.http import HttpResponse
try:
from cStringIO import StringIO
except:
from io import BytesIo as StringIo
def split_pdf(request):
pdf_file = u'C:/Users/admin/Desktop/xxxx.pdf'
page = 1 #返回的页码
try:
currentPage = int(page)
except:pass
pdfFile = file(pdf_file, 'rb') #打开pdf
pdf_input = PdfFileReader(pdfFile) #创建对象
#获取当前PDF的总页数
pageCount = pdf_input.getNumPages()
if currentPage:
if currentPage < 0 or currentPage >pageCount:
currentPage = 1
#获取指定PDF指定页面,以流的形式返回给客户端
out = StringIO() # 获取管道
p = PdfFileWriter() #创建写入对象
p.addPage(pdf_input.getPage(currentPage)) #将当前页对象添加到创建的pdf最后面
p.write(out) #将pdf写入流
out.seek(0) #移动文件指针到第0个位置
response = HttpResponse(content_type='application/pdf')
response.write(out.read())
return response