Git Product home page Git Product logo

android-imagemagick-1's Introduction

This Is a multi CPU-architecture port of ImageMagick on Android Platform

Credit to the following repositories for their components used to help me build this
1. https://github.com/lilac/Android-ImageMagick
2. https://github.com/puelocesar/android-lib-magick
3. https://github.com/hagish/love-native-android

USAGE:
For quick ImageMagick Usage in your android app, .....the following instructions are based on none-gradle build
1. simply copy the "libs" folder to your project folder
2. Delete the CPU architecture folders of those CPU's architecure's you aren't targetting in the "libs" folder you've just copied.
3. go to "src" and copy "Magick" and "fakeawt", copy these to your "src" folder of your project
4. Create a"jni" folder
5. In the "jni" folder create an "Application.mk" file where you put "APP_ABI := <your_target_CPU_architecture>"" , this allows Google Play to know what CPU that particular APK targets
6. Your basically done at this point, you can look at "teste.ndk.testendkactivity" and "AndroidMagickActivity.java" for basic Imagemagick usage you can copy to your own Activity.

REBUILD:
If you want to rebuild with your own toolchain/compilers and what not or even maybe add other libraries e.g "Ghostscript" to support for PDF.
1. Naviagate to "jni" and edit the "android.mk" file accordingly
2. Also edit the "application.mk" file accordingly
3. using your "Cygwin" or whatever you none Windows guys use, navigate to the project's "jni" folder and run "ndk-build" 

NB: If your adding support libraries such as "djvu" or "ralcgm" etc for djvu and meta file format support, build them as static libraries in the android.mk file but make sure to include their modules in the magick and libimagemagick "LOCAL_STATIC_LIBRARIES", dont forget to add thier include paths as well.
Then proceed to the format's corresponding c file in ImageMagick/Coders folder e.g "jp2.c" if it's there anyway, look for if statements of the form "if defined(MAGICKCORE_<format>_DELEGATE)", remove them and their corresponding "endif"s. Do the same for also the ImageMagick/magick/static.c file.
I successfully added support for JPEG2000 and webp formats, if you manage to add others or even update the libraries, please commit/fork or whatever the word you guys call it,  sorry im new to github :-) ,It took me 3 hours just uploading this my first repo .

NEED HELP TO:
If you'd like to contibute i'd look forward to the following improvements:
1- Compiling and adding Ghostscript to support PDF,
2- Compiling and adding JPEG turbo
3- Making the final ".so" file smaller using any optimizations you experts know of.

Well, there you have it.
If it works for you don't forget to star.

Goodluck,
regards,
Paul Asiimwe,
Kampala, Uganda
http://www.google.com/+PaulAsiimwe
https://google.com/+PaulAsiimwe


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.