はじめてのQiita投稿です。
備忘録的にPython初心者の私が作成したものなどを公開していきたいと思います。
なるべく1回の投稿を簡潔にまとめたいので以下の3回に分けて投稿します。
その1 TkinterでUI作成
その2 PyPDF2でPDF操作
その3 pyinstallerでexe化+アイコンを付ける
背景
・「いきなりPDF」や「PDF Mergy」を使わずにPDFファイルを結合したい
・PythonでUI作成したい
Tkinterでウィンドウ作成
import tkinter
import PyPDF2
import os
root = tkinter.Tk()
root.title('PDFMerger')
root.geometry("800x700")
ver = '1.0.0' #バージョン
root.mainloop()
テキストボックス、ボタンを配置
以下5つのアイテムから構成する
1. テキストボックス「パス」:結合するファイルのフォルダパス
2. テキストボックス「ファイル名」:結合後の保存ファイル名
3. ボタン「Open」:結合するファイルを表示
4. ボタン「Merge」:結合してファイル保存
5. テキストボックス(ラベルなし):色々な表示
以下のコードをroot.mainloop()の上に書く
(commandはまだ設定していないのでコメントアウトしています)
# Openボタン
button = tkinter.Button(root, text="Open", width=8, height=2, font=(u'Meiryo', 8), bg='#add8e6', fg='#000000')
#button = tkinter.Button(root, text="Open", command=clicked, width=8, height=2, font=(u'Meiryo', 8), bg='#add8e6', fg='#000000')
button.place(x=80, y=120)
# Mergeボタン
button = tkinter.Button(root, text="Merge", width=8, height=2, font=(u'Meiryo', 8), bg='#4169e1', fg='#ffffff')
#button = tkinter.Button(root, text="Merge", command=merge, width=8, height=2, font=(u'Meiryo', 8), bg='#4169e1', fg='#ffffff')
button.place(x=200, y=120)
# ラベル1 パス
lbl = tkinter.Label(text='パス', font=(u'Meiryo', 8))
lbl.place(x=25, y=30)
# テキストボックス1 パス
txt1 = tkinter.Entry(width=80)
txt1.insert(tkinter.END,"パスを入力してください")
txt1.place(x=80, y=30)
# ラベル2 保存ファイル名
lbl = tkinter.Label(text='ファイル名', font=(u'Meiryo', 8))
lbl.place(x=5, y=75)
# テキストボックス2 保存ファイル名
txt2 = tkinter.Entry(width=80)
txt2.insert(tkinter.END,"merged")
txt2.place(x=80, y=75)
# テキストボックス3 ファイル
txt3 = tkinter.Text(width=80, font=(u'Meiryo', 8))
txt3.place(x=80, y=200)
txt3.insert('1.0','version ' + ver + '\n\n1.結合するPDFファイルのパスを入力\n\n2.Openボタンでファイル確認\n\n3.Mergerボタンでデスクトップに ファイル名.pdf を作成\n')
参考