-
Notifications
You must be signed in to change notification settings - Fork 0
.pdn
PDN is the extension for paint.net project files which as of right now are only compatible with paint.net itself with seemingly no preexisting documentation in sight, let’s see if we can figure out how it works.
Compatible with: paint.net
Magic number > 0x50, 0x44, 0x4E, 0x33 (PDN3) May vary depending on the version of paint.net
Unknown > 3 Bytes TODO: Figure out what this even is
Near the beginning of a .pdn file is an XML styled header containing basic information about the project file such as it’s resolution, layer count, and more.
This section of the XML header defines the project file’s thumbnail; however, the raw thumbnail is split into 6-bit segments that then get encoded into an ASCII string that represents the thumbnail in-file.
The cipher for which binary value each ASCII character pertains to is as follows…
| xxx000 | xxx001 | xxx010 | xxx011 | xxx100 | xxx101 | xxx110 | xxx111 | |
| 000xxx | A | B | C | D | E | F | G | H |
| 001xxx | I | J | K | L | M | N | O | P |
| 010xxx | Q | R | S | T | U | V | W | X |
| 011xxx | Y | Z | a | b | c | d | e | f |
| 100xxx | g | h | i | j | k | l | m | n |
| 101xxx | o | p | q | r | s | t | u | v |
| 110xxx | w | x | y | z | 0 | 1 | 2 | 3 |
| 111xxx | 4 | 5 | 6 | 7 | 8 | 9 | + | / |
TODO: Figure out how the rest of this file format works.