1
Fork 0
Commit graph

30 commits

Author SHA1 Message Date
b839bb5b79 Properly rotate and flip canvas on PSD export 2022-06-15 10:53:34 -04:00
ded53bb5ae Automatically unpremultiply, prevent duplicate opacity and blending for PSD export
This fixes the last few bugs related to PSD export!
2022-06-14 11:48:42 -04:00
981604d68d Overhaul blend mode handling
Now we decode a much nicer enum, instead of manually parsing
ints on both the PSD and rendering side
2022-06-14 11:17:58 -04:00
acda007eee Add the rest of the supported Photoshop blend modes, fix clipping
This is not the final blending code, it will go through another refactor
but it's an improvement from before.
2022-05-19 11:00:51 -04:00
50d532aac9 Protect against some missing keys 2022-05-09 20:46:59 -04:00
ee81008930 Add experimental PSD exporting
Not everything is working yet, this requires
more PSDWriter modifications.
2022-02-28 12:04:08 -04:00
baac84383b Handle document names better
Now it's possible for the document title to be
null, just like an author name. Also, the
document title is used for the default filename
when exporting.
2022-02-28 12:03:08 -04:00
0c015e2327 Throw error when not a valid NSKeyedArchive 2022-02-14 12:36:08 -04:00
d8c3229394 Prettify Document.getChunkFilename 2022-02-14 12:31:08 -04:00
a71699c15d Add test for Document.parseChunkFilename 2022-02-14 12:30:08 -04:00
3fe5d9eb3a Add a visible error message for invalid documents
* Also enables concurrent reading, which should be safe
2021-09-30 07:53:41 -04:00
b87fe7e585 Protect crashes against invalid Procreate documents 2021-09-30 07:35:50 -04:00
c9f7923ed1 Make time-lapse export cancellable 2021-09-29 17:54:04 -04:00
7e5028efa7 Add time-lapse export option 2021-09-29 17:27:13 -04:00
a801579bc1 Fix alpha 2021-09-29 16:30:57 -04:00
8a83dbc25b Prevent a bunch of unnecessary CG->NS<-CI image conversions 2021-09-29 13:02:32 -04:00
3c7c1f865a Fix clipping masks 2021-09-27 12:23:18 -04:00
7e1ddaf2bf Splitting up some of the longer parts of the drawing function 2021-09-27 11:48:16 -04:00
78e9be6e1d Clean up CGRect and CGSize usage, remove some debug prints 2021-09-27 11:38:23 -04:00
e457a4b3c4 Load proper color spaces, add extended blend mode support, and load layer names 2021-09-27 11:31:19 -04:00
93dc48c1ca Add support for more blend modes 2021-09-21 05:36:11 -04:00
6ad06a1360 Create toGrayscale function 2021-09-21 04:41:05 -04:00
00b655f519 Add clipping mask support 2021-09-21 04:27:20 -04:00
5b8b9395e6 Add document name, author name, and stroke count properties 2021-09-20 14:13:58 -04:00
eabcddb4b1 Remove unnecessary dump statement 2021-09-16 18:42:13 -04:00
bf0aa43b76 Fix dispatch group and not all columns loading 2021-09-16 18:41:54 -04:00
9ce297bf9a Properly clear mask image, and load regular layer when a mask is present 2021-09-16 18:28:56 -04:00
af6890dca8 Add mask rendering functionality 2021-09-16 18:13:57 -04:00
e7b35fcfdf Rename to Silica Viewer 2021-09-15 14:10:07 -04:00
636145e265 Add unit tests
This just tests Document.parsePairString for now
2021-09-14 12:24:08 -04:00