GitBucket
Pull requests
Issues
Snippets
Sign in
takane
/
addpage.py
Fork
0
Created at Thu Oct 27 22:04:42 JST 2022
Download ZIP
HTTP
Embed
Embed this snippet in your website.
HTTP
Clone with Git using the repository's web address.
Code
Revision
Forks
takane
revised this
on 1 Nov 2022
No changes.
ab85f49
takane
revised this
on 28 Oct 2022
851c8bf
addpage.py
# addpage.py # # PDFファイルにページ番号を追加 # # 準備: # pip install reportlab pdfrw # # 使い方: # python addpage.py PDFファイル名 # # 出力ファイルとして PDFファイル名_wpage.pdfが生成される from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader, PageMerge from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_wpage.pdf" # outputファイル名: inputファイル名_wpage.pdf orientation = '' # 横にするときは landscapeを指定する。 大きさはA4で固定 expage = {} # ページ番号を非表示にしたいページをカンマで区切って指定 例: {3,5} reader = PdfReader(input_file) # pages = [pagexobj(p) for p in reader.pages] pages = [pagexobj(PageMerge().add(p).render()) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" # ページ番号の書式 canvas.saveState() canvas.setFillColorRGB(0, 0, 0) # ページ番号の色の設定 canvas.setFont('Times-Roman', 14) # ページ番号のフォントの種類, サイズの設定 if orientation == 'landscape': canvas.setPageSize(landscape(A4)) if page_num not in expage: canvas.drawString(420, 20, footer_text) # ページ番号の表示位置 横の場合 else: if page_num not in expage: canvas.drawString(290, 20, footer_text) # ページ番号の表示位置 縦の場合 canvas.restoreState() canvas.showPage() canvas.save()
# addpage.py # # PDFファイルにページ番号を追加 # # 準備: # pip install reportlab, pdfrw # # 使い方: # python addpage.py PDFファイル名 # # 出力ファイルとして PDFファイル名_wpage.pdfが生成される from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader, PageMerge from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_wpage.pdf" # outputファイル名: inputファイル名_wpage.pdf orientation = '' # 横にするときは landscapeを指定する。 大きさはA4で固定 expage = {} # ページ番号を非表示にしたいページをカンマで区切って指定 例: {3,5} reader = PdfReader(input_file) # pages = [pagexobj(p) for p in reader.pages] pages = [pagexobj(PageMerge().add(p).render()) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" # ページ番号の書式 canvas.saveState() canvas.setFillColorRGB(0, 0, 0) # ページ番号の色の設定 canvas.setFont('Times-Roman', 14) # ページ番号のフォントの種類, サイズの設定 if orientation == 'landscape': canvas.setPageSize(landscape(A4)) if page_num not in expage: canvas.drawString(420, 20, footer_text) # ページ番号の表示位置 横の場合 else: if page_num not in expage: canvas.drawString(290, 20, footer_text) # ページ番号の表示位置 縦の場合 canvas.restoreState() canvas.showPage() canvas.save()
takane
revised this
on 28 Oct 2022
7d3cd79
addpage.py
# addpage.py # # PDFファイルにページ番号を追加 # # 準備: # pip install reportlab, pdfrw # # 使い方: # python addpage.py PDFファイル名 # # 出力ファイルとして PDFファイル名_wpage.pdfが生成される from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader, PageMerge from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_wpage.pdf" # outputファイル名: inputファイル名_wpage.pdf orientation = '' # 横にするときは landscapeを指定する。 大きさはA4で固定 expage = {} # ページ番号を非表示にしたいページをカンマで区切って指定 例: {3,5} reader = PdfReader(input_file) # pages = [pagexobj(p) for p in reader.pages] pages = [pagexobj(PageMerge().add(p).render()) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" # ページ番号の書式 canvas.saveState() canvas.setFillColorRGB(0, 0, 0) # ページ番号の色の設定 canvas.setFont('Times-Roman', 14) # ページ番号のフォントの種類, サイズの設定 if orientation == 'landscape': canvas.setPageSize(landscape(A4)) if page_num not in expage: canvas.drawString(420, 20, footer_text) # ページ番号の表示位置 横の場合 else: if page_num not in expage: canvas.drawString(290, 20, footer_text) # ページ番号の表示位置 縦の場合 canvas.restoreState() canvas.showPage() canvas.save()
# addpage.py # # PDFファイルにページ番号を追加 # # 準備: # pip install reportlab, pdfrw # # 使い方: # python addpage.py PDFファイル名 # # 出力ファイルとして PDFファイル名_wpage.pdfが生成される from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader, PageMerge from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_wpage.pdf" # outputファイル名: inputファイル名_wpage.pdf orientation = 'portrait' # 縦: portrait, 横: landscape 大きさ A4で固定 expage = {} # ページ番号を非表示にしたいページをカンマで区切って指定 例: {3,5} reader = PdfReader(input_file) # pages = [pagexobj(p) for p in reader.pages] pages = [pagexobj(PageMerge().add(p).render()) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" # ページ番号の書式 canvas.saveState() canvas.setFillColorRGB(0, 0, 0) # ページ番号の色の設定 canvas.setFont('Times-Roman', 14) # ページ番号のフォントの種類, サイズの設定 if orientation == 'landscape': canvas.setPageSize(landscape(A4)) if page_num not in expage: canvas.drawString(420, 20, footer_text) # ページ番号の表示位置 横の場合 else: if page_num not in expage: canvas.drawString(290, 20, footer_text) # ページ番号の表示位置 縦の場合 canvas.restoreState() canvas.showPage() canvas.save()
takane
revised this
on 28 Oct 2022
a24ce67
addpage.py
# addpage.py # # PDFファイルにページ番号を追加 # # 準備: # pip install reportlab, pdfrw # # 使い方: # python addpage.py PDFファイル名 # # 出力ファイルとして PDFファイル名_wpage.pdfが生成される from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader, PageMerge from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_wpage.pdf" # outputファイル名: inputファイル名_wpage.pdf orientation = 'portrait' # 縦: portrait, 横: landscape 大きさ A4で固定 expage = {} # ページ番号を非表示にしたいページをカンマで区切って指定 例: {3,5} reader = PdfReader(input_file) # pages = [pagexobj(p) for p in reader.pages] pages = [pagexobj(PageMerge().add(p).render()) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" # ページ番号の書式 canvas.saveState() canvas.setFillColorRGB(0, 0, 0) # ページ番号の色の設定 canvas.setFont('Times-Roman', 14) # ページ番号のフォントの種類, サイズの設定 if orientation == 'landscape': canvas.setPageSize(landscape(A4)) if page_num not in expage: canvas.drawString(420, 20, footer_text) # ページ番号の表示位置 横の場合 else: if page_num not in expage: canvas.drawString(290, 20, footer_text) # ページ番号の表示位置 縦の場合 canvas.restoreState() canvas.showPage() canvas.save()
addpagenum.py
from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_pgn.pdf" reader = PdfReader(input_file) pages = [pagexobj(p) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" canvas.saveState() canvas.setStrokeColorRGB(0, 0, 0) canvas.setFont('Times-Roman', 14) canvas.drawString(290, 10, footer_text) canvas.restoreState() canvas.showPage() canvas.save()
takane
revised this
on 27 Oct 2022
c924c63
addpagenum.py
from reportlab.pdfgen.canvas import Canvas from pdfrw import PdfReader from pdfrw.toreportlab import makerl from reportlab.lib.pagesizes import A4, landscape, portrait from pdfrw.buildxobj import pagexobj import sys import os if len(sys.argv) != 2 or ".pdf" not in sys.argv[1].lower(): print(f"Usage: python {sys.argv[0]} <pdf filename>") sys.exit() input_file = sys.argv[1] output_file = os.path.splitext(sys.argv[1])[0] + "_pgn.pdf" reader = PdfReader(input_file) pages = [pagexobj(p) for p in reader.pages] canvas = Canvas(output_file) for page_num, page in enumerate(pages, start=1): canvas.doForm(makerl(canvas, page)) footer_text = f"-{page_num}-" canvas.saveState() canvas.setStrokeColorRGB(0, 0, 0) canvas.setFont('Times-Roman', 14) canvas.drawString(290, 10, footer_text) canvas.restoreState() canvas.showPage() canvas.save()