The Porter-Duff Experiment is NOT about a fictional progressive jazz/rock/fusion supergroup from the 1970's ( ), but relates to the compositing of digital images. You can read all about it HERE and some real world examples HERE
This extension provides all the various transformations available with PorterDuff.Mode. For ALL of the transformations to work, your source and destination image files MUST have a transparent background (or at least a part of the image should be transparent). Please note that the source and destination images need to have the same dimensions for an accurate transformation.
The possibilities for its use are endless, therefore I will show the basics, and then add specific use cases as required / requested.
Latest Version: 1.0
Tested: This has been tested, on App Inventor 2 using Android 10 and 12 devices, companion 2.63u. It may work on other derivatives....e.g. Kodular/Niotron/etc.
Released: 14 July 2022
Last Updated: 14 July 2022
Built: Using the Rush Extension Builder by @shreyash
BLOCKS
An image component is required to display the transformation output, this can then be saved to a file
The Transformations property contains a list of all the transformations possible, you select from this list and apply it to the transformValue
provide an absolute path for the source and destination files
.
.
Enjoy , and all feedback and comments welcome.
Available for use in any MIT AppInventor projects or competitions
#####################################################################
This work by TIMAI2 is licensed under a Creative Commons Attribution-ShareAlike 4.0 Unported License with attribution.
Please use name = TIMAI2 and link to this source page when giving credit.
#####################################################################
You can have the generated image saved to another file instead of an image component (I tried to use the image from the component's image property to put it on a canvas but no matter how hard I try it on the canvas it appears as if the image component doesn't have an image) thanks for the help friend
How do you get those "get filename" blocks? Sorry I'm new and was wondering where those blocks came from along with what seems to be a procedure block with that "filename" option beside it
pls help me i get an error like this every single time " Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference Note: You will not see another error reported for 5 seconds."