I have put together two scripts, TWRPUI and TWRPIMAGE, that will port both the images and the ui.xml file from one specified resolution to another specified resolution.
The ui porter will not port the keyboardtemplate so it must be dealt with manually, and it will not touch the font size since that tends to be a preference amongst different devices, but it will handle everything else.
The images known to be used for TWRP themes are .jpg, and .png so the script will search for the given extensions based on where you point it to and then determine the original width and height of each image. It will resize them accordingly and write back to that same image to prevent duplicates.
After both scripts have been ran and you adjust the font size, then manually port the keyboardtemplate, all you are required to do is zip it up and name it, ui.zip.
Inside your TWRP folder will be another foldered named, theme (lowercase). Place the ui.zip inside the theme folder and boot in to your TWRP Recovery. Voila.
Please, keep in mind, that if you come across a TWRP theme which you later port and some things are still slightly off it could be due to a few causes:
1. The original theme developer was sloppy with his own work so you must fix his mistakes.
2. You grabbed a Theme designed for a Tablet to use on a regular device or vice versa. - ( Please use common sense)
Both scripts require the use of busybox applets which have been symlinked.
The TWRPIMAGE script also requires the use of GraphicsMagick (gm) which is mainly known for being a Linux utility but I was able to cross compile it from source.
These scripts will save a person HOURS of their time while porting TWRP Themes, but don't be fooled as the user will still be expected to have some personal experience porting such themes. The TWRPUI script WILL have to echo on to your screen certain values which can be located within "variable names" inside the ui.xml file. These special case values are to be determined by the human mind whether they resemble width or height and at which the user will type and enter, w or h. These special case values cannot be automatically determined simply due to the fact that any given themer can call these variable names whatever they want if they deem it necessary to do so.
However, the script WILL hunt down all x=, y=, w=, h=, width=, and height= values then automatically modify them according to the base and port resolution given as info to the script.
Once the script finishes you will find a file called, PORT_UI.xml.
To get access to this TWRP Theme Porter you can find it on my repo provided within the below link. The README.md files will provide a little more information.
https://github.com/ModdingMyMind/TWRP_IMAGE_PORTER
TWRPIMAGE
![]()
TWRPUI
![]()
The ui porter will not port the keyboardtemplate so it must be dealt with manually, and it will not touch the font size since that tends to be a preference amongst different devices, but it will handle everything else.
The images known to be used for TWRP themes are .jpg, and .png so the script will search for the given extensions based on where you point it to and then determine the original width and height of each image. It will resize them accordingly and write back to that same image to prevent duplicates.
After both scripts have been ran and you adjust the font size, then manually port the keyboardtemplate, all you are required to do is zip it up and name it, ui.zip.
Inside your TWRP folder will be another foldered named, theme (lowercase). Place the ui.zip inside the theme folder and boot in to your TWRP Recovery. Voila.
Please, keep in mind, that if you come across a TWRP theme which you later port and some things are still slightly off it could be due to a few causes:
1. The original theme developer was sloppy with his own work so you must fix his mistakes.
2. You grabbed a Theme designed for a Tablet to use on a regular device or vice versa. - ( Please use common sense)
Both scripts require the use of busybox applets which have been symlinked.
The TWRPIMAGE script also requires the use of GraphicsMagick (gm) which is mainly known for being a Linux utility but I was able to cross compile it from source.
These scripts will save a person HOURS of their time while porting TWRP Themes, but don't be fooled as the user will still be expected to have some personal experience porting such themes. The TWRPUI script WILL have to echo on to your screen certain values which can be located within "variable names" inside the ui.xml file. These special case values are to be determined by the human mind whether they resemble width or height and at which the user will type and enter, w or h. These special case values cannot be automatically determined simply due to the fact that any given themer can call these variable names whatever they want if they deem it necessary to do so.
However, the script WILL hunt down all x=, y=, w=, h=, width=, and height= values then automatically modify them according to the base and port resolution given as info to the script.
Once the script finishes you will find a file called, PORT_UI.xml.
To get access to this TWRP Theme Porter you can find it on my repo provided within the below link. The README.md files will provide a little more information.
https://github.com/ModdingMyMind/TWRP_IMAGE_PORTER
TWRPIMAGE

TWRPUI
