GithubHelp home page GithubHelp logo

png-editor's Introduction

PNG-editor

Second term coursework: PNG image editor written in C++. GUI created with Qt5, image manipulation done with libpng.

Installation

Granted that you have both Qt and libpng (version 1.2.x >= 1.2.50) installed, run qmake and then make in src directory or simply build the project via Qt Creator.

Usage

Press folder icon (alternatively, File - Open or Ctrl+O) and choose a .png file in a dialog that opens to load an image. Paletted images are not supported.

To save an image, press "Save" icon, File - Save or Ctrl+S, then choose image name and image location in a dialog.

Press dice icon, File - Property or Ctrl+I to see image properties. The app converts any loaded picture to RGBA format with 8-bit color depth without interlacing, so the "after conversion" part must always be the same.

The app supports four kinds of image transformations: dividing an image with horizontal and vertical lines, drawing rectangles, rotating picture fragments and drawing frames.

Choose line color for "divide", "rectangle" and "frame" tools from "color" list. Choose rectangle fill color from "color fill" list. Choose line width for "divide" and "rectangle" tools from "line" list.

To use "divide" tool, enter number of horizontal parts (created by vertical lines) and number of vertical parts (created by horizontal lines) in "H" and "V" text fields respectively. Entering values more than number of pixels in the specified direction has no effect, as well as entering 0. Entering 1 does nothing too, because the image is already in one piece. Press button with four squares or Ctrl+D to divide an image.

To use "rotate" tool, click on the image twice to specify the rectangular rotation region, then choose an angle from a list next to rotation button. Click the rotation button or Ctrl+R to rotate specified region around its center.

To draw a rectangle, click on the image twice to specify opposite corners of the rectangle, then click "rectangle" button or Ctrl+T.

To draw a frame, choose a pattern from the "pattern" list, choose frame width from the "width" list and click "frame" button or Ctrl+F.

Click About - About for a quick help.

png-editor's People

Contributors

mi-ch-ael avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.