Giter Site home page Giter Site logo

supermarsx / imaggio Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 164.01 MB

PDF conversion and manipulation tool

License: MIT License

JavaScript 0.39% PostScript 16.24% HTML 67.50% TeX 0.69% C 6.70% CSS 0.56% Emacs Lisp 0.14% Makefile 0.07% Awk 0.04% Shell 0.15% Batchfile 0.10% C++ 7.01% Roff 0.34% CMake 0.06% AutoIt 0.01%
pdf manipulation converter png jpg doc windows 32bit

imaggio's Introduction

Imaggio

Imaggio app

Imaggio is an open source file manipulation tool, windows desktop application built on Electron. Handles conversion, compression, slice and dice in multiple ways geared towards PDF files. If you ever thought about the privacy and data security implications regarding use of online converters, wonder no more, Imaggio does all the PDF slice and dice on your machine. This is meant to be a simple intuitive application for any user. Select your action, select/drag n'drop your file and done.

This application is mostly a GUI for several different binaries that interact with (but not limited to) PDF files, these binaries are Ghostscript, ImageMagick, OfficeToPdf, Poppler, qpdf, pandoc and exiftool. They're not all in use but they maybe used in some way in the future and that's why they're there.

Index

Requirements

Imaggio is a standalone application that only requires Microsoft Office for "document to PDF" conversions. If you don't need these type of conversions there's no other specific requirement.

Notes on binaries

The included binaries have been UPX (--ultra-brute) compressed for manageability. If that does not suit your use case for some specific reason there are mirror repositories of these binaries on github.

Purpose of the binaries

  • ghostscript is used for compression tasks and pdfa conversion
  • poppler is used for PDF to graphic formats conversions, extractions, split and detach
  • officetopdf is used for document to pdf conversions
  • imagemagick is used for image to grayscale
  • exiftool is used for metadata manipulation

Features

  • Open source, customizable to your needs
  • MIT Licensed, except third-party binaries
  • Local file manipulation
  • Better privacy, no tracking
  • Single file processing
  • Folder processing for bulk workloads
  • Array of common manipulation tasks available
    • PDF to JPEG (low, medium, high)
    • PDF to PNG (low, medium, high)
    • PDF to SVG
    • Document to PDF [Word, Excel, PowerPoint, etc...] (7 options)
    • Compress PDF (low, medium, high)
    • Split PDF, 1 PDF per page
    • Extract images from PDF, 1 file per image
    • Extract text from PDF, .txt format
    • Convert to PDF/A
    • Compress and convert to PDF/A (3 options)
    • Metadata (remove or clone from one to another)
    • Image file to grayscale
  • Application translation support via .json file
    • en-US - American English, (default)
    • pt-PT - Portugal Portuguese

Planned features

  • Customizable PDF stamping
  • Join PDF files

Features QA

Q: Can i change the output filename or folder?

A: No, it's not planned to be allowed changes to the output in any way. Output files are default defined and won't be changed.

Q: Will you support Linux and MacOS?

A: No, i won't support Linux or MacOS, however you're free to contribute a port to these OSes.

Q: Can i convert [insert humongous number] files?

A: You can but i wouldn't recommend, it will probably take a long time. I'd use this for a simple workflow of upwards of 5000 files or so.

Q: Can I get fine tuning options?

A: No, this tool is meant for general, fast, major use case scenarios, if you want fine tuning you'll have to use the original binaries and their command line parameters.

Q: Why can't i drop a file on "clone metadata" option?

A: To be clear you've selected either source or target file, this is by design.

Q: How can i change the language?

A: You can't, language is detected at application startup, defaults to en-US locale. However you can contribute with a translation from en-USto another locale, you can find the base file inside app/js/locale/en-US.json.

Quick Start

Stay on the bleeding edge of imaggio commits using git clone or for slightly tested version download the latest built release.

File output

Files used in the application will not be modified, the output files will have min or number to indicate and distinguish the file as well as jpg or whatever extension is appropriate to the chosen option. Along with that you're able to distinguish these processed files by looking at the modification date with explorer's list view.

Notes on scripts

These executable files inside the scripts folder are meant to launch or kill imaggio easily, used just for debugging/testing purposes. Were made with AutoIt and are decompilable, source inside app/etc.

Latest built binary

Check out and download the latest release.

Latest tag Check out releases

Latest changes

Basic Imaggio requirements are node, npm and git.

Clone Imaggio code and install dependencies

git clone https://github.com/eduardomota/imaggio
npm install

After clone, run using

npm start

Building

Imaggio uses electron-packager for builds.

electron-packager . imaggio --overwrite --platform=win32 --arch=ia32 --icon=app/icons/app.ico --prune=true --out=release_builds --version-string.CompanyName=\"\" --version-string.FileDescription=\"NAME\" --version-string.ProductName=\"PRODUCTNAME\""

or

npm run build

Built with

License

Distributed under MIT License. See license.md for more information.

Additionally when using Imaggio or other GitHub Logos, please refer to GitHub logo guidelines.

imaggio's People

Watchers

James Cloos avatar  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.