Skip to content

Harshitcsiitd/Vector_Editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Micro-Vector Editor (SVG)

#Prerequisites Ensure you have the necessary Qt5 development libraries, CMake, and a C++17 compatible compiler installed on your Linux/WSL system. You can install the required dependencies using the following command: // sudo apt update sudo apt install build-essential cmake qtbase5-dev qt5-qmake //

#Compilation Instructions The project uses a CMake build system. To keep the source directory clean, it is recommended to compile the project inside a separate build directory.

#Run the following commands from the root of the project directory: //

  1. Create a build directory and navigate into it mkdir build cd build

  2. Generate the build system files cmake ..

  3. Build the executable cmake --build .

#Run Instructions Once the build is complete, the executable VectorEditor will be generated in your build directory.

To launch the GUI editor, run: ./VectorEditor

(Note for WSL users: Ensure your X-server or WSLg is running properly to render the graphical window). //

#Features Supported

  • Shapes: Rectangles, Rounded Rectangles, Circles, Lines, Hexagons, Text, and Freehand sketching.
  • Attributes: Customizable stroke color, fill color, and stroke width.
  • Editing Tools: Select any shape(click inside that shape), Move, and Resize.
  • Standard Actions: Undo, Redo, Cut, Copy, Paste, and Delete.
  • File Operations: Open (parse), Save, and Save As valid .svg formats.

#Project Overview This is a C++ based vector graphics editor that features a graphical user interface built with Qt5. It allows users to create, modify, and render 2D vector shapes, and implements a custom XML/SVG parser to read and write a restricted subset of the SVG format without relying on third-party parsing libraries.The SVG parser has my own format hence appropriate values need to be provided to run the svg file. Selecting any shape should be done using select option.The recent most shape at that point will be selected. User can also change the mainwindow size in MainWindow.cpp file in the constructor resize line according to our own wish.

Any Shape- select any shape and then press the mouse and drag till you want the shape to extend. Text - select this and then type the text you want to print.. if pressed cancel no new shape is being created .

first select the shapes then use the following tools given below

Move - once the user has selected any shape it can move the shape while pressing the left button Resize - select the shape and then enter the factor in which the shape size has changed Font color - select the shape then select the color in which we want to change it.if pressed cancel the color is not changed. Stroke color - select the shape then select the color in which we want to change it.if pressed cancel the color is not changed. Stroke Width - select the shape then select the width to which we want to change it and then press ok.if pressed cancel the width is not changed. Cut - first select the shape and then press cut ..the selected shape is removed and being pasted in clipboard. Copy - first select the shape and then press copy ..the selected shape is being pasted in clipboard. Paste- the clone of the clipboard shape is being made at that originals shapes position ..move is then selected by default and the new shape is being selected .Hence we can then move it to our desired location Delete - Select the shape you want to delete and it is removed.

Undo/Redo - All the above commands+ new shape being created can be undo and redo to their previous attributes.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors