Jump to content
How to Install Plugins ×
Paint.NET 5.1 is now available! ×

'ZIP Archive' FileType Plugin (.ZIP) [Latest v1.4 2021-11-04]


Recommended Posts

Posted

New release

 

1.3 (2.11.2021)
- Modified to support paint.net 4.3 and .NETCore 5
1.4 (4.11.2021)
- Replaced ionic zip class with .net ZipArchive class

 

 

midoras signature.gif

Posted

Doesn't work. 🤔

Plugin Error :

 

D:\Program Files\paint.net\FileTypes\ImZIP.FileType\ImZIP.FileType.dll, Version 1.4.0.0

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Data, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
File name: 'PaintDotNet.Data, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Data, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
File name: 'PaintDotNet.Data, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(ObjectHandleOnStack assemblyName, ObjectHandleOnStack requestingAssembly, StackCrawlMarkHandle stackMark, Boolean throwOnFileNotFound, ObjectHandleOnStack assemblyLoadContext, ObjectHandleOnStack retAssembly)
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, RuntimeAssembly requestingAssembly, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, AssemblyLoadContext assemblyLoadContext)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 101
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 47
   at PaintDotNet.Runtime.Loader.AssemblyResolver.ResolveAssembly(ILoadContext loadContext, AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\AssemblyResolver.cs:line 68
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
File name: 'PaintDotNet.Core, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'PaintDotNet.Core, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'. Das System kann die angegebene Datei nicht finden.
File name: 'PaintDotNet.Core, Version=4.303.7965.39135, Culture=neutral, PublicKeyToken=null'
   at System.Reflection.RuntimeAssembly.InternalLoad(ObjectHandleOnStack assemblyName, ObjectHandleOnStack requestingAssembly, StackCrawlMarkHandle stackMark, Boolean throwOnFileNotFound, ObjectHandleOnStack assemblyLoadContext, ObjectHandleOnStack retAssembly)
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, RuntimeAssembly requestingAssembly, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, AssemblyLoadContext assemblyLoadContext)
   at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyName(AssemblyName assemblyName)
   at PaintDotNet.Runtime.Loader.TrustedPlatformAssemblyResolver.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\TrustedPlatformAssemblyResolver.cs:line 101
   at PaintDotNet.Runtime.Loader.CombinedAssemblyLoader.Load(ILoadContext loadContext, AssemblyName assemblyName, String assemblyPath) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\CombinedAssemblyLoader.cs:line 47
   at PaintDotNet.Runtime.Loader.AssemblyResolver.ResolveAssembly(ILoadContext loadContext, AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\AssemblyResolver.cs:line 68
   at PaintDotNet.Runtime.Loader.LoadContext.AssemblyLoadContextImpl.Load(AssemblyName assemblyName) in D:\src\pdn\src\PaintDotNet\Runtime\Loader\LoadContext.cs:line 168
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName)
   at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)

 

Posted

Thanks for the hint. And sorry it seems to require paint.net 4.3.3 which is not available now. I had no idea that the loader checks for more than 4.3.

midoras signature.gif

  • 1 month later...
Posted

Oh, ok. I'd like to be able to change the names of the files saved at the zip one. Something like "{layer_name}-{layer_number}.png" (layer-1.png) for example.

I'll try to make it decompiling the .dll by myself but I think it would be a nice update to the plugin itself.

By the way, I wasn't able to find a nice guide for making my own "FileType" plugin, could you give me a hint?

Thanks again.

Posted

Rick prefers that save plugins can also load the written files. That's the reason why the names are fixed in the moment. But it may be solved by creating an additional file in the zip defining how the image can be recreated. In this case a pattern (including keywords) for the filenames may be possible.

Please use the Plugin Developer's Central to ask questions about developing plugins.

midoras signature.gif

  • 2 weeks later...
Posted

If I may request a feature, I would love to see a feature that leaves layer names intact. In general the plugin works great, renaming all the files is just a bit annoying.

Thanks for all the effort regardless!

Posted

Hi @Rarethe main issue with this request is that layer names may not be unique or they may be empty or they contain characters which are not allowed in file names.

So some renaming may be necessary. The additional infos required to restore the pdn content could be stored in the PaintDotNet.txt file in the zip.

midoras signature.gif

  • 2 months later...
Posted

I am getting an error when installing:

C:\Program Files\paint.net\FileTypes\ImZIP.FileType.dll, version 1.4.0.0

System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
File name: 'System.Runtime, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

any help?

  • 3 months later...
  • 5 months later...
Posted
34 minutes ago, CircleBox said:

I can't seem to save as or open up zip files. 

 

Have you looked for it in the 'Save As Type' drop down menu?

 

Save-Type-Zip.png

30b8T8B.gif

How I made Jennifer & Halle in Paint.net

My Gallery | My Deviant Art

"Rescuing one animal may not change the world, but for that animal their world is changed forever!" anon.

 
  • 3 months later...
Posted

Awesome plugin, thanks!

 

I understand the difficulty about using just the layer names for the file names, but at least on Windows, the Powershell rename-item command can get the desired names back with a few seconds' work.

 

This will save me much time - just wish I had come across it a few years ago!

  • 2 months later...
  • 1 month later...
  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...