Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonTkinter用のPDFビューア


Pythonは、さまざまな機能、プロパティ、ユースケースに対応するライブラリと拡張機能の大規模なセットでよく知られています。 PDFファイルを処理するために、Pythonは PyPDF2を提供します 複数のページの処理、抽出、マージ、PDFファイルの暗号化などが可能なツールキット。これは、PDFなどのファイルストリームを管理および操作するための非常に便利なパッケージです。 PyPDF2を使用して、ローカルディレクトリからPDFファイルを選択して開くようにユーザーに求めることでPDFファイルを読み取るTkinterアプリケーションを作成します。

アプリケーションを作成するには、以下の手順に従います-

  • 次のように入力して要件をインストールします

    pip install PyPDF2

    コマンドシェルで。インストールしたら、 import Pypdf2を使用してライブラリをノートブックにインポートします ノートブックで。
  • ファイルダイアログをインポートする ローカルディレクトリからファイルを選択するためのダイアログボックスを作成します。

  • テキストウィジェットを作成し、開く、クリア、終了などのメニューを追加します。

  • メニューごとに関数を定義します。

  • ファイルを開く関数を定義します。この関数では、まず、PdfFileReader(file)を使用してファイルを読み取ります。次に、ファイルからページを抽出します。

  • テキストボックスにコンテンツを挿入します。

  • 終了メニューの機能を定義します。

#Import the required Libraries
import PyPDF2
from tkinter import *
from tkinter import filedialog
#Create an instance of tkinter frame
win= Tk()
#Set the Geometry
win.geometry("750x450")
#Create a Text Box
text= Text(win,width= 80,height=30)
text.pack(pady=20)
#Define a function to clear the text
def clear_text():
   text.delete(1.0, END)
#Define a function to open the pdf file
def open_pdf():
   file= filedialog.askopenfilename(title="Select a PDF", filetype=(("PDF    Files","*.pdf"),("All Files","*.*")))
   if file:
      #Open the PDF File
      pdf_file= PyPDF2.PdfFileReader(file)
      #Select a Page to read
      page= pdf_file.getPage(0)
      #Get the content of the Page
      content=page.extractText()
      #Add the content to TextBox
      text.insert(1.0,content)

#Define function to Quit the window
def quit_app():
   win.destroy()
#Create a Menu
my_menu= Menu(win)
win.config(menu=my_menu)
#Add dropdown to the Menus
file_menu=Menu(my_menu,tearoff=False)
my_menu.add_cascade(label="File",menu= file_menu)
file_menu.add_command(label="Open",command=open_pdf)
file_menu.add_command(label="Clear",command=clear_text)
file_menu.add_command(label="Quit",command=quit_app)
win.mainloop()
>

出力

上記のコードを実行すると、本格的なtkinterアプリケーションが表示されます。ファイルを開き、ファイルをクリアし、終了してアプリケーションを終了する機能があります。

PythonTkinter用のPDFビューア

アプリケーションの左上隅にある[ファイル]メニューをクリックし、テキストボックスで新しいPDFファイルを開きます。

PythonTkinter用のPDFビューア


  1. Python Tkinterのaskopenfile()関数

    Pythonプログラムで使用されるファイルへのパスをハードコーディングする代わりに、ユーザーがGUIを使用してosフォルダー構造を参照し、ユーザーがファイルを選択できるようにすることができます。これは、キャンバスを定義し、ファイルを参照するためのボタンを配置するtkinterモジュールを使用して実現されます。 以下のプログラムでは、ファイルオープナー関数を定義します。 Pythonはテキストファイルの内容を読み取り、非常に読みやすい方法で印刷できるため、この関数を使用してテキストファイルを開くだけです。 .txtファイルや.csvファイルなどのテキストベースのファイルを読み取ることができます

  2. Pythonのファイルオブジェクト?

    Pythonでは、ファイルの読み取りまたは書き込みを試みるたびに、ライブラリがネイティブに処理されるため、ライブラリをインポートする必要はありません。 最初に行うことは、組み込みのopen関数を使用してファイルオブジェクトを取得することです。 open関数はファイルを開き、ファイルオブジェクトを返します。ファイルオブジェクトには、情報を取得したり、開いたファイルを操作したりするために使用できるメソッドと属性が含まれています。 ファイルとは何ですか? ファイルに対して操作を行う前に、まずファイルとは何かを理解しましょう。ファイルは、関連情報を保存するためのディスク上の名前付きの場所です。フ