名称错误:未定义名称“page_num”

2024-09-30 06:12:51 发布

您现在位置:Python中文网/ 问答频道 /正文

#Pdf文件的传递路径将打开Pdf阅读器窗口

def text_extract(path):
page_num = 0  # variable assignment
root = Tk()   tkinter wiindow
pdf = PdfFileReader(path)  
def page_update(page_num):           #function to update text gui on the basis of page number
    page_obj = pdf.getPage(page_num)
    txt = page_obj.extractText()
    text_wig.delete("1.0", "end")
    text_wig.insert(END,txt)
def page_prev(e=1):        #to see previous page
    global page_num
    if page_num <= 0:
        messagebox.showinfo('Alert','Its a first page')
    else:
        page_num = page_num -1
        page_update(page_num)
def page_next(e=1):        # for next page
    global page_num
    if page_num >= pdf.numPages:
        messagebox.showinfo('Alert','Its a last page')
    else:
        page_num = page_num + 1
        page_update(page_num)


Button(root, text='Prev',command = page_prev).grid(row=0, column=1)
Button(root, text='Next',command = page_next).grid(row=0, column=2)
page_obj = pdf.getPage(page_num)
txt = page_obj.extractText()
text_wig = Text(root)
text_wig.grid(row=1, column=1, rowspan=10,columnspan=10)
text_wig.delete("1.0", "end")
text_wig.insert(END,txt)
root.mainloop()

#这显示pdf的唯一第一页“下一页”或“上一页”按钮不起作用


Tags: texttxtobjpdfdefpageupdatecolumn
1条回答
网友
1楼 · 发布于 2024-09-30 06:12:51

如果函数内部有一个值,而您需要在函数外部使用或编辑它,那么您必须在定义或编辑它之前写入global page_num

相关问题 更多 >

    热门问题