working on local machine
commit
75b0100828
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,8 @@
|
||||
from pdf2image import convert_from_path
|
||||
|
||||
dpi = 300
|
||||
pdf_file = 'target.pdf'
|
||||
pages = convert_from_path(pdf_file ,dpi )
|
||||
|
||||
page = pages[0]
|
||||
page.save('page1.png'.format(0), 'PNG')
|
@ -0,0 +1,21 @@
|
||||
from PIL import Image
|
||||
import os
|
||||
|
||||
filepath = 'page1.png'
|
||||
basewidth, height = Image.open(filepath).size
|
||||
basenumber, ext1 = os.path.splitext(str(basewidth*0.6))
|
||||
base = int(basenumber)
|
||||
|
||||
#rescaling the logo
|
||||
finallogo = Image.open("rotated.png")
|
||||
wpercent = (base/float(finallogo.size[0]))
|
||||
hsize = int((float(finallogo.size[1])*float(wpercent)))
|
||||
finallogo = finallogo.resize((base,hsize), Image.ANTIALIAS)
|
||||
|
||||
finallogo.save('rotatedwatermark.png')
|
||||
|
||||
background = Image.open("page1.png")
|
||||
foreground = Image.open('rotatedwatermark.png')
|
||||
|
||||
background.paste(foreground, (40, 70), foreground.convert('RGBA'))
|
||||
background.save("page1.png")
|
@ -0,0 +1,34 @@
|
||||
from pdfrw import PdfReader
|
||||
from PIL import Image
|
||||
import os
|
||||
from time import sleep
|
||||
from pdf2image import convert_from_path
|
||||
import cv2
|
||||
import numpy as np
|
||||
from PyPDF2 import PdfFileReader, PdfFileWriter
|
||||
|
||||
pdf = PdfReader('target.pdf')
|
||||
measures = pdf.pages[0].MediaBox
|
||||
basenumberwidth, ext1 = os.path.splitext(measures[2])
|
||||
basenumberheight, ext2 = os.path.splitext(measures[3])
|
||||
basewidth = int(basenumberwidth)
|
||||
baseheight = int(basenumberheight)
|
||||
print(basewidth)
|
||||
print(baseheight)
|
||||
|
||||
fileName = ("out.pdf")
|
||||
|
||||
pdfFile = PdfFileReader(open(fileName, 'rb'))
|
||||
# Getting only first page!
|
||||
newPage = pdfFile.getPage(0)
|
||||
|
||||
newHeight = baseheight
|
||||
newWidth = basewidth
|
||||
|
||||
newPage.scaleTo(newWidth, newHeight)
|
||||
|
||||
writer = PdfFileWriter()
|
||||
writer.addPage(newPage)
|
||||
|
||||
with open('cover.pdf', 'wb') as f:
|
||||
writer.write(f)
|
@ -0,0 +1,20 @@
|
||||
from PIL import Image
|
||||
import PIL.ImageOps
|
||||
import random
|
||||
from random import randrange
|
||||
|
||||
#Random number
|
||||
rotation = randrange(20)
|
||||
|
||||
#Random positive or negative
|
||||
choice = random.choice(("+", "-"))
|
||||
|
||||
finalnumber = (str(choice) + str(rotation))
|
||||
rotationinput = int(finalnumber)
|
||||
|
||||
#open both the watermark
|
||||
logo = Image.open('watermark.png')
|
||||
|
||||
#rotate the watermark
|
||||
rotatedlogo = logo.rotate(rotationinput, expand=True)
|
||||
rotatedlogo.save('rotated.png')
|
Binary file not shown.
@ -0,0 +1,13 @@
|
||||
cd `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/* | head -n 1`
|
||||
cp `ls -td -- *.pdf | head -n 1` /Users/PSC/Desktop/REPUBLISH/overlay
|
||||
cp `ls -td -- *.png | head -n 1` /Users/PSC/Desktop/REPUBLISH/overlay
|
||||
cd /Users/PSC/Desktop/REPUBLISH/overlay
|
||||
mv `ls -td -- *.pdf | head -n 1` target.pdf
|
||||
python3 burstcover.py
|
||||
python3 rotatelogo.py
|
||||
python3 overlaylogo.py
|
||||
tesseract page1.png out pdf
|
||||
python3 resizecover.py
|
||||
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=name.pdf cover.pdf target.pdf
|
||||
var1=`ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/*/*.pdf | head -n 1`
|
||||
mv name.pdf $var1
|
@ -0,0 +1,6 @@
|
||||
cd /Users/PSC/Desktop/REPUBLISH/watermark/
|
||||
rm watermark.pdf
|
||||
cd /Users/PSC/Desktop/REPUBLISH/overlay/
|
||||
rm watermark.png rotated.png rotatedwatermark.png target.pdf cover.pdf out.pdf
|
||||
now=$(date +%d-%b-%H_%M_%S)
|
||||
mv page1.png /Users/PSC/Desktop/REPUBLISH/covers/"$now".png
|
@ -0,0 +1,5 @@
|
||||
cd /Users/PSC/Desktop/REPUBLISH/booksinput
|
||||
for name in *; do mv "$name" "${name// /_}"; done
|
||||
cd `ls -td -- /Users/PSC/Desktop/REPUBLISH/booksinput/* | head -n 1`
|
||||
for name in *; do mv "$name" "${name// /_}"; done
|
||||
mv `ls -td -- /Users/PSC/Desktop/REPUBLISH/booksinput/* | head -n 1` /Users/PSC/Desktop/REPUBLISH/inprogress
|
@ -0,0 +1,4 @@
|
||||
cd `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/* | head -n 1`
|
||||
rm watermark.png
|
||||
mv `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/*/*.pdf | head -n 1` /Users/PSC/Desktop/REPUBLISH/libgen
|
||||
rm -r `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/* | head -n 1`
|
@ -0,0 +1,8 @@
|
||||
for i in {1..20}
|
||||
do
|
||||
./movebookfolder.sh
|
||||
./watermarkformtxt.sh
|
||||
./appendwatermarktopdf.sh
|
||||
./deletetraces.sh
|
||||
./republish.sh
|
||||
done
|
@ -0,0 +1,8 @@
|
||||
cd `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/* | head -n 1`
|
||||
mv `ls -td -- *.txt | head -n 1` watermark.txt
|
||||
mv `ls -td -- *.txt | head -n 1` /Users/PSC/Desktop/REPUBLISH/watermark
|
||||
cd /Users/PSC/Desktop/REPUBLISH/watermark
|
||||
python3 watermark.py
|
||||
rm watermark.txt
|
||||
convert -density 300 -trim watermark.pdf -quality 100 watermark.png
|
||||
mv /Users/PSC/Desktop/REPUBLISH/watermark/watermark.png `ls -td -- /Users/PSC/Desktop/REPUBLISH/inprogress/* | head -n 1`
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
After Width: | Height: | Size: 7.5 KiB |
@ -0,0 +1,246 @@
|
||||
from reportlab.pdfgen import canvas
|
||||
from reportlab.pdfbase.ttfonts import TTFont
|
||||
from reportlab.pdfbase import pdfmetrics
|
||||
from reportlab.lib import colors
|
||||
from reportlab.lib.colors import pink, green, brown, white, black
|
||||
import textwrap
|
||||
from textwrap import wrap
|
||||
from reportlab.lib.units import inch
|
||||
from reportlab.lib.pagesizes import letter
|
||||
from reportlab.lib.pagesizes import A4
|
||||
from reportlab.lib.units import inch
|
||||
from reportlab.lib.units import cm
|
||||
from reportlab.lib.colors import HexColor
|
||||
import datetime
|
||||
from reportlab.lib.utils import ImageReader
|
||||
import ast
|
||||
|
||||
with open('watermark.txt', 'r') as f:
|
||||
watermark = ast.literal_eval(f.read())
|
||||
|
||||
#The Ruler
|
||||
def DrawTheRuler(pdf):
|
||||
pdf.drawString(30,960, '|')
|
||||
pdf.drawString(60,960, '|')
|
||||
pdf.drawString(90,960, '|')
|
||||
pdf.drawString(120,960, '|')
|
||||
pdf.drawString(150,960, '|')
|
||||
pdf.drawString(180,960, '|')
|
||||
pdf.drawString(210,960, '|')
|
||||
pdf.drawString(240,960, '|')
|
||||
pdf.drawString(270,960, '|')
|
||||
pdf.drawString(300,960, '|')
|
||||
pdf.drawString(330,960, '|')
|
||||
pdf.drawString(360,960, '|')
|
||||
pdf.drawString(390,960, '|')
|
||||
pdf.drawString(420,960, '|')
|
||||
pdf.drawString(450,960, '|')
|
||||
pdf.drawString(480,960, '|')
|
||||
pdf.drawString(510,960, '|')
|
||||
pdf.drawString(540,960, '|')
|
||||
pdf.drawString(570,960, '|')
|
||||
pdf.drawString(600,960, '|')
|
||||
pdf.drawString(630,960, '|')
|
||||
|
||||
pdf.drawString(10,940, '—')
|
||||
pdf.drawString(10,910, '—')
|
||||
pdf.drawString(10,880, '—')
|
||||
pdf.drawString(10,850, '—')
|
||||
pdf.drawString(10,820, '—')
|
||||
pdf.drawString(10,790, '—')
|
||||
pdf.drawString(10,760, '—')
|
||||
pdf.drawString(10,730, '—')
|
||||
pdf.drawString(10,700, '—')
|
||||
pdf.drawString(10,670, '—')
|
||||
pdf.drawString(10,640, '—')
|
||||
pdf.drawString(10,610, '—')
|
||||
pdf.drawString(10,580, '—')
|
||||
pdf.drawString(10,550, '—')
|
||||
pdf.drawString(10,520, '—')
|
||||
pdf.drawString(10,490, '—')
|
||||
pdf.drawString(10,460, '—')
|
||||
pdf.drawString(10,430, '—')
|
||||
pdf.drawString(10,400, '—')
|
||||
pdf.drawString(10,370, '—')
|
||||
pdf.drawString(10,340, '—')
|
||||
pdf.drawString(10,310, '—')
|
||||
pdf.drawString(10,280, '—')
|
||||
pdf.drawString(10,250, '—')
|
||||
pdf.drawString(10,220, '—')
|
||||
pdf.drawString(10,190, '—')
|
||||
pdf.drawString(10,160, '—')
|
||||
pdf.drawString(10,130, '—')
|
||||
pdf.drawString(10,100, '—')
|
||||
pdf.drawString(10,70, '—')
|
||||
pdf.drawString(10,40, '—')
|
||||
|
||||
# Unchanged
|
||||
fileName = "watermark.pdf"
|
||||
documentTitle = "TACTICAL WATERMARKS"
|
||||
title = "TACTICAL WATERMARKS"
|
||||
subTitle = "REPUBLISHED THROUGH"
|
||||
|
||||
#Create the file
|
||||
pdf = canvas.Canvas(fileName)
|
||||
|
||||
#Set the background
|
||||
pdf.setFillColor(HexColor(0xceff00))
|
||||
pdf.rect(0,0,660, 1000,fill=1)
|
||||
|
||||
#Change color back to black
|
||||
pdf.setFillColorRGB(0,0,0)
|
||||
|
||||
##Draw the Ruler
|
||||
DrawTheRuler(pdf)
|
||||
|
||||
# Set the title
|
||||
pdf.setTitle(documentTitle)
|
||||
#Set the Height and Width
|
||||
pdf.setPageSize((660, 1000))
|
||||
|
||||
#DRAW LOGO
|
||||
logojump = ImageReader('logojump.png')
|
||||
pdf.drawImage(logojump, 560, 10, width=(300/3),height=(300/3), mask='auto')
|
||||
|
||||
logostar = ImageReader('logostar.png')
|
||||
pdf.drawImage(logostar, 100, 400, width=(300),height=(300), mask='auto')
|
||||
|
||||
#TITLE
|
||||
|
||||
# Register a new font
|
||||
pdfmetrics.registerFont(
|
||||
TTFont('header', 'LyonJeanTrue.ttf')
|
||||
)
|
||||
|
||||
# Draw
|
||||
pdf.setFont('header', 45)
|
||||
pdf.drawString(40, 30, title)
|
||||
|
||||
#SUBTITLE
|
||||
|
||||
# Register a new font for the subtitle
|
||||
pdfmetrics.registerFont(
|
||||
TTFont('subtitle', 'Favorit_Medium.ttf')
|
||||
)
|
||||
|
||||
# Draw
|
||||
pdf.setFont('subtitle', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(40, 80, subTitle)
|
||||
|
||||
# DATE
|
||||
date = datetime.datetime.now()
|
||||
|
||||
# Draw
|
||||
pdf.setFont('subtitle', 10)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 980, str(date))
|
||||
|
||||
# HEADER
|
||||
header = "UPLOADERS SIGNATURE"
|
||||
|
||||
pdf.setFont('subtitle', 35)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 920, header)
|
||||
|
||||
# BODY
|
||||
|
||||
# Register a new font for the body
|
||||
pdfmetrics.registerFont(
|
||||
TTFont('body', 'Favorit_Regular.ttf')
|
||||
)
|
||||
|
||||
pdfmetrics.registerFont(
|
||||
TTFont('bodyitalic', 'Favorit_Regular_Italic.ttf')
|
||||
)
|
||||
|
||||
# ID
|
||||
# Q
|
||||
id = "Name—Nickname—Pseudonim of the uploader"
|
||||
|
||||
pdf.setFont('bodyitalic', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(60, 890, id)
|
||||
|
||||
#A
|
||||
id_answer = watermark[0]
|
||||
|
||||
pdf.setFont('body', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 870, id_answer)
|
||||
|
||||
# DID YOU DIGITISE?
|
||||
# Q
|
||||
digitise = "Did you digitise the file?"
|
||||
|
||||
pdf.setFont('bodyitalic', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(60, 835, digitise)
|
||||
|
||||
#A
|
||||
digitise_answer = watermark[1]
|
||||
|
||||
pdf.setFont('body', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 815, digitise_answer)
|
||||
|
||||
# HOW LONG?
|
||||
# Q
|
||||
howlong = "How long did it take to scan?"
|
||||
|
||||
pdf.setFont('bodyitalic', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(60, 780, howlong)
|
||||
|
||||
#A
|
||||
howlong_answer = watermark[2]
|
||||
|
||||
pdf.setFont('body', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 760, howlong_answer)
|
||||
|
||||
# WHERE DID YOU FIND IT?
|
||||
# Q
|
||||
where = "Where was the source found?"
|
||||
|
||||
pdf.setFont('bodyitalic', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(60, 725, where)
|
||||
|
||||
#A
|
||||
where_answer = watermark[3]
|
||||
|
||||
pdf.setFont('body', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(30, 705, where_answer)
|
||||
|
||||
#ANECDOTE
|
||||
|
||||
# Q
|
||||
sharing = "Why are you sharing this file?"
|
||||
anecdote = "You can tell an anecdote"
|
||||
personal = "You can leave a personal message!"
|
||||
|
||||
pdf.setFont('bodyitalic', 14)
|
||||
pdf.setFillColorRGB(0, 0, 0)
|
||||
pdf.drawString(60, 670, sharing)
|
||||
pdf.drawString(60, 655, anecdote)
|
||||
pdf.drawString(60, 640, personal)
|
||||
|
||||
#A
|
||||
strs = watermark[4]
|
||||
|
||||
#Wrap the lines
|
||||
textLines = wrap(strs, 75)
|
||||
|
||||
text = pdf.beginText(40, 615)
|
||||
text.setFont("body", 14)
|
||||
text.setFillColor(colors.black)
|
||||
for line in textLines:
|
||||
text.textLine(line)
|
||||
|
||||
# Draw
|
||||
pdf.drawText(text)
|
||||
|
||||
# Save the pdf
|
||||
pdf.save()
|
Loading…
Reference in New Issue