Final Report
Final Report
An Internship Report
On
“IMAGE TO PDF CONVERTER”
BACHELOR OF ENGINEERING
IN
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Submitted By
NANDAN.S : 4GM22CS405
THYAGARAJU K C : 4GM22CS411
2022-2023
Srishyla Educational Trust (R), Bheemasamudra
GM INSTITUTE OF TECHNOLOGY, DAVANGERE
(Affiliated to VTU, Belagavi, Approved by AICTE -New Delhi & Govt. of Karnataka)
CERTIFICATE
This is to Certified that the Internship titled “Image to PDF converter” is a bonafide work carried out
by K Naveen Kumar - 4GM22CS401, Nandan.S - 4GM22CS405, Om Umesh Ankushkhani -
4GM22CS407, Thayagaraju K.C - 4GM22CS411 as per curriculum scheme 2021 with course code
21INT49 of Bachelor of Engineering in the Department of Computer Science and Engineering of the
Visvesvaraya Technological University, Belagavi, during the year 2022-23. The internship report has
been approved as it satisfies the academic requirements with respect to the Internship work prescribed
for Bachelor of Engineering Degree.
External Viva
1.
2
ACKNOWLEDGEMENT
The joy and satisfaction that accompany the successful completion of any task
would be incomplete without the mention of the people who made it possible.
We would like to express our gratitude to our Principal, Dr. Sanjay Pande M B
for providing us a congenial environment for engineering studies and also for having
showed us the way to carry out the Internship work.
We intend to thank all the teaching and non-teaching staffs of our Department of
Computer Science and Engineering for their immense help and co-operation.
Finally, I would like to express our gratitude to our parents and friends who always
stood by us.
K NAVEEN KUMAR
NANDAN S
THAYAGARAJU KC
OM U ANKUSHKHANI
CONTENTS
Page No.
Chapter 1: Company Profile 02
Chapter 2: Introduction 03
4.2 Prerequisites 17
LIST OF FIGURES
3.3 You can see the output of your program at the bottom of 05
the screen
4.3.2.1 18
Copying a Path
4.3.3.1 Source Code 18
4.3.4.1 Output 19
CHAPTER 1
COMPANY PROFILE
1.1 About the Founder
Mr. VIRUPAKSHAPPA H S Completed his Graduation in B.E & M-Tech in the year of
2013. Along with This he completed Professional training in many CADD software and
also six sigma a Business Studies and Ethical hacking as Cyber forensic Expert and get
certified.
Along with this he worked and studied SOM and MOM a Civil Subjects Branch and applied
successfully in Civil Structures Modeling and Analysis and also his research continues in
Computer Science Department regarding ethical hacking and understanding Programming
codes though this website was created by him with no programming knowledge but only
skills. He worked in many sectors of Service and Education.
But later on to utilize his skills so there after Decided to Start own Company along with the
support of the Partnering Companies and worked in all Possible areas to stand the Company
and named after his daughter SIRI and as she also intelligent finally named as SIRINTEL
in year of JAN 1st 2018 and combine all his works under the one roof of SIRINTEL THE
TECHNOLOGY BY INNOVATORS.
CHAPTER 2
INTRODUCTION
An image can also be described in terms of vector graphics or raster graphics. An image
stored in raster form is sometimes called a bitmap. An image map is a file containing
information that associates different locations on a specified image with hypertext links.
PDF (Portable Document Format) is a file format developed by Adobe that allows for the
reliable and secure exchange of electronic documents. PDF files can contain text, images, interactive
elements, and various other types of content while preserving the layout and formatting across
different devices and platforms. This makes PDF a popular choice for sharing documents, forms,
"Portable document format". Essentially, the format is used when you need to save files that cannot
be modified but still need to be easily shared and printed. Today most devices have a version of
Adobe Reader or can open a PDF in an Internet Browse.
PROBLEM STATEMENT:
You are tasked with developing a Python program to convert an image file into a PDF document.
The program should take the path to the input image file as input from the user and generate a PDF
document containing the image as output.
OBJECTIVES:
1. Image Input: The program should allow the user to specify one or more image files to be
converted. These images can be in common formats like JPEG, PNG, BMP, etc.
2. PDF Output: The program should generate a PDF file containing all the input images as pages of
the PDF document.
3. Page Order: Users may want to control the order of the images in the PDF document. The program
should provide options to arrange images in a specific sequence.
4. Image Scaling: Optionally, the program could offer image scaling options to adjust the size of
the images in the PDF document.
5. Image Compression: To reduce the size of the resulting PDF, the program can provide image
compression settings to control the quality of the images in the PDF.
6. Error Handling: The program should handle errors gracefully, such as invalid file paths,
unsupported image formats, or any other exceptions that may arise during the conversion process.
1. *Environment Setup:*
Ensure you have Python installed on your computer. We recommend using Python 3.x for this
project. Also, make sure you have a code editor or integrated development environment (IDE) set
up for writing and running Python code.
bash
pip install pillow reportlab
6. *Usage:*
In the same Python file, you can demonstrate how to use the conversion function:
7. *Execution:*
Save the Python file and execute it using the command line or your preferred method:
CHAPTER 3
TASK PERFORMED
During the three-week Internship, we learnt Basics of Python such as, print (), variables,
operators, if-elif, expressions, functions. Using Data structures like lists, sets, tuples,
dictionaries, operations on these data structures, slicing, Exception handling and File handling
in python. Here are the activities we did in three weeks.
3.1 WEEK 1:
3.1.1 PYTHON HELLO WORLD - CREATE YOUR FIRST PYTHON PROGRAM
FIG 3.1.1
Type a simple program - print (‘Hello World!’).
FIG 3.1.2
Go up to the “Run” menu and select “Run” to run your program
FIG 3.1.3
You can see the output of your program at the bottom of the screen
Example: print("USA")
3.1.3 VARIABLES
Creating Variables
Python has no command for declaring a variable. A variable is created the moment you first
assign a value to it. Variables do not need to be declared with any particular type
Example : x = 5
y = "John"
print(x)
print(y)
y = "John"
print(type(x))
print(type(y))
You can assign the same value to multiple variables in one line Example:
x = y = z = "Orange"
print(x) print(y) print(z)
OPERATORS IN PYTHON
DATA TYPES:
Integers
Strings
Booleans
Example:
Get the characters from position 2 to position 5 (not included):
b = "Hello, World!"
print(b[2:5])
By leaving out the start index, the range will start at the first character:
Example:
Get the characters from the start to position 5 (not included):
b = "Hello, World!"
print(b[:5])
By leaving out the end index, the range will go to the end:
Example:
Get the characters from position 2, and all the way to the end:
b = "Hello, World!"
print(b[2:])
Negative Indexing
Use negative indexes to start the slice from the end of the string:
Example:
Get the characters:
b="Hello,World!"
print(b[-5:-2])
3.2 WEEK 2
Data Structures, Functions, Conditional Statements, Loops in Python
Access Items, Check if Item Exists, Change Item Value, Change a Range of Item Values,
Inserting elements, Appending elements, Deleting items, Copying data structures, Converting
one data structure to another, Updating and deleting data structure.
Def function():
print("Hello")
Calling a Function
To call a function, use the function name followed by parenthesis:
Example
print("Hello") function ()
Passsing Arguements
def function(num):
if b > a:
a = 33
b = 200
if b > a:
Elif
The elif keyword is pythons way of saying "if the previous conditions were not true, then try
this condition".
Example: a = 33
b = 33
if b > a:
elif a == b:
print("a and b are equal")
Else
The else keyword catches anything which isn't caught by the preceding conditions
Example:
a = 200
b = 33
if b > a:
Nested If
You can have if statements inside if statements, this is called nested if statements.
Example x = 41
if x > 10:
1. while loops
2.for loops
i=1
while i < 6:
print(i) i += 1
while i < 6:
print(i) if i == 3:
break i += 1
i=0
while i < 6:
i += 1
if i == 3:
continue print(i)
Nested Loops
A nested loop is a loop inside a loop.
The "inner loop" will be executed one time for each iteration of the "outer loop":
print(x, y)
3.3 WEEK 3
FILE HANDLING
File handling refers to the process of working with files in a computer system, including reading from
and writing to files. Files are used to store data persistently on disk, and they can be of various types,
such as text files, binary files, or special formats like JSON, XML, etc. In programming, file handling
is a crucial task as it allows programs to interact with external data, store configurations, and perform
other I/O (input/output) operations.
Opening a file: Before reading from or writing to a file, it needs to be opened. The operating system
provides a file pointer to keep track of the current position in the file.
Reading from a file: Once a file is opened, data can be read from it. Reading can be done character by
character, line by line, or in larger chunks depending on the requirements.
Writing to a file: Data can be written to a file after it is opened for writing. Like reading, writing can
also be done character by character, line by line, or in larger chunks.
Closing a file: After all the necessary operations are performed, it is essential to close the file. Closing
a file ensures that all data is saved, and the system resources allocated to the file are released.
Example:
def write_data_to_file(data):
file. Write(data)
This function returns the bytes read as a string. If no n is specified, it then reads the entire file.
Example:
def read_data_from_file():
with open(file_path, "r") as file:
data = file. Read()
return data
DEPARTMENT OF CSE Page | 15
IMAGE TO PDF CONVERTER
Exception Handling:
Exception handling is a programming concept that deals with the way errors and exceptional
situations are managed within a program. When a program encounters an unexpected situation or
error that it cannot handle in its normal flow, it may throw an exception. These exceptions can be
caught and processed by an exception handling mechanism, preventing the program from crashing
and allowing for graceful error recovery or reporting
Exception handling typically involves the following components :
Try: The code that may potentially raise an exception is placed within a "try" block. If an exception
occurs within this block, the program will immediately jump to the corresponding "catch" block.
Catch (Except): The "catch" block (also called "except" block) is used to catch and handle the exception
raised in the "try" block. It contains code that specifies how to handle the exception. Multiple "catch"
blocks can be used to handle different types of exceptions.
Throw (Raise): When an exceptional situation occurs in the "try" block, the program raises an
exception using the "throw" statement (in C++, Java) or the "raise" statement (in Python).
Example:
def divide_numbers(a, b):
try:
result = a / b
return result
except Zero Division Error:
raise Value Error ("Cannot divide by zero")
try:
num1 = int(input("Enter the numerator: "))
result = a / b
return result
except Zero Division Error:
raise Value Error ("Cannot divide by zero")
try:
num1 = int(input("Enter the numerator: "))
CHAPTER 4
PROJECT DESCRIPTION
4.1 Problem Statement:
Creating a python program to convert Image to Pdf using Tkinter, PIL message box and
OS.
4.2 Prerequisites:
1. from Tkinter
4. from PIL
5. import image
6. import OS
1. The OS module in Python provides functions for interacting with the operating system
2. OS comes under Python's standard utility modules.
3. This module provides a portable way of using operating system-dependent
functionality
4. The os and os. Path modules include many functions to interact with the file system.
5. The Tkinter module is a Python library that provides a graphical user interface (GUI)
toolkit to create desktop applications with a native look and feel.
6. The Tkinter library allows Python programmers to create windows, dialogs, buttons,
labels, menus, and other GUI elements to interact with users.
FIG 4.3.1.1
Importing Modules
Import os and filedilouge, messagebox, image in the python program
The OS module in Python provides functions for interacting with the operating
system
The os and os.path modules include many functions to interact with the file system.
To convert an image to a PDF, you'll need to import the necessary modules/libraries. In
this case, you'll need the PIL (Pillow) library for image manipulation and the reportlab
library for PDF generation. Before you run the code, make sure you have these libraries
installed. If not, you can install them using pip. Here's how you import the required
modules:
This module aids in the automation of the convert the image to pdf.
DEPARTMENT OF CSE Page | 18
IMAGE TO PDF CONVERTER
FIG 4.3.2.1
Source path
FIG 4.3.3.1
Main Code
4.3.4 Output of the source code which working on the path of a folder
FIG 4.3.4.1
CHAPTER 5
REFLECTION NOTES
Teamwork and Collaboration: During the internship, We worked as part of a team that was
supportive, collaborative, and encouraged open communication. Working with them has been
a valuable experience that has helped me to enhance my teamwork and collaboration skills.
In summary, interning with Abeyaantrix Softlab a has been an excellent learning experience
that equipped us with valuable knowledge and skills in Python programming and
cybersecurity. We are thank full for the opportunity to learn from an experienced trainer and
gain hands-on experience in python field, which will be helpful in pursuing a career in the
technology industry.
CHAPTER 6
Fig 6.1.1
Output Snapchat
6.2 CONCLUSION
We started the program with a brief introduction of Python programming and the basic of
python programming. After that, we worked on a few projects which involved writing code in
Python. The projects were challenging but it was a great learning experience. We were able to
gain a understanding of Python programming, including data types, functions, modules, file
handling and Exception handling. We were able to apply the concepts we learnt and gain an
understanding of how to use them in a practical world.
We had the chance to interact with a professional trainer and ask questions about the topics
which was very helpful and gave us valuable insights on how to tackle the projects. the
internship provided me with the fundamental knowledge of python, including the types of
python programming.
Overall, the internship at Abeyaantrix Softlab in Davanagere was a great learning experience.
We were able to gain a better understanding of the concepts of Python programming and learn
how to apply them in a practical world. The trainer was very professional and gave us valuable
insights which will help us in our future projects.
REFERENCES
TEXTBOOK
1. Jamie Chan “Learn Python in One Day and Learn It Well. Python for Beginners with
Hands-on Project“ Published on 10 May 2017
3. Reema Thareja “Python Programming: Using Problem Solving Approach, 2nd Edition”
Published on 2 January 2023
WEB LINK
Python (2nd Edition): Learn Python in One Day and Learn It Well. Python for Beginners with
Hands-on Project. (Learn Coding Fast with Hands-On Project Book 1) eBook : Publishing,
LCF, Chan, Jamie: Amazon.in: Books
Thank you