https://github.com/xubiod/import_from_procreate
Import Procreate projects into Krita with only a few clicks at most.
https://github.com/xubiod/import_from_procreate
krita krita-importer krita-plugin procreate python python-3 python3
Last synced: 2 months ago
JSON representation
Import Procreate projects into Krita with only a few clicks at most.
- Host: GitHub
- URL: https://github.com/xubiod/import_from_procreate
- Owner: xubiod
- Created: 2025-08-02T01:13:09.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-02T19:36:01.000Z (11 months ago)
- Last Synced: 2025-10-10T11:13:54.699Z (8 months ago)
- Topics: krita, krita-importer, krita-plugin, procreate, python, python-3, python3
- Language: Python
- Homepage:
- Size: 673 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Import .procreate into Krita
This is a Python 3 plugin for Krita that can import a Procreate project into Krita
as a new document.
> [!NOTE]
> This is pretty identical to the Manual provided with the plugin shown within Krita.
## Installation
### Releases
1. Check out the [latest release](https://github.com/xubiod/import_from_procreate/releases)
2. In the menu bar, you can go to **Tools -> Scripts -> Import Python Plugin from File...**
### Actions
1. Check out this [workflow's latest run](https://github.com/xubiod/import_from_procreate/actions/workflows/main.yml) to download its artifact
- Topmost run name
- Scroll to `Artifacts`
- Download the zip file listed
- Should be named `import-from-procreate` followed by a hash
2. In the menu bar, you can go to **Tools -> Scripts -> Import Python Plugin from File...**
### Manually via clone
1. Clone with submodules (`git clone --recurse-submodules https://github.com/xubiod/import_from_procreate.git`)
2. Move to under `pykrita` on a Krita install:
- ```
Krita install/
pykrita/
import_from_procreate/
[repo files]
```
3. Move `import_from_procreate.desktop` **outside of the folder**:
- ```
Krita install/
pykrita/
import_from_procreate/
[repo files]
import_from_procreate.desktop
```
- 
4. Restart Krita if open
The plugin should be in the list, with the name **Procreate Project Importer**:

### Overview
This plugin can import Procreate documents into Krita with complete layers with:
- Layer image data
- Layer opacity
- Clipping mask/alpha inheritance, alpha lock, visiblity and locks applied properly
- Correct1 blend modes
- Groups with their proper children
- Colour profiles taken into consideration
1 - Blend modes were estimated from Krita's list, with preference towards
Photoshop blend modes. These might not be completely accurate to Procreate as a
result.
The plugin adds two items to **Tools > Scripts**:

- **Import \*.procreate File as New Document...** - Imports a Procreate document into Krita as a new document, using an Open File window.
- **Procreate Importer Settings...** - Settings for the plugin itself.
---
### Settings

Settings are heavily documented with tooltips, and are mostly relegated to how to automatically handle popups the plugin shows for certain elements of the import process.
---
### Caveats
There are some caveats with the current state of the importer that should be mentioned:
- Older Procreate documents that use LZO compression:
- Have decompression problems
- Take slightly longer to decompress
- Clipping masks/layers with inherit alpha enabled are accurate with *layer structure* but **NOT _accurate visually_**
- You can group a paint layer with its' clipping masks above it together to get accurate visuals
- This issue only exists because of how Krita implements this behaviour
---
### Credits
- **Xubiod** - plugin and import logic
- **Jan Kneschke** - inital pure Python LZ4 decompression logic
- **Toke Høiland-Jørgensen** - pure Python LZO decompression logic
- **Andrew Wooster**, **Kevin Kelley** - The `biplist` pip package for reading binary Apple plist files