Reptillian Posted December 5, 2020 Share Posted December 5, 2020 (edited) What this plugin does is to create tiled shapes into your canvas, and the colors are calculated by weighted average, and z-convolution as a post-process step. More details on how the plugin works below (Only for programmers, so click spoiler if you are one interested into this.): Spoiler Older Method (Easier and slower): 1. Create shape. It has to be fitted into the tile in the end, and the initial size is dependent on sub-sampling level. It's really hard to explain how it works. 2. Resize the target image canvas to nearest divisible integer greater than the dimension divided by the end tile width/height. 3. After the initial shape processing shape, resize the shape and make sure it repeat accordingly to the boundary specification. 4. Create a new image which multiples the target image and the shape canvas. And then, another one which use the inverted shape canvas instead. 5. Create a volumetric image which dimension is the number of tiles per dimension to complete dimension. That means tiles_w,tiles_h, depth of 2, and n where n is the number of channel in initial image. 6. Using multi-threaded, find the average of the multiplied image. At z=0, find the average of multiplied shape image, and for z=1 find the average of inverted-shape multiplied image. 7. Using a 1,1,3 image where the 0,0,1 is 1 plus the twice the absolute of the same negative value in the surround image, apply this image to convolve the volumetric image. Only applicable if z-convolution is enabled. 8. Using the shape image (not the created images which is found by multiplying the shape image by target images) and the volumetric image, create shape based on the information generated. New Method (Harder and faster O(n)): 1. Create shape. It has to be fitted into the tile in the end, and the initial size is dependent on sub-sampling level. It's really hard to explain how it works. 2. Resize the target image canvas to nearest divisible integer greater than the dimension divided by the end tile width/height. 3. Create mirrored copies of shape image if the repeats are not going to be periodic. 4. Create a volumetric image which ceil(target_image_width/shape_image_width) x ceil(target_image_height/shape_image_width) x depth of two. 5. Using a for loop,loop over each pixels at the respective point in the target image based on volumetric image. So, if you're in [2,1,0] that means your starting point for the loop in the target image is 2*shape_image_width , 1*shape_image_width. The last dimension implies whether one should use a inverted shape_image to loop with. In both cases, your loop goes normally with the shape. Your objective here is to find the weighted average. So, you make the sum of the multiplication of shape_image and target_image, and then divide by the sum of the shape_image array or the inverse of it depending on the point. Do it via parallel. 6. Using a 1,1,3 image where the 0,0,1 is 1 plus the twice the absolute of the same negative value in the surround image, apply this image to convolve the volumetric image. Only applicable if z-convolution is enabled. 7. After you have generated the colors for the mini volumetric image. Find the difference between end_color and starting color. Then loop using shape_image. And then draw onto target_image with starting_color+shape_image_array*diff color. Note that there's a bug I can't resolve, however this plugin works well for the most part. The bug that I can't resolve has to do with starting with Australia and having dynamic option. Output of Effect: Installation steps: Note: Check if you have a folder named 'GmicPDN'. If you already had 'GmicSharpNative', and it was updated after 10/27/2021, then you need to create a new folder called 'GmicPDN', and then drag and drop the GmicPDN effect dlls, and `GmicSharpNative` folder. Otherwise, click on this link -> GmicPDN Download and Instruction. Ensure that the note is taken care of. Then, download the zip, and extract it directly into the Effects folder. -> TiledFormGmicPdn.zip Additional note as of 12/2/2021: Delete any dll that corresponds with the name of the downloaded. Try placing on Effects or GmicPDN folder. This is a troubleshooting instruction if you ran into the problem @AndrewDavid had. It's under Stylize menu. G'MIC-PDN Plugin Source code: To use these two source code file, you need to use this repository provided by @null54, rename everything within the source to ensure you have your own project folder, and then insert it where they originally are. You also need to build GmicSharpPDN library. Effect.cs Spoiler #define USE_CLIPBOARD using GmicSharpPdn; using PaintDotNet; using PaintDotNet.AppModel; using PaintDotNet.Effects; using PaintDotNet.IndirectUI; using PaintDotNet.PropertySystem; using System.Drawing; using System.Globalization; using System.Reflection; using System.Collections.Generic; #if USE_CLIPBOARD using PaintDotNet.Clipboard; #endif namespace GmicPDNPlugin { [PluginSupportInfo(typeof(PluginSupportInfo))] public sealed class GmicPdnPluginEffect : PropertyBasedEffect { public GmicPdnPluginEffect() : base("Tiled Form", StaticIcon, SubmenuNames.Stylize, new EffectOptions { Flags = EffectFlags.Configurable }) { } public static Image StaticIcon => new Bitmap(typeof(GmicPDNPlugin.GmicPdnPluginEffect), "Icon.png"); private enum PropertyNames { Cs_mode, Pretile_mode, Use_clipboard_as_tile, Shape_w, Shape_h, Shape_ratio, Shape_ang, Shape_axis, Sub, Zconv_Factor, Zconv_Boundary, Interp, Tile_b, Preprocess, Fit_tile, Points, Thickness } public enum Cs_modeOptions { RGB, RYB, CMYK, HCY, HSI, HSL, HSV, LAB, LCH } public enum Pretile_modeOptions { Pretile_modeOption1, Pretile_modeOption2, Pretile_modeOption3, Pretile_modeOption4, Pretile_modeOption5, Pretile_modeOption6, Pretile_modeOption7, Pretile_modeOption8, Pretile_modeOption9, Pretile_modeOption10, Pretile_modeOption11, Pretile_modeOption12, Pretile_modeOption13, Pretile_modeOption14, Pretile_modeOption15, Pretile_modeOption16, Pretile_modeOption17, Pretile_modeOption18, Pretile_modeOption19, Pretile_modeOption20, Pretile_modeOption21, Pretile_modeOption22 } public enum Shape_axisOptions { None, X, Y } public enum Zconv_BoundaryOptions { Neumann, Periodic } public enum InterpOptions { Nearest, Average, Linear, Bicubic, Lanczos } public enum Tile_bOptions { Periodic, Mirror_X, Mirror_Y, Mirror_XY } public enum PreprocessOptions { Neumann, Periodic, Mirror } protected override PropertyCollection OnCreatePropertyCollection() { Property[] props = new Property[] { StaticListChoiceProperty.CreateForEnum<Cs_modeOptions>(PropertyNames.Cs_mode,(Cs_modeOptions)7,false), StaticListChoiceProperty.CreateForEnum<Pretile_modeOptions>(PropertyNames.Pretile_mode,(Pretile_modeOptions)21,false), new BooleanProperty(PropertyNames.Use_clipboard_as_tile, false), new Int32Property(PropertyNames.Shape_w, 30, 0, 512), new Int32Property(PropertyNames.Shape_h, 30, 0, 512), new DoubleProperty(PropertyNames.Shape_ratio, 100, .1, 100), new DoubleProperty(PropertyNames.Shape_ang, 0, -180, 180), StaticListChoiceProperty.CreateForEnum<Shape_axisOptions>(PropertyNames.Shape_axis,0,false), new DoubleProperty(PropertyNames.Sub, 1, .5, 2), new DoubleProperty(PropertyNames.Zconv_Factor, 75, 0, 200), StaticListChoiceProperty.CreateForEnum<Zconv_BoundaryOptions>(PropertyNames.Zconv_Boundary,0,false), StaticListChoiceProperty.CreateForEnum<InterpOptions>(PropertyNames.Interp,(InterpOptions)4,false), StaticListChoiceProperty.CreateForEnum<Tile_bOptions>(PropertyNames.Tile_b,0,false), StaticListChoiceProperty.CreateForEnum<PreprocessOptions>(PropertyNames.Preprocess,(PreprocessOptions)2,false), new BooleanProperty(PropertyNames.Fit_tile, true), new Int32Property(PropertyNames.Points, 5, 1, 100), new DoubleProperty(PropertyNames.Thickness, 38, .1, 100) }; List<PropertyCollectionRule> propRules = new List<PropertyCollectionRule>(); propRules.Add(new ReadOnlyBoundToBooleanRule(PropertyNames.Thickness, PropertyNames.Use_clipboard_as_tile, false)); propRules.Add(new ReadOnlyBoundToBooleanRule(PropertyNames.Points, PropertyNames.Use_clipboard_as_tile, false)); propRules.Add(new ReadOnlyBoundToNameValuesRule(PropertyNames.Thickness, true, (PropertyNames.Pretile_mode, Pretile_modeOptions.Pretile_modeOption22) )); propRules.Add(new ReadOnlyBoundToNameValuesRule(PropertyNames.Points, true, (PropertyNames.Pretile_mode, Pretile_modeOptions.Pretile_modeOption18), (PropertyNames.Pretile_mode, Pretile_modeOptions.Pretile_modeOption21), (PropertyNames.Pretile_mode, Pretile_modeOptions.Pretile_modeOption22) )); propRules.Add(new ReadOnlyBoundToBooleanRule(PropertyNames.Thickness, PropertyNames.Use_clipboard_as_tile, false)); propRules.Add(new ReadOnlyBoundToBooleanRule(PropertyNames.Points, PropertyNames.Use_clipboard_as_tile, false)); propRules.Add(new ReadOnlyBoundToBooleanRule(PropertyNames.Pretile_mode, PropertyNames.Use_clipboard_as_tile, false)); propRules.Add(new ReadOnlyBoundToValueRule<double, DoubleProperty>(PropertyNames.Zconv_Boundary, PropertyNames.Zconv_Factor, new[] { 0d }, false)); return new PropertyCollection(props, propRules); } protected override ControlInfo OnCreateConfigUI(PropertyCollection props) { ControlInfo configUI = CreateDefaultConfigUI(props); configUI.SetPropertyControlValue(PropertyNames.Cs_mode, ControlInfoPropertyNames.DisplayName, "Color Space"); PropertyControlInfo Cs_modeControl = configUI.FindControlForPropertyName(PropertyNames.Cs_mode); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.RGB, "RGB"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.RYB, "RYB"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.CMYK, "CMYK"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.HCY, "HCY"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.HSI, "HSI"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.HSL, "HSL"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.HSV, "HSV"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.LAB, "LAB"); Cs_modeControl.SetValueDisplayName(Cs_modeOptions.LCH, "LCH"); configUI.SetPropertyControlValue(PropertyNames.Pretile_mode, ControlInfoPropertyNames.DisplayName, "Tiled Form"); PropertyControlInfo Pretile_modeControl = configUI.FindControlForPropertyName(PropertyNames.Pretile_mode); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption1, "Australia"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption2, "Barbed Wire"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption3, "Circle"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption4, "Crosshair"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption5, "Cupid"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption6, "Diamond"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption7, "Dragonfly"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption8, "Flip"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption9, "Gumleaf"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption10, "Heart"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption11, "Information"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption12, "Kookaburra"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption13, "Mail"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption14, "Mapleleaf"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption15, "Paint Splat"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption16, "Paw"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption17, "Phone"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption18, "Polygon (Dynamic)"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption19, "Rooster"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption20, "Shopping Cart"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption21, "Snowflake (Dynamic)"); Pretile_modeControl.SetValueDisplayName(Pretile_modeOptions.Pretile_modeOption22, "Star (Dynamic)"); configUI.SetPropertyControlValue(PropertyNames.Use_clipboard_as_tile, ControlInfoPropertyNames.DisplayName, string.Empty); configUI.SetPropertyControlValue(PropertyNames.Use_clipboard_as_tile, ControlInfoPropertyNames.Description, "Use Clipboard as Tile?"); configUI.SetPropertyControlValue(PropertyNames.Shape_w, ControlInfoPropertyNames.DisplayName, "Shape Width"); configUI.SetPropertyControlValue(PropertyNames.Shape_h, ControlInfoPropertyNames.DisplayName, "Shape Height"); configUI.SetPropertyControlValue(PropertyNames.Shape_ratio, ControlInfoPropertyNames.DisplayName, "Shape Ratio (%)"); configUI.SetPropertyControlValue(PropertyNames.Shape_ratio, ControlInfoPropertyNames.SliderLargeChange, 0.25); configUI.SetPropertyControlValue(PropertyNames.Shape_ratio, ControlInfoPropertyNames.SliderSmallChange, 0.05); configUI.SetPropertyControlValue(PropertyNames.Shape_ratio, ControlInfoPropertyNames.UpDownIncrement, 0.01); configUI.SetPropertyControlValue(PropertyNames.Shape_ratio, ControlInfoPropertyNames.DecimalPlaces, 3); configUI.SetPropertyControlValue(PropertyNames.Shape_ang, ControlInfoPropertyNames.DisplayName, "Shape Rotation"); configUI.SetPropertyControlType(PropertyNames.Shape_ang, PropertyControlType.AngleChooser); configUI.SetPropertyControlValue(PropertyNames.Shape_ang, ControlInfoPropertyNames.DecimalPlaces, 3); configUI.SetPropertyControlValue(PropertyNames.Shape_axis, ControlInfoPropertyNames.DisplayName, "Shape Mirror Axis"); PropertyControlInfo Shape_axisControl = configUI.FindControlForPropertyName(PropertyNames.Shape_axis); Shape_axisControl.SetValueDisplayName(Shape_axisOptions.None, "None"); Shape_axisControl.SetValueDisplayName(Shape_axisOptions.X, "X"); Shape_axisControl.SetValueDisplayName(Shape_axisOptions.Y, "Y"); configUI.SetPropertyControlValue(PropertyNames.Sub, ControlInfoPropertyNames.DisplayName, "Subpixel Level"); configUI.SetPropertyControlValue(PropertyNames.Sub, ControlInfoPropertyNames.SliderLargeChange, 0.25); configUI.SetPropertyControlValue(PropertyNames.Sub, ControlInfoPropertyNames.SliderSmallChange, 0.05); configUI.SetPropertyControlValue(PropertyNames.Sub, ControlInfoPropertyNames.UpDownIncrement, 0.01); configUI.SetPropertyControlValue(PropertyNames.Sub, ControlInfoPropertyNames.DecimalPlaces, 3); configUI.SetPropertyControlValue(PropertyNames.Zconv_Factor, ControlInfoPropertyNames.DisplayName, "Z-Convolution Factor (%)"); configUI.SetPropertyControlValue(PropertyNames.Zconv_Factor, ControlInfoPropertyNames.SliderLargeChange, 0.25); configUI.SetPropertyControlValue(PropertyNames.Zconv_Factor, ControlInfoPropertyNames.SliderSmallChange, 0.05); configUI.SetPropertyControlValue(PropertyNames.Zconv_Factor, ControlInfoPropertyNames.UpDownIncrement, 0.01); configUI.SetPropertyControlValue(PropertyNames.Zconv_Factor, ControlInfoPropertyNames.DecimalPlaces, 3); configUI.SetPropertyControlValue(PropertyNames.Zconv_Boundary, ControlInfoPropertyNames.DisplayName, "Z-Convolution Boundary"); PropertyControlInfo Zconv_BoundaryControl = configUI.FindControlForPropertyName(PropertyNames.Zconv_Boundary); Zconv_BoundaryControl.SetValueDisplayName(Zconv_BoundaryOptions.Neumann, "Neumann"); Zconv_BoundaryControl.SetValueDisplayName(Zconv_BoundaryOptions.Periodic, "Periodic"); configUI.SetPropertyControlValue(PropertyNames.Interp, ControlInfoPropertyNames.DisplayName, "Interpolation"); PropertyControlInfo InterpControl = configUI.FindControlForPropertyName(PropertyNames.Interp); InterpControl.SetValueDisplayName(InterpOptions.Nearest, "Nearest"); InterpControl.SetValueDisplayName(InterpOptions.Average, "Average"); InterpControl.SetValueDisplayName(InterpOptions.Linear, "Linear"); InterpControl.SetValueDisplayName(InterpOptions.Bicubic, "Bicubic"); InterpControl.SetValueDisplayName(InterpOptions.Lanczos, "Lanczos"); configUI.SetPropertyControlValue(PropertyNames.Tile_b, ControlInfoPropertyNames.DisplayName, "Tile Boundary"); PropertyControlInfo Tile_bControl = configUI.FindControlForPropertyName(PropertyNames.Tile_b); Tile_bControl.SetValueDisplayName(Tile_bOptions.Periodic, "Periodic"); Tile_bControl.SetValueDisplayName(Tile_bOptions.Mirror_X, "Mirror X"); Tile_bControl.SetValueDisplayName(Tile_bOptions.Mirror_Y, "Mirror Y"); Tile_bControl.SetValueDisplayName(Tile_bOptions.Mirror_XY, "Mirror XY"); configUI.SetPropertyControlValue(PropertyNames.Preprocess, ControlInfoPropertyNames.DisplayName, "Preprocess"); PropertyControlInfo PreprocessControl = configUI.FindControlForPropertyName(PropertyNames.Preprocess); PreprocessControl.SetValueDisplayName(PreprocessOptions.Neumann, "Neumann"); PreprocessControl.SetValueDisplayName(PreprocessOptions.Periodic, "Periodic"); PreprocessControl.SetValueDisplayName(PreprocessOptions.Mirror, "Mirror"); configUI.SetPropertyControlValue(PropertyNames.Fit_tile, ControlInfoPropertyNames.DisplayName, string.Empty); configUI.SetPropertyControlValue(PropertyNames.Fit_tile, ControlInfoPropertyNames.Description, "Fit Tile"); configUI.SetPropertyControlValue(PropertyNames.Points, ControlInfoPropertyNames.DisplayName, "Points/Iteration"); configUI.SetPropertyControlValue(PropertyNames.Thickness, ControlInfoPropertyNames.DisplayName, "Thickness (%)"); configUI.SetPropertyControlValue(PropertyNames.Thickness, ControlInfoPropertyNames.SliderLargeChange, 0.25); configUI.SetPropertyControlValue(PropertyNames.Thickness, ControlInfoPropertyNames.SliderSmallChange, 0.05); configUI.SetPropertyControlValue(PropertyNames.Thickness, ControlInfoPropertyNames.UpDownIncrement, 0.01); configUI.SetPropertyControlValue(PropertyNames.Thickness, ControlInfoPropertyNames.DecimalPlaces, 3); return configUI; } protected override void OnCustomizeConfigUIWindowProperties(PropertyCollection props) { // Add help button to effect UI props[ControlInfoPropertyNames.WindowTitle].Value = "Tiled Form - G'MIC"; props[ControlInfoPropertyNames.WindowHelpContentType].Value = WindowHelpContentType.PlainText; Assembly assembly = typeof(GmicPdnPluginEffect).Assembly; string fileVersion = assembly.GetCustomAttribute<AssemblyFileVersionAttribute>().Version; string copyright = assembly.GetCustomAttribute<AssemblyCopyrightAttribute>().Copyright; props[ControlInfoPropertyNames.WindowHelpContent].Value = $"Tiled Form - GmicPDN v{ fileVersion }\n\n{ copyright }\nAll rights reserved."; base.OnCustomizeConfigUIWindowProperties(props); } protected override void OnSetRenderInfo(PropertyBasedEffectConfigToken newToken, RenderArgs dstArgs, RenderArgs srcArgs) { int color_space_id = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Cs_mode).Value; int tile_id = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Pretile_mode).Value; bool bool_use_clipboard = newToken.GetProperty<BooleanProperty>(PropertyNames.Use_clipboard_as_tile).Value; int use_clipboard; int tile_w = newToken.GetProperty<Int32Property>(PropertyNames.Shape_w).Value; int tile_h = newToken.GetProperty<Int32Property>(PropertyNames.Shape_h).Value; double ratio = newToken.GetProperty<DoubleProperty>(PropertyNames.Shape_ratio).Value / 100; double rotation = newToken.GetProperty<DoubleProperty>(PropertyNames.Shape_ang).Value * -1; int shape_mirror_axis_mode = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Shape_axis).Value; double subpixel_process = newToken.GetProperty<DoubleProperty>(PropertyNames.Sub).Value + 1; double zconvf = newToken.GetProperty<DoubleProperty>(PropertyNames.Zconv_Factor).Value / 100; int zconvb = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Zconv_Boundary).Value + 1; int interp = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Interp).Value + 1; int tile_bound_id = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Tile_b).Value; int preprocess_id = (byte)(int)newToken.GetProperty<StaticListChoiceProperty>(PropertyNames.Preprocess).Value + 1; bool bool_ftmode = newToken.GetProperty<BooleanProperty>(PropertyNames.Fit_tile).Value; int ftmode; int refpts = newToken.GetProperty<Int32Property>(PropertyNames.Points).Value; int pts = refpts; double thickness = newToken.GetProperty<DoubleProperty>(PropertyNames.Thickness).Value / 100; //This is required to assign exclusively numbers for g'mic processing. if (bool_use_clipboard) { use_clipboard = 1; } else { use_clipboard = 0; } if (bool_ftmode) { ftmode = 1; } else { ftmode = 0; } string[] shapes = new string[] { "australia", "barbedwire", "circle", "crosshair", "cupid", "diamond", "dragonfly", "flip", "gumleaf", "heart", "information", "kookaburra", "mail", "mapleleaf", "paintsplat", "paw", "phone", "polygon", "rooster", "shopping_cart", "snowflake", "star" }; string gmic_pdn_shape = "gmic_pdn_shape_"; gmic_pdn_shape += shapes[tile_id]; using (PdnGmicSharp gmic = new PdnGmicSharp()) { // Add the source surface as the first input image. using (PdnGmicBitmap source = new PdnGmicBitmap(srcArgs.Surface)) { gmic.AddInputImage(source); } // The following code demonstrates adding an image // from the clipboard as a second G'MIC surface. #if USE_CLIPBOARD IClipboardService clipboard = this.Services.GetService<IClipboardService>(); Surface clipboardSurface = clipboard.TryGetSurface(); try { if (clipboardSurface != null) { using (PdnGmicBitmap clipboardBitmap = new PdnGmicBitmap(clipboardSurface, true)) { // The PdnGmicBitmap takes ownership of the clipboard surface. clipboardSurface = null; gmic.AddInputImage(clipboardBitmap); } } } finally { clipboardSurface?.Dispose(); } #endif if (tile_id == 20) { if (refpts > 6) { pts = 6; } } if (tile_id == 21 || tile_id == 17) { if (refpts < 3) { pts = 3; } } if (tile_w > 0 && tile_w < 4) { tile_w = 4; } if (tile_h > 0 && tile_h < 4) { tile_h = 4; } if (tile_w == 0 || tile_h == 0) { if (tile_w > tile_h) { tile_h = tile_w; } else { tile_w = tile_h; } } string command = string.Format(CultureInfo.InvariantCulture, "contain_clipboard={{$!==2}}\n" + "cs_conv={{s#0>=3}}\n" + "tvv=0\n" + "repeat s#0\n" + " sh[0] $>\n" + " tvv+={{iv#-1}}\n" + " rm.\n" + "done\n" + "if !$tvv return fi\n" + "m \"gmic_pdn_shape_circle: shape_circle $\"\"1\"\n" + "m \"gmic_pdn_shape_cupid: shape_cupid $\"\"1\"\n" + "m \"gmic_pdn_shape_diamond: shape_diamond $\"\"1\"\n" + "m \"gmic_pdn_shape_polygon: shape_polygon $\"\"1,$\"\"2\"\n" + "m \"gmic_pdn_shape_snowflake: shape_snowflake $\"\"1,$\"\"2\"\n" + "m \"gmic_pdn_shape_star: shape_star $\"\"1,$\"\"2,$\"\"3\"\n" + "m \"gmic_pdn_shape_heart: shape_heart $\"\"1\"\n" + "m \"gmic_pdn_shape_australia: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_barbedwire: base642img \"MiBpbnQgbGl0dGxlX2VuZGlhbgoxIDY5MSAxIDEgIzk3Mwp4nI2WSWyNURTHP1qvqvpqnh4RNSwIQWtKDAlaNbQUbdASG0QsEGJhQSIRK0OCDZFgIRYskEhEQsJWYowhhmpLa54aauh71//k+33ezUuFxcsv95xz7z3n3P+93ws6BkGgX4cg/AUwWZtyWWJWyv1htpgNbdxJ7CTGxJiYA2MeG5xztt4w/C9duF4JbMTe5MJ1S2Fkb2Zc4tk7i69cuP8c2ED8a88ey7DbuMyz2zpviC+DdeTdxn6fsc9lXh3rJf/hTzH+kuF/xvqZ/nkunPc//jh288+HT2TPz7Bb/FPZu5Kn2Rdgz4yP7I+Jb8+eJ34in7/Zy7E/kr3Lf9grXHgOzejqJ7oQXK74kbgqaHab/9o7pzhxtv5ysYedK+dg8d09f43YW3wrf1/xPfZasY/4TvYB4gfqXyn2t3GG/ZwL5zcyr9XhV1yCcTb5WfwN8v4qDqP+GejYrmBCHCN+d2n9GG+K3dDbaPpTgp5t/RHiJPEH/XL0846417sPI8XprGP9uSfu9/xjxRrxgXjAuy9n4AFxtZ2feJB7Y/bzYk/xuVho+hTXmi7EI9RpdVwUB6LDyfRxg+lTPEFfLO9L4lDqLxN/iVuD8B05zdjiLovvyXMQ9tFwGXVaP66Ih1lvFfsPRN+FjJd48Vep385vdxC+SwWc80LO0+Ku0b8WcZd4QZxI/3t6cdfFQ9S3Qzwrjucc4+RrcXdd+E620DfTwXbxNP1KUncUf5++Wp7HsW8TT6Krn8Q1efO6oJNT5LlFPCZO9eKb0bvlP4q8Z8Ey5pWLR5kX6c7OIUGfh7NOMdwnHhGnUZfFv2W+1TFEfEgfD7UTZ/reJW4U91CP5THY03Mr8e/Yd7u4Rtzp0u9KIki/a9/oh93/ceJmcYW4ibh6/J/xr6fudfTH9J5Hn+x8VotzPH+dOFOsFvsR15V87b1Yi910PVtc7MJ3yfz5GXG59DWffs4VK8VexMXxx+mL6WINbCPPJs5vkafPuLdu9N5Uu/T32I9PuvR72g3avCov3uqv4Dwy41PUX0X/X3rx0fcu15uX5N5F86K8bF5pEH7fOqKTLPQdzYvD9uZNYb9f5N/GOVd5cTH0Xkx8jnc/WhkvJc7e2SJv3e/os4S42+gnWieaH/lvsc80xt9Yp5R1XojVQfp72+LS/5NsbO/SMvpo4wmefTnnZ+NiF77z9ei80rNnodcadGj7F4i11JnDeDDnmeCexb2+FaDnVvTfwH5R/+27av4ixvb97eONX6VCnRVRd1Mq/G5H/kb+90T+ev5HjCH/vMqU+w2wUyNRMSAxNSAxIDEgIzM4Cnicc2dgYPAF4igGCCgB4nwkWg+Ik4E4E4hzgTgdiKugagGdcAT9\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_crosshair: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_dragonfly: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_flip: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_gumleaf: base642img \"MiBzaG9ydCBsaXR0bGVfZW5kaWFuCjEgOTY5IDEgMSAjNTk2CnichdXnVuMwEAXgiUMNvXdC76GFQICE3kkoSahPuu+xr7HPcM/OjGxFArP74zszNgdbVqQrCihIUIKIdf7mCiOBgEXVCJAM1fukrQ3au7UBjczURjQxU5tUs63NaKEW1UqtzNQUpdBGbWindtVBHaqTOtHFTO1S3dSNHupRvdSr+lSf6qd+DNCAGqRBDNGQGlbDaoRGMEqjaozGME7jzNQJmlCTNKnSlGZRTWOKptR0WE0/bc3QjDVLs9YczVnzNG8teP2CWqRFa4mWPMu07FmhlVirtIa1/8hQxrGO9R9s0EZoE5sxtmgrtI3tGFnKsh3sxMjRLna/2cNerDzynn3sf3OAg28OcRgqUIEVUfQc4chzjGPrBCfWKU6tM5xZ5zi3LnBhXeJSXeGKXdM1u8GN5xa3se5w96N73LOv993/c5914/X1d/9rLPFj88fwdTxGCSVVtrWsHvBgPXr9o+cJT+rZ1mergoqqosrc3lzX+yrVUFMveFGveA3V+ze8We94tz7wYX16/WfI7b9e+33ccz7sO6J3umOIxhSNsT5u8y3ud9XC76x6c1KxcxXN3VM4r4/O3Jftb1TS381dU9EauOZ1K2tY1rOsb1nvsv5lP0R7RPZMUfdVQfdYtO9kP+Z530b7Okc53fNZzgTJC8kOyRXJmAznkeSWZJrknGSfZKHkpeSn5KlkrWSw5LNktWS3ZLnk+yCT7JfzoIvPCDk/UnymtPD5ImdPA59HST6fjCSfa4Z77fdJPft+vh+Ez3BrwOdoEPN39370jF9//gJSgJz1MSAxNSAxIDEgIzMzCnicc2fwZYhiYGAoYcgHYz2GZIZMhlyGdIYqoCgATrgE/Q==\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_information: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_kookaburra: base642img \"MiBzaG9ydCBsaXR0bGVfZW5kaWFuCjEgOTU5IDEgMSAjMTEwNwp4nI2VeWyVRRTFz3TfH6Eo7qLFSDSKgFBKSyGARSgICCggdYni0gaDiSHRhESjiYZocMEqFCioiNWispQlRNPUQsUCLbZQS21tKd33je7net+88nwvmugfv5z55r2Z755778wHH/gYGEDpTXVgHO/DJE7BNEZjOVdgHQ36JAnJTMEGvoKN3IjX+Do2cRPe4Jt4i2/jHb6LzdyM9/g+tnALPuCH+Jhb8QlT8Rm3YTu3I82Shh3cgZ2WnZZdll1IZzp2cw/2KJ/zC3zJvdirfMV92MevkcEM5Rt8y0xkcj/28zt8zwM4wIM4xEPKYRweIYtZyhEcsRzFMR5TjuMET+BH/oRsZiOHOcjlSeQxD6d5GvnMxzkW4jcW4QIv4neWooxlqGAFKlmJy7yMGtaino1oZiva2YFu9qCXfRjgIEgCYoyv+Bp/8TeBEmRCJMSESbhxiMOMktEmUpZgQLJxvSSiS/UGSUCz1XjUSA4i5X6UqYbLTTgnP2uMuTbGXJ7CKY0zT+P8VePM51mNtQAFPG/jLeIFG3OJxlzKSxp3Oco17gqNu5JVGns1qllj469lvXpoQAOb0MRm9dKCFrahje3WUwe70MVu662HvdZfH/st/epzkEMY4jCG1S8pFqExRnyMj3r3FT/jp/79JdAEKM48BEmwCdZchEioCZUwmxMn4RKheI4jTIRbHR5j77n/r97rw+17wkfeH+bW0JG4nOqKMdTWLtgS7NYg9eLy41SnvwD1GTCi/urbz9bfx+bCR3NiDARGbJ6oORvW3A1ZBjWXAxzQnDpz26d57sVVzXm35r5La9DJTkuH1qTd0q41akOrrZVLW7UPWywtto7NWs8mS5NbGy2NWu8GW/d6rX+dpU57oW5Ea21v1GiPXLFcsVRbqm3/VGkflWtflfEPey4uaZ85z0gJS3BRe69Ye7CYxdqLRTivfVloKdQeLcBZ7dczPKN968CwHNfzFoZ+OaoagquShV8YrOfhoPZ3INrlB5ykH5okU/veF/WSYe+CdO7WeyLd4rw30vQOcd4n2/gqKOPxKTdgUKKQypd17ztV16NX7tD59eiRcaop6JTb9T5K0XfcppqMVrlV1yfrGbxF9SU0ys16V72IOrlRn1/QMzlW//c8quU61XWokjG6z3P4U0br/s+iXBzYymdQKmFWSyQYH/FpPMUnkcQkrOVaPME1WKOs5mqs4io8zsewkiuxQu/W5XwUy7gMS7kUS/gIFnMxFnEREpmIhVyIBVygPIz5nI8EJuAhZR7nYS7nYo5lDmZzNmZZZiGe8ZipuHSme+w97/otjnGIVVwaa8feGosZbp2BGMWlMXbs0hhMd+v0/xx7rru2n+feLmK9xrHuZ++x99y/6z89xXn87unfqa6c/K3X1nh6jUa0Mo1TMdXyIKbot9LJZE62TOIDmMiJuJf3YAIn4G7ehfGMQhTHQiRIv69jEMlRiGAossr/As3XmqgxIDI2IDEgMSAjNTMKeJxzZ/BliGJgYIhmMGJIYVBgyGbIB8JshkSGJIZShiIgTASKFjNkAOkChlSGWKBaAORKCL8=\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_mail: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_mapleleaf: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_paintsplat: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_paw: base642img \"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\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_phone: base642img \"MiBzaG9ydCBsaXR0bGVfZW5kaWFuCjEgMTU2OSAxIDEgIzEzMzEKeJytl2tQVVUYhj80R9IkTTLUFBUGJURB7sjtYDlZWWlmgefA4S5qkvcbXiC72G0q07KypKvTWDaWZXkp85aXQGH60dTUTDP96ddm/P/t3u8954gcjjPW+GPNs58FrL332mut90P6Sb8oiRJBm3l5sMToMInVERKno+ROHSPxOl4SNFGSdKIka7Kk6GSZolMlXdMlU7MkR3MkT/OlQAukSIvFox60UilFC+dcjRLH9cg8vUm63VKZrwPoj+lAeplG08t1EN2rg+k+HUKv1Bi6X4fSq0DzajyzA6/V4eyv01h6A96jO0jzRo2jL9KR9CU6mm40X4r3NW/SsRy3SePpy3QcfblOoK8AzVdiXsxXgearNYm+BjRfq5Po6zFvIdp9mjWFbjTfpKl0o/kWzG93kOYtmkZvxZzbuK06jb5VM+hbNZP+NGj+jGbTnwXNn9Nc+jbQfJvm0V/AdzMPsFRe1Onsfwnf0vxlLaQbzV/B9+0O0vxVLaEbzbfjG3cHaeNu1xn0HXo3fYfeQ98Jmu/UmfQ3QPM39V76LtB8l86ivxXk23of7/OO3k83mu/WB+hG83d1Nv09fZC+Rx+iG23cPfowvQ00b9M59PdB8w/0EXiA5h/qPLrRcUvAR+G96bjF4Hx4gI5bJB/p4/AAHbcQLIMH6LgFYDl8On6/HJ4PLoAH6Li5uL8XHqDjZuP5fPAsPK8PnglWwDPwPhXwdLxvJTwN718Jn4L5ME7GvPnRn4J59MMnYZ6r4EmY/yp4gryu1fDx8hrouGPxfWvgo7EOauBxWB+18BFYN7Xw4VhXdfBhWG918Bh5Suvht2Cd1sNvls3aAB8oG0HH7Y91vxAehf2wUBZqI/ZhqC3CXuxpjfx5A/ZrvdSz1WEv12JfW6uRGrZq7PsqND/OgVCrxNnQ0yowP76IzSsLMLfhrRzzH97K8I0CLVJfT39kv/pvQtehe11939C1F2ed9wq9eNYQfbwOPX/FFVbwOsBAq+zDwFyE5sV/hX5e96Yfc9qbkfp6WMXr6+N/+d1rj1Edxhs55o0aqxpZFGCbGy1nsV4/dofKBfheN1ba4fvckdIB7nfHyCWs6wPuOPIg9mEn1vsh7EvjYTdZurAHjmHfdoLHsZ+7sDdOYp8bz2Dfd2G/nHdzyHY3D1wknThXjL/g3OnSJfIrzi3jbzjfunSp/E42yR/kMvmTXCF/kWvkb3KD/EO28vzrBO187NSW/+ktPIeN1n9Jt1yXG6/tHrkY9Iu6OaJ3gJG8Qzf1cWO7buR9wt0YyX/W5gjuwfdupl/APEby86D5eV0f0c+B5ud0XdDX8T5G6z+ra+lG85/w3SK50fyMrqYbzU/rKo57OsxPgeandCX9JGh+EuvD/ARofkKX93Hjj1hPTpDmx/VJutH8B6w7J0jz77EenSDNj+kTHPcoaH4U69b8CGh+RBfTD4Pmh7HOzb8DLZ+/RaaYH2LeeOQb5k+JfM1cKpGDzKkS+Yq5VSxfMseK5QBzrUi+YO4VyX7mYKF8zlwslM+YkwWyj7lZIJ8yV/NlL/M2Xz5h/uYit3298rqN+Z2NXC5nXu9m3mcgh60emIb6xuqDdOSw1Q1TUS9ZHZGK/LV6YzLqLqs/kuV5nQufiNy1+iQReWv1ywTkrNU38bKB9c4Y5KvVP6NQl1p9dAfq11nwWFnMuuo25KrVWbciQ60OG4KzfwZ8EHLIA49GPW513QCZw7qvv8xGPZiLmjELdWQGas001J+pqFGT9S5J1AT8f3C7VF3+F5FZ+PIxIDE1IDEgMSAjMzMKeJxzZ/BliGJgYChhyAdjPYZkhkyGXIZ0hiqgKABOuAT9\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_rooster: base642img \"MiBzaG9ydCBsaXR0bGVfZW5kaWFuCjEgMTkyOSAxIDEgIzIzODEKeJyFl3l0lsUZxe9k+bInJAJhlUWBIJvSqGjV4gYiaEUxIKvIYgC1Lsj2IftioaKIIjsIiKAUq2VRrFBbq4IisgkIBBISEpZEZAsEmOud+T4CnJ6e/jHn99yZeWeemXlmeRGBCAMDKLU7Y1BMg0o2AiWMQOVyRuIXRiK9nFE4zihUKWc0fhXTxROM9jrEAE4xgCZqp5iX7Ci1EYPTSmXqK9N/e0lH4GYbg5OMxRmvI8M65godq3ZiUep1lHScymJxVsnpTOlSxuFcuY5X2WXd2o8pXjoe55Xv8i7Ij3bejwTpBOk4lQVwUf600xhOMlE6QdqVXcp3fiTKTgI9Y3x+W+9Pw3L9oPovZQas+r8o/9vaBPnTXDpKZYnqr7m+j0Ybm6Ty28Q2eMA+4FNr29qnVvZBfK72ptu2+A8rYY5tJ9bCStsZ/2YdrLVd8U/xX7Yn1rEuvrF9sJ7XY6O4jvXwvfgF62Oz7Yt/sAG2eGZgm31a7TbETzYba8Wd4me8AbvFT8WfbT+xEfbZ/lgj5oir2RgH7ADPPPsMVooHrZvDXvg7m2CvfQqfsKm+cWyG/eLHYq7thb+J+fLlI7FQfa8QD6uvv/JGFKvt5eIvans5b8Kvanu55uaUfc7ztPghf4ez9nkxE2X2Bc8L9iWV3wIrfshbAQ6UbgHDl9Xu7YgUV/BOBDhY/bdErPgJ70MCh2IVWyOJQY2lDVI82yKNr2is7VCRIzT2P6Ky5yOowlFie1QT14g1xNV8DLU4RuyAOhyr/MdxHSeoXhbqcaJnA07SnGYhg5M1x53QiFM0553QmK+LT6App2ptOqMZ3xS7oDnf0pp1QyZHKh4qah274xb1dZ5pWuMeaKH+zrECvmRP3K4+S5mCr9gbd3C84i5JcdEXd8mHU4rVr5mNlnxVdjy+5QDcw9f8XtnAZ3G/+nd7biOfQyu+oRiPxnd8Hm04TXs3Epv4EtrKly80fw9zuucjnCl/BuMxzpYvQ5HFufJjGDpxvhhEFy5UPMYptl9Edy6WHZDfL+JJLpGP0fL7JfTiMvkYJXsg+vBD+Rip/TAI2VyBb7RfStV+f34k28jXwXiGn8hfozEMxp+4MmwPwQtcpRgeioH8VByCQVzr9RB+rnkdiiDXeT2c68VhGMkvlT8MY/iV1+P4tdcT+a0YxCRu1PoMw2R+JwYxhZu0bkFM5Y9eT+NWr6dzu9Y1iJncofUejjncqfUPYh53i8PxLvcoroZjMfdpbwSxhDmKtyCWcr84XDGaq/0QVGzmaR8EFZP5sodp7xSozMXkIXwgvYaF0kH1uU3nQ0XF9Aj5vV0xkSZ7pGJkp+wU1Rmtud+t/Zeo78ZozvfoTImTPU5zm6N5jsYyxcYG9TtPMfk9D2K+YuIH9bdAsblF/Thu4xEs5F/wE49hkeJkF0s0htexh8c99/EE3lOsHuApzzye0dimoYBnPQtZhvf5No7yomcJYZbyHRdL4gx3XnueZ6JZxmXmA37wf9Iy1V96VXqfS8yScHqP7yktNou4yCzku2YBF5j5nG/mca6ZwzlKs80szjIzOdPM4DtmOt82b/EtM41vmqmcat7g62YKXzOTOdlM4p/Nq5xoJnC8GcexZgxHm9EcZUZyhHmFw80wDjVDONgM4stmoOL1Ip81A9jfZDPb9GFv8xR7mh7sbrqws+nILNOBHUx7PmIeYjvThg+YVrzf3Md7zb28J5zuNnezpWnJP5i7eKe5g7eb29jC3MpbzM3MNJlsbm7ijaYZm5ombGwas5G5gQ1NQ2aYBqxv6vF6cx3rmjqsY2qzlqnJGqY6q5mqrGIqs5KpyGtMGlNNBSabJM13PONMrOY/wCgTyQhjSJ2XF3DenkOpPY0SW4xj9giO2MMosoU4ZPN1Th/U+Z6rsz5HZ/lenes/Y5fdqbtiB7bbbdhqt+g++UF3S4zWdD3W23XhZDQ/a3UnfaZkdBaswmq9G8iPscqXOXs5Ppbt7l3LpVjmyxdhsV2ERfZdLLQLsMDOwzw7W3fdbMy2s5ScPcfrEK9Oc+3cq9I8fX9Zh+rM9m09qj5bY5ZNlS+/lw/ubq6JmTZZ47hNe6eB8mtihu7pc7pHylR+gTXwtnw8pXvmrMrLWB0TbKa/18tYDeOt7ifln2VV2TeqXkbYbqr4z1C9KrIb632RoTPN2Y30bsrQN+kYZzP0HsrQN+kYa+vpnZShs7gyxti6OCb7hOzRtrb2VYa+d3ZNHFZfx2WPstVQpHxnj7CVccjb6XjFpiBXdUqUH9R7JEf5xbLbq69j4qO2AY7oHeFYpLOlg/ILxcelC3iNZ76YJeYx1TNX7GjrY7/YSczRHdRR/u4TO4l7dRaF6PT1Ojcc62K38jvaOjpPHGt7Ztla2Ol5rc4bxxrYofpZtjq2Sz+ucW3zrCq6/KrY6pmOH339dGz2rKxzzLGS7ivHijrfXD8hZtlrdKddyTTdd8leh5imczE5nO++u6xDTNW9mRzOd+UhfTnf0eVX0H3lxp8aptMVyvmEZ+oVTBHT0Fn6W/FKvUHr0Fl6g9bHcZPiqIu4hdd67tD7rotidZfec12l9+jd1lV6r95njjl6g3VT/gG9rbpJ58qfs4rR7srL05vglGLX2fl6E/zq7WTZMYqP6uih/ALtz8OK/yd9W+6tHLIPKL9EPjypd2qu7u9i2T2Vf1D3S7Heoj19O86uLTtJ7QRk18FTyi+UfVR+91J+kfo6qjm5qOT0YZUd0bvFvWl6q+5RlR/RXXZGfvdW+THpIvl6UvPt9C96vxR6nYI+0sd11zl9IqxPSB/yY6uAvnpfn5Rd4HUqslV+RnPgxl6i+tkqL5U+KH1M7fdTeZl8cfqo6MrP04033vvUz7/Rk70+rO+yFbcHZBfJ7id7v/fF2dW97fy4ZDsf+oftfKWQHev7GhC282Q/q/29X3Pi2n1e+8TZ7psX7HUqj9Z+i8NA7dcCrcEeffOybSJfIvGz7EE6h9z/207N2WDbQmOPCNsBjethjSFG/bbX2B0f09zFyD/HgNhBc+T4kOoFNLY7/L+OW99s7bcicbP6ydbeWqF2n1asL/esoDeIY4reHBGa8yS9N4zWIlFvHscEJCjF6xyKK0+xiNG9ESPGhlNIh1LgCjukA1flhXTgv+r9r3SpfpT+UyL1/xdxRbqs9Res1PL0b3UXFlsxIDE1IDEgMSAjMzMKeJxzZ/BliGJgYChhyAdjPYZkhkyGXIZ0hiqgKABOuAT9\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_shape_shopping_cart: base642img \"MiBzaG9ydCBsaXR0bGVfZW5kaWFuCjEgMTM0NSAxIDEgIzEzNDIKeJytlWlQlXUUxp9jWippabmmuEI5jjlFkFcREC/34kbCVYlAQYGATAkHF1RwQZFFzS1TUzNX3PdtmpxmaiZrpj6UzdQH/aRT5mRZpq3/03Pf+/JyL5Cf+vDM7z3/dz/nOeePVmglEICadj0Ro00qUo0PPmqSzQcd+0xa0PF/XZcWcn2aEz/4OM3E4p62w0QzDMNMDGJMtKVoWzH2WmPc8rnm1zU9F4M8zZW9ulcu6AXqvJy3dU7PUWflrKMzciZEp+W0o1NyKkQn5aStE3qCOi7HHR2TYyE6KkcdHZEjQTqsh+SQo4NyMET1Uh+iA3LA1n7dJ/sceXBD3RYvajf+qwdr9Bb8zNFLFl/Q9dhDttNXLX5n3KQXN02STTd2kz8wfo/nG+nGLvIW4+b04kfy3SDeNp4mTMJO8ifGDdzB+38mtzv04o7NX4zXpgfvkL8yDqUH28i7jBuZjHsm2aYXW7jewPtcD9CLt8nfGQfzDzPGZjI28/4/bf7F9WD+TW7idQ38x4y1OQYbeV4ZBxM6zuZYbAiicD3AsVhPtmK8jnzIZmsdb3Mc3iTbMG6JD5Nr+Yy2FifhCZ1AZuEpxmtY40jGq3U2hlpcAJfF5XCTdVqHCRY3I0NTyF3IZVyrh1HMuFbPoszih1hh8TO+MwXVeoU59vMaPeXnTZwgV+ldvG9R8Ym+RLaXLy12katcr9I+8j3jKh0sdy1WSZWulBW6wlalVIZouSx3tEyW6tIgLZEljiqkXMtlvs6XEi2Rmfqa5Gu+ZGu2ZGiG+DRNxut48ahHEjReXOqSKI2SITpEIjVC+vC7emgP6aydJEzDpI22EWMMvXGffrxDj9/CDXMdV801fGO+xVfmCj43X+Cy+RQfmY/xgbmEC+YiTpszOGaOo94cxB6zBzvMTmwxW7HRbMJasxbVpgaVphLlpgJlZiFKTSlmm2IUmSLkmXxkm2xkmalIN+mYYFKQTA8m0edu9l6iSUSCGUUlIM7EYaSlkZZiOUNHWBphabgZbsllM3DsakGN51uWKyRueL7/fX4F3h+g/5viTbylBKrKVNGTbaVOa6XWUY3UOKp2WO1olayyPBHwxUpLwd5o9MIyxwMVUsHal1taLIt1kSzShbJQy6SMfpiv82SezpW5WiqlOkfm0B8lWizFOktm6Ux6pUiKtEAKNE/yNEdyNFMyNVzC9TIKbwvCTBekaUd8bXojU7vTAwMwQ/viuhmEQo3kvByC13Uw59tzeEOHcl5Fo1SjOHdcWKAx9NAILNLhnB9xqNBYGNZwqcaz70ejUhPZ70lYqW72s5d94sEjOgY17Ot27Ps69nUY+3ENe7kD+8Xfe49pKufFRHRSH+dKGvt9MuePD0+Sb1FdNZ1zbAq6aQa26svobjEDPTWTc/MVm5nopVM5f7NsTkW4ZnNOT7OZjb46nXM/x+Z09Ndc7g8zmjAXAzUf+zSvCfMRQe235k8BDjRjAZ4OYr0WBrEQB6lntOh/ZcNzm7+v+ff4vzOCCjDwHxFB/+XnQP77Xv7vgCD689GfudrN/PQLoj9/fZnTXcxnHzu/4cz5Tua7t53/XqzJdtajJ2vkr09P1mwbj7uznltYx25WXdNZ38nch6aw3j7WfRI60w8b6INOli9S8Th9so7+6GjtAyl4lD5aTf+0p69qrX3Cy3nt3zeSOH899N8o+tBNP8bTl6O4b42kT+PoVxd9G8v98EX6eBh+M1H0dTT9PRQl+jz9Phiz9Fn6P5J9MIjzsR/3joG4ZnogS8PZLx3h067oYFoj7sa//BfTxjEgMTUgMSAxICMzMwp4nHNn8GWIYmBgKGHIB2M9hmSGTIZchnSGKqAoAE64BP0=\" decompress_rle. r. $\"\"1,$\"\"1,1,1,5 if $\"\"1>512 b. 0.2% fi >=. 40%\"\n" + "m \"gmic_pdn_multicut: $=a repeat s val_a=$\"\"{{a{{$>*2+1}}}} val_b=$\"\"{{a{{$>*2+2}}}} sh $> cut. $val_a,$val_b rm. done\"\n" + "color_space={0}\n" + "tile_id={1}\n" + "use_clipboard={2}\n" + "tile_w={3}\n" + "tile_h={4}\n" + "ratio={5}\n" + "ang={6}\n" + "mirror_mode={7}\n" + "sublevel={8}\n" + "interpolation={9} interpolation={{$interpolation>3?$interpolation+1:$interpolation}}\n" + "tile_boundary={10}\n" + "image_boundary={11}\n" + "fitmode={12}\n" + "pt_iters={13}\n" + "thickness={14}\n" + "z_convolve={15}\n" + "z_convolve_boundary={16}\n" + "tile_wh={{$tile_w*$tile_h}}\n" + "if $use_clipboard if !$contain_clipboard return fi fi\n" + "if $z_convolve\n" + " offpixel={{$z_convolve*-1}}\n" + " onpixel={{$z_convolve*2+1}}\n" + " ($offpixel/$onpixel/$offpixel)\n" + " store. zmap\n" + "fi\n" + "ow={{w#0}}\n" + "oh={{h#0}}\n" + "os={{s#0}}\n" + "if !$tile_w&&$!$tile_h return fi\n" + "mini_w={{ceil(w#0/$tile_w)}}\n" + "mini_h={{ceil(h#0/$tile_h)}}\n" + "nw={{$mini_w*$tile_w}}\n" + "nh={{$mini_h*$tile_h}}\n" + "convert_colors_fwd=${{arg\\ 1+$color_space,none,rgb2ryb,cs_error,rgb2hcy,rgb2hsi,rgb2hsl,rgb2hsv,rgb2lab,rgb2lch}}\n" + "convert_colors_bwd=${{arg\\ 1+$color_space,none,ryb2rgb,cs_error,hcy2rgb,hsi2rgb,hsl2rgb,hsv2rgb,lab2rgb,lch2rgb}}\n" + "if $color_space>=0&&$color_space<3 cutf_vals=0,255,0,255,0,255,0,255\n" + "elif $color_space>=3&&$color_space<7 cutf_vals=0,360,0,1,0,1,0,255\n" + "elif $color_space==7 cutf_vals=0,100,-176,176,-176,176,0,255\n" + "else cutf_vals=0,100,0,255,{{-pi}},{{pi}},0,255\n" + "fi\n" + "if $cs_conv\n" + " if $color_space\n" + " if $color_space!=2\n" + " $convert_colors_fwd[0]\n" + " else\n" + " l[0] if s==4 s c,-3 rgb2cmyk.. a c else rgb2cmyk fi endl\n" + " fi\n" + " fi\n" + "fi\n" + "if !$use_clipboard\n" + " k[0] " + gmic_pdn_shape + " {{max($tile_w,$tile_h)*$sublevel}},$pt_iters,$thickness\n" + "else\n" + " .\n" + " if s==4\n" + " s. c,-3 to_gray.. *[-2,-1]\n" + " elif s==3\n" + " to_gray.\n" + " elif s==2\n" + " compose_channels. *\n" + " fi\n" + "fi\n" + "if $ang-360*floor($ang/360) rotate. $ang,1 fi\n" + "if $mirror_mode==1\n" + " mirror. x\n" + "elif $mirror_mode==2\n" + " mirror. y\n" + "fi\n" + "n. 0,1 autocrop. 0\n" + "if $fitmode\n" + " shape_image_ratio={{w#-1/h#-1}}\n" + " target_image_ratio={{$tile_w/$tile_h}}\n" + " resize_width={{$target_image_ratio>$shape_image_ratio?w#-1*($tile_h/h#-1):$tile_w}}\n" + " resize_height={{$target_image_ratio>$shape_image_ratio?$tile_h:h#-1*($tile_w/w#-1)}}\n" + " r. {{$resize_width*$ratio}},{{$resize_height*$ratio}},1,1,$interpolation,0,.5,.5\n" + " r. $tile_w,$tile_h,1,1,0,0,.5,.5\n" + "else\n" + " r. {{w#-1*(1/$ratio)}},{{h#-1*(1/$ratio)}},1,1,0,0,.5,.5\n" + " r. $tile_w,$tile_h,1,1,{{$interpolation}},0,.5,.5\n" + "fi\n" + "cut. 0,1 n. 0,1\n" + "avgc={{avg(crop(#-1))}}\n" + "if $tile_boundary\n" + " if $tile_boundary==1\n" + " +mirror. x\n" + " a[-2,-1] z\n" + " elif $tile_boundary==2\n" + " +mirror. y\n" + " a[-2,-1] z\n" + " else\n" + " +mirror. x\n" + " +mirror.. y\n" + " +mirror. x\n" + " a[-4--1] z\n" + " fi\n" + "fi\n" + "r[0] $nw,$nh,100%,100%,0,$image_boundary,.5,.5\n" + "$mini_w,$mini_h,2,{{s#0}},:\"begin(" + " const avg_c=$avgc;" + " const tw=$tile_w;" + " const th=$tile_h;" + " const wwhh=$tile_wh;" + " const w_avg=wwhh*avg_c;" + " const iw_avg=wwhh-w_avg;" + " $tile_boundary>2?(" + " find_pos()=1+x%2+y%2*2;" + " ti_0=crop(#-1,0,0,0,0,$tile_w,$tile_h,1,1);" + " ti_1=crop(#-1,0,0,1,0,$tile_w,$tile_h,1,1);" + " ti_2=crop(#-1,0,0,2,0,$tile_w,$tile_h,1,1);" + " ti_3=crop(#-1,0,0,3,0,$tile_w,$tile_h,1,1);" + " i_ti_0=1-ti_0;" + " i_ti_1=1-ti_1;" + " i_ti_2=1-ti_2;" + " i_ti_3=1-ti_3;" + " generate_color_a()=(" + " if(z" + " ,sum(crop_area*i_ti_0)/iw_avg;" + " ,sum(crop_area*ti_0)/w_avg;" + " );" + " );" + " generate_color_b()=(" + " if(z" + " ,sum(crop_area*i_ti_1)/iw_avg;" + " ,sum(crop_area*ti_1)/w_avg;" + " );" + " );" + " generate_color_c()=(" + " if(z" + " ,sum(crop_area*i_ti_2)/iw_avg;" + " ,sum(crop_area*ti_2)/w_avg;" + " );" + " );" + " generate_color_d()=(" + " if(z" + " ,sum(crop_area*i_ti_3)/iw_avg;" + " ,sum(crop_area*ti_3)/w_avg;" + " );" + " );" + " generate_color()=arg(find_pos(),generate_color_a(),generate_color_b(),generate_color_c(),generate_color_d());" + " ):" + " $tile_boundary?(" + " $tile_boundary==2?(find_pos()=y%2;):(find_pos()=x%2;);" + " ti_0=crop(#-1,0,0,0,0,$tile_w,$tile_h,1,1);" + " ti_1=crop(#-1,0,0,1,0,$tile_w,$tile_h,1,1);" + " i_ti_0=1-ti_0;" + " i_ti_1=1-ti_1;" + " generate_color()=(" + " find_pos()?(" + " if(z" + " ,sum(crop_area*i_ti_1)/iw_avg;" + " ,sum(crop_area*ti_1)/w_avg;" + " );" + " ):(" + " if(z" + " ,sum(crop_area*i_ti_0)/iw_avg;" + " ,sum(crop_area*ti_0)/w_avg;" + " );" + " );" + " );" + " ):(" + " ti_0=crop(#-1,0,0,0,0,$tile_w,$tile_h,1,1);" + " i_ti_0=1-ti_0;" + " generate_color()=(" + " if(z" + " ,sum(crop_area*i_ti_0)/iw_avg;" + " ,sum(crop_area*ti_0)/w_avg;" + " );" + " );" + " );" + ");" + "crop_area=crop(#0,x*$tile_w,y*$tile_h,0,c,$tile_w,$tile_h,1,1);" + "generate_color();\"\n" + "if $z_convolve\n" + " $zmap\n" + " convolve.. .,$z_convolve_boundary\n" + " rm.\n" + "fi\n" + "if $color_space&&$cs_conv\n" + " if $color_space!=2\n" + " if $z_convolve gmic_pdn_multicut. $cutf_vals fi\n" + " $convert_colors_bwd.\n" + " else\n" + " if s==4 cmyk2rgb.\n" + " else s. c,-4 cmyk2rgb.. a[-2,-1] c\n" + " fi\n" + " if $z_convolve cut. 0,255 fi\n" + " fi\n" + "else\n" + " if $z_convolve cut. 0,255 fi\n" + "fi\n" + "$mini_w,$mini_h,1,1,:\"begin(" + " const ss=s#-1;" + " const length=$tile_wh*ss;" + " nv()=vc_0+vc_1*tile_v;" + " $tile_boundary==3?(" + " find_pos()=1+x%2+y%2*2;" + " ti_0=crop(#-2,0,0,0,0,$tile_w,$tile_h,1,1);" + " ti_1=crop(#-2,0,0,1,0,$tile_w,$tile_h,1,1);" + " ti_2=crop(#-2,0,0,2,0,$tile_w,$tile_h,1,1);" + " ti_3=crop(#-2,0,0,3,0,$tile_w,$tile_h,1,1);" + " tile_v0=resize(ti_0,length,0,2);" + " tile_v1=resize(ti_1,length,0,2);" + " tile_v2=resize(ti_2,length,0,2);" + " tile_v3=resize(ti_3,length,0,2);" + " generate_tile()=(" + " tile_v=arg(find_pos(),tile_v0,tile_v1,tile_v2,tile_v3);" + " nv=nv();" + " draw(#0,nv,x*$tile_w,y*$tile_h,0,0,$tile_w,$tile_h,1,ss)" + " );" + " ):" + " $tile_boundary?(" + " $tile_boundary==2?(find_pos()=y%2;):(find_pos()=x%2;);" + " ti_0=crop(#-2,0,0,0,0,$tile_w,$tile_h,1,1);" + " ti_1=crop(#-2,0,0,1,0,$tile_w,$tile_h,1,1);" + " tile_v0=resize(ti_0,length,0,2);" + " tile_v1=resize(ti_1,length,0,2);" + " generate_tile()=(" + " tile_v=find_pos()?tile_v1:tile_v0;" + " nv=nv();" + " draw(#0,nv,x*$tile_w,y*$tile_h,0,0,$tile_w,$tile_h,1,ss);" + " );" + " ):(" + " ti=crop(#-2,0,0,0,0,$tile_w,$tile_h,1,1);" + " tile_v=resize(ti,length,0,2);" + " generate_tile()=(" + " nv=nv();" + " draw(#0,nv,x*$tile_w,y*$tile_h,0,0,$tile_w,$tile_h,1,ss);" + " );" + " );" + ");" + "c0=J(#-1,0,0,1);" + "c1=I(#-1);" + "diff=c1-c0;" + "vc_0=resize(c0,length,1,0);" + "vc_1=resize(diff,length,1,0);" + "generate_tile();\"\n" + "rm[-2,-1]\n" + "r[0] $ow,$oh,100%,$os,0,0,.5,.5\n" + "um gmic_pdn_shape_circle,gmic_pdn_shape_cupid,gmic_pdn_shape_diamond,gmic_pdn_shape_polygon,gmic_pdn_shape_snowflake,gmic_pdn_shape_star,gmic_pdn_shape_heart,gmic_pdn_shape_australia,gmic_pdn_shape_barbedwire,gmic_pdn_shape_crosshair,gmic_pdn_shape_dragonfly,gmic_pdn_shape_flip,gmic_pdn_shape_gumleaf,gmic_pdn_shape_information,gmic_pdn_shape_kookaburra,gmic_pdn_shape_mail,gmic_pdn_shape_mapleleaf,gmic_pdn_shape_paintsplat,gmic_pdn_shape_paw,gmic_pdn_shape_phone,gmic_pdn_shape_rooster,gmic_pdn_shape_shopping_cart,gmic_pdn_multicut", color_space_id.ToString(CultureInfo.InvariantCulture), tile_id.ToString(CultureInfo.InvariantCulture), use_clipboard.ToString(CultureInfo.InvariantCulture), tile_w.ToString(CultureInfo.InvariantCulture), tile_h.ToString(CultureInfo.InvariantCulture), ratio.ToString(CultureInfo.InvariantCulture), rotation.ToString(CultureInfo.InvariantCulture), shape_mirror_axis_mode.ToString(CultureInfo.InvariantCulture), subpixel_process.ToString(CultureInfo.InvariantCulture), interp.ToString(CultureInfo.InvariantCulture), tile_bound_id.ToString(CultureInfo.InvariantCulture), preprocess_id.ToString(CultureInfo.InvariantCulture), ftmode.ToString(CultureInfo.InvariantCulture), pts.ToString(CultureInfo.InvariantCulture), thickness.ToString(CultureInfo.InvariantCulture), zconvf.ToString(CultureInfo.InvariantCulture), zconvb.ToString(CultureInfo.InvariantCulture)); // Run the G'MIC command and allow it to receive cancellation info from Paint.NET. gmic.RunGmic(command, () => this.IsCancelRequested); if (gmic.Error != null) { this.Services.GetService<IExceptionDialogService>().ShowErrorDialog(null, gmic.Error); } else if (!gmic.Canceled) { Surface output = gmic.OutputImages?[0]?.Surface; if (output != null) { // Copy the rendered G'MIC image to the destination surface, // and restrict the copied portions to the user's selection. dstArgs.Surface.CopySurface(output, this.EnvironmentParameters.GetSelectionAsPdnRegion()); } } } base.OnSetRenderInfo(newToken, dstArgs, srcArgs); } protected override void OnRender(Rectangle[] renderRects, int startIndex, int length) { // All work is performed in OnSetRenderInfo. } } } PluginSupportInfo.cs Spoiler //////////////////////////////////////////////////////////////////////// // // This file is part of gmic-sharp-pdn-example, an example Paint.NET // Effect plugin that uses the gmic-sharp-pdn library. // // Copyright (c) 2020 Nicholas Hayes // // This file is licensed under the MIT License. // See LICENSE.txt for complete licensing and attribution information. // //////////////////////////////////////////////////////////////////////// using PaintDotNet; using System; using System.Reflection; namespace GmicPDNPlugin { public class PluginSupportInfo : IPluginSupportInfo { private readonly Assembly assembly = typeof(PluginSupportInfo).Assembly; public string Author => "Reptorian\nG'MIC# Author : Nicholas Hayes and David Tschumperlé"; public string Copyright => "Copyright © 2021 Reptorian, Nicholas Hayes and David Tschumperlé"; public string DisplayName => this.assembly.GetCustomAttribute<AssemblyProductAttribute>().Product; public Version Version => this.assembly.GetName().Version; public Uri WebsiteUri => new Uri("https://forums.getpaint.net/topic/116417-gmicsharppdn"); } } AssemblyInfo.cs Spoiler //////////////////////////////////////////////////////////////////////// // // This file is part of gmic-sharp-pdn-example, an example Paint.NET // Effect plugin that uses the gmic-sharp-pdn library. // // Copyright (c) 2020 Nicholas Hayes // // This file is licensed under the MIT License. // See LICENSE.txt for complete licensing and attribution information. // //////////////////////////////////////////////////////////////////////// using System.Reflection; using System.Runtime.InteropServices; using System.Runtime.Versioning; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("Generates Form Pixel onto canvas.")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Reptorian")] [assembly: AssemblyProduct("Tiled Form - GmicPDN")] [assembly: AssemblyCopyright("Copyright © 2021 Reptorian, Nicholas Hayes and David Tschumperlé")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("fbfe3f2e-91cb-40c7-bdd9-aace796d52dc")] [assembly: SupportedOSPlatform("windows")] // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("2.0.6")] [assembly: AssemblyFileVersion("2.0.6")] EDIT: Moved Tiled Form to Stylize EDIT: Added Z-Convolution Option EDIT as of 12/17/2020: Replaced to color[0] with conditionals. Now filter is faster for B&W image. Doesn't really make much of a difference, but it's slightly faster. EDIT: Icon added, and max dimension is 512. EDIT as of 3/17/2021: Allow users to use either only width or height to define tile size. EDIT as of 10/27/2021: Update to .NET 5.0 version. EDIT as of 10/29/2021: All problems resolved. EDIT as of 10/30/2021: Minor bug fix. Now, the result should look closer to original image. EDIT as of 12/02/2021: Changed g'mic code as it's a bug fix release. It is also updated to .NET 6 support. Edited December 2, 2021 by Reptillian 1 2 Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
toe_head2001 Posted December 5, 2020 Share Posted December 5, 2020 1 hour ago, Reptillian said: public enum Cs_modeOptions { Cs_modeOption1, Cs_modeOption2, Cs_modeOption3, Cs_modeOption4, Cs_modeOption5, Cs_modeOption6, Cs_modeOption7, Cs_modeOption8, Cs_modeOption9 } You can name your enumeration items anything you want, so giving them meaning for names makes things easier in the long haul. For example: public enum Cs_modeOptions { RGB, RYB, CMYK, HCY, HSI, HSL, HSV, LAB, LCH } Quote June 7th, 2023: Sorry about any broken images in my posts. The underlying DNS issue should be resolved soon. My Gallery | My Plugin Pack Layman's Guide to CodeLab Link to comment Share on other sites More sharing options...
Djisves Posted December 5, 2020 Share Posted December 5, 2020 7 hours ago, Reptillian said: Note: First of all, if you don't have the libGmicSharpNative.dll... Thank you for your efforts @Reptillian, but your instructions are terribly complicated. I lost you at "Introducing the second g'mic-pdn plugin to exist...". Please remember that vast majority of us users do not understand the language you use in the Plugin Developers section. Quote Link to comment Share on other sites More sharing options...
Reptillian Posted December 5, 2020 Author Share Posted December 5, 2020 6 hours ago, Djisves said: Thank you for your efforts @Reptillian, but your instructions are terribly complicated. I lost you at "Introducing the second g'mic-pdn plugin to exist...". Please remember that vast majority of us users do not understand the language you use in the Plugin Developers section. Ok, I simplified the installation instructions. The first sentence can be ignored though it is only there as it is not the first gmic-pdn plugin. What null54 created was the first one. Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Djisves Posted December 5, 2020 Share Posted December 5, 2020 So, where would one look to see for the "sharp" folder? And how or why would one have had it already? Should it be there if one already has the first "g'mic-pdn plugin to exist"? Does it have to be so complicated? Wouldn't it be easier to just put everything together in one zip? Quote Link to comment Share on other sites More sharing options...
Reptillian Posted December 5, 2020 Author Share Posted December 5, 2020 (edited) 25 minutes ago, Djisves said: So, where would one look to see for the "sharp" folder? And how or why would one have had it already? Should it be there if one already has the first "g'mic-pdn plugin to exist"? Does it have to be so complicated? Wouldn't it be easier to just put everything together in one zip? They should look inside plugin installation folder. On the second question, the dll should be there though the folder name inside gmicsharpnative on the two are different. That won't matter as I'm the only one that's going to be porting gmic scripts into pdn as I am a gmic filter developer with knowing c#. I'll build the water example if there is any interest from others so that one won't need dll in two different folders. The dll file is 17000+ KB. Putting it together is not a option. Edited December 5, 2020 by Reptillian 1 Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
lynxster4 Posted December 5, 2020 Share Posted December 5, 2020 19 hours ago, Reptillian said: and extract 'GmicSharpNative' into plugin installation folder. What folder is this? The 'gmic' folder under 'paint.net' or the 'Effects' folder? And under what menu does the effect show up? Quote My Art Gallery | My Shape Packs | ShapeMaker Mini Tut | Air Bubble Stained Glass Chrome Text with Reflections | Porcelain Text w/ Variegated Coloring | Realistic Knit PatternOpalescent Stained Glass | Frosted Snowman Cookie | Leather Texture | Plastic Text | Silk Embroidery Visit my Personal Website "Never, ever lose your sense of humor - you'll live longer" Link to comment Share on other sites More sharing options...
Reptillian Posted December 5, 2020 Author Share Posted December 5, 2020 17 minutes ago, lynxster4 said: What folder is this? The 'gmic' folder under 'paint.net' or the 'Effects' folder? And under what menu does the effect show up? Effects folder and Artistic. Should it be moved to Stylize? Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Reptillian Posted December 7, 2020 Author Share Posted December 7, 2020 I updated the GMICSharpNative installation via github website. I just hope it's clear. Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Reptillian Posted December 8, 2020 Author Share Posted December 8, 2020 I moved it to Stylize since that fits better. 1 Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
null54 Posted December 8, 2020 Share Posted December 8, 2020 On 12/6/2020 at 5:22 PM, Reptillian said: I updated the GMICSharpNative installation via github website. I just hope it's clear. I would suggest that you post your project to GitHub. This would allow you to include the GmicSharpNative DLLs in the download, GitHub has a much larger file size limit than the forum. My gmic-sharp-pdn-example has the binaries hosted on GitHub and includes the GmicSharpNative DLLs in the download. Also, your GmicSharpNative build is missing the win-x86 DLL. Quote Plugin Pack | PSFilterPdn | Content Aware Fill | G'MIC | Paint Shop Pro Filetype | RAW Filetype | WebP Filetype The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait Link to comment Share on other sites More sharing options...
Reptillian Posted December 9, 2020 Author Share Posted December 9, 2020 (edited) @null54 I will do that when I finish converting the possible g'mic filters of my own. Not all of my own filters can be converted as I don't think it's easily possible to automate hiding UI element without resorting to WinForm, right? That being said, the x86 DLL wasn't built and I assumed that it wasn't built because I'm not using a x86 pc. I should check that, and come back to you. Edited December 9, 2020 by Reptillian Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
lynxster4 Posted December 9, 2020 Share Posted December 9, 2020 Your plugin works as expected @Reptillian. I put little hearts in the flower I used for the Fragment Blur+ plugin. No need to post example. Thanks! 🙂 1 Quote My Art Gallery | My Shape Packs | ShapeMaker Mini Tut | Air Bubble Stained Glass Chrome Text with Reflections | Porcelain Text w/ Variegated Coloring | Realistic Knit PatternOpalescent Stained Glass | Frosted Snowman Cookie | Leather Texture | Plastic Text | Silk Embroidery Visit my Personal Website "Never, ever lose your sense of humor - you'll live longer" Link to comment Share on other sites More sharing options...
null54 Posted December 9, 2020 Share Posted December 9, 2020 1 hour ago, Reptillian said: Not all of my own filters can be converted as I don't think it's easily possible to automate hiding UI element without resorting to WinForm, right? Correct. Quote Plugin Pack | PSFilterPdn | Content Aware Fill | G'MIC | Paint Shop Pro Filetype | RAW Filetype | WebP Filetype The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait Link to comment Share on other sites More sharing options...
Reptillian Posted December 16, 2020 Author Share Posted December 16, 2020 (edited) New feature! Z-Convolution. What Z-Convolution does is boost contrast within tile, and it does it by what the name say. Also, better output with HSx and LCH color space. You won't get strange color within the middle of outside/inside shape areas. Edited December 16, 2020 by Reptillian Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Panchdara Posted December 16, 2020 Share Posted December 16, 2020 (edited) Same happened when I tried the Fragment Blur+. I reinstalled the GMICSharpNative and the Blur+ worked. Then tried this and both now crash. Not stable from where I stand. Spoiler Exception: GmicSharp.GmicException: *** Error in ./*if/*if/ *** Command 'shared': [instance(800,600,1,1,000001d1226cf040,non-shared)] gmic<float>::get_shared_channels(): Invalid request of a shared-memory subset (0->799,0->599,0->0,0->2) at GmicSharp.Interop.GmicNative.HandleError(GmicStatus status, GmicErrorInfo errorInfo) at GmicSharp.Interop.GmicNative.RunGmic(SafeGmicImageList list, GmicOptions options) at GmicSharp.GmicRunner`1.GmicWorker(GmicWorkerArgs args) Diagnostics: Application paint.net 4.2.14 (Final 4.214.7601.39231) Build Date Friday, October 23, 2020 Install type Classic Hardware accelerated rendering (GPU) True Animations True DPI 96 (1.00x scale) Language en-US OS Windows 10 Pro x64 (10.0.19042.0) (0x30) .NET Runtime 4.0.30319.42000 Physical Memory 32,680 MB CPU Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz Speed ~3005 MHz Cores / Threads 8 / 16 Features SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2 Pointer Virtual HID Type IntegratedPen Contacts 1 Pointer Virtual HID Type ExternalPen Contacts 1 Video Card NVIDIA GeForce GTX 760 Dedicated Video RAM 4,052 MB Dedicated System RAM 0 MB Shared System RAM 16,340 MB Vendor ID 0x10DE Device ID 0x1187 Subsystem ID 0x84A81043 Revision 161 LUID 0x00014A30 Flags AcgCompatible, SupportMonitoredFences, KeyedMutexConformance Graphics Preemption DmaBufferBoundary Compute Preemption DmaBufferBoundary Outputs 1 Feature Level Direct3D_11_0 DXGI Formats A8_UNorm, B8G8R8A8_UNorm, R16G16B16A16_UNorm, R16G16B16A16_Float, R32G32B32A32_Float Buffer Precision UNorm8bpc, UNorm8bpcSrgb, UNorm16bpc, Float16bpc, Float32bpc Video Card Microsoft Basic Render Driver Dedicated Video RAM 0 MB Dedicated System RAM 0 MB Shared System RAM 16,340 MB Vendor ID 0x1414 Device ID 0x008C Subsystem ID 0x00000000 Revision 0 LUID 0x000154F6 Flags Software, AcgCompatible, SupportMonitoredFences, KeyedMutexConformance Graphics Preemption InstructionBoundary Compute Preemption InstructionBoundary Outputs 0 Feature Level Direct3D_12_1 DXGI Formats A8_UNorm, B8G8R8A8_UNorm, R16G16B16A16_UNorm, R16G16B16A16_Float, R32G32B32A32_Float Buffer Precision UNorm8bpc, UNorm8bpcSrgb, UNorm16bpc, Float16bpc, Float32bpc Managed assemblies 419 mscorlib mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 PaintDotNet PaintDotNet, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Core PaintDotNet.Core, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Base PaintDotNet.Base, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null WindowsBase WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 System.Core System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Drawing System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a PresentationFramework PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 PresentationCore PresentationCore, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 System.Windows.Forms System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 PaintDotNet.SystemLayer PaintDotNet.SystemLayer, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Framework PaintDotNet.Framework, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Resources PaintDotNet.Resources, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Effects PaintDotNet.Effects, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.Data PaintDotNet.Data, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null PaintDotNet.SystemLayer.Native.x64 PaintDotNet.SystemLayer.Native.x64, Version=4.214.7601.39231, Culture=neutral, PublicKeyToken=null System.Configuration System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Xml System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Xaml System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Runtime.CompilerServices.Unsafe System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ABRFileType ABRFileType, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null AnimGIF AnimGIF, Version=2.4.4119.28305, Culture=neutral, PublicKeyToken=null Base64FileType Base64FileType, Version=1.0.0.8, Culture=neutral, PublicKeyToken=null CSVFiletype CSVFiletype, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null FSHfiletype FSHfiletype, Version=1.2.4.0, Culture=neutral, PublicKeyToken=null HisFileType HisFileType, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null IcoCur IcoCur, Version=4.0.1.0, Culture=neutral, PublicKeyToken=null ImPS,EPS,AI.Open.FileType ImPS\,EPS\,AI.Open.FileType, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ImXcf.FileType ImXcf.FileType, Version=1.4.0.95, Culture=neutral, PublicKeyToken=null Jpeg2000Filetype Jpeg2000Filetype, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null OptionBasedLibrary v0.6 OptionBasedLibrary v0.6, Version=0.5.0.0, Culture=neutral, PublicKeyToken=null Accessibility Accessibility, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a LowColor LowColor, Version=1.0.4.0, Culture=neutral, PublicKeyToken=null OptimizedJPEG OptimizedJPEG, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null System.Buffers System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51 OptiPngFileType OptiPngFileType, Version=11.1.0.0, Culture=neutral, PublicKeyToken=null PaintShopProFiletype PaintShopProFiletype, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null PatternFileType PatternFileType, Version=1.0.5.0, Culture=neutral, PublicKeyToken=null System.Collections.Immutable System.Collections.Immutable, Version=1.2.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a PhotoShop PhotoShop, Version=2.5.0.40665, Culture=neutral, PublicKeyToken=null RawFileType RawFileType, Version=1.2.2.0, Culture=neutral, PublicKeyToken=null System.Memory System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51 TileImageFileType TileImageFileType, Version=1.0.0.1, Culture=neutral, PublicKeyToken=null WicDecoder WicDecoder, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null DdsFileTypePlus DdsFileTypePlus, Version=1.10.7.0, Culture=neutral, PublicKeyToken=null WebPFileType WebPFileType, Version=1.3.4.0, Culture=neutral, PublicKeyToken=null AvifFileType AvifFileType, Version=1.1.4.0, Culture=neutral, PublicKeyToken=null AA's_Assistant "AA's_Assistant", Version=1.1.4329.33034, Culture=neutral, PublicKeyToken=null Aardvark Aardvark, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null AdvancedRotate AdvancedRotate, Version=1.0.3663.28009, Culture=neutral, PublicKeyToken=null AForge AForge, Version=2.2.5.0, Culture=neutral, PublicKeyToken=c1db6ff4eaa06aeb AForge.Imaging AForge.Imaging, Version=2.2.5.0, Culture=neutral, PublicKeyToken=ba8ddea9676ca48b Align Object Align Object, Version=1.0.1.9, Culture=neutral, PublicKeyToken=null AlignPlugin AlignPlugin, Version=1.5.1.0, Culture=neutral, PublicKeyToken=null Alpha2Gray Alpha2Gray, Version=4.5.6832.21862, Culture=neutral, PublicKeyToken=null AlphaContrast AlphaContrast, Version=1.0.3813.18307, Culture=neutral, PublicKeyToken=null AlphaMask AlphaMask, Version=2.0.3574.41943, Culture=neutral, PublicKeyToken=null AlphaSpace AlphaSpace, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null AlphaThreshold AlphaThreshold, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null Alpha_to_0 Alpha_to_0, Version=1.0.4452.22746, Culture=neutral, PublicKeyToken=null Alpha_to_255 Alpha_to_255, Version=1.0.4452.22782, Culture=neutral, PublicKeyToken=null Animal Animal, Version=2.2.5.20384, Culture=neutral, PublicKeyToken=null AnimationEffect AnimationEffect, Version=1.0.0.96, Culture=neutral, PublicKeyToken=null Apply Texture Apply Texture, Version=1.0.0.1, Culture=neutral, PublicKeyToken=null ArgusPaintNet.EdgeDetection ArgusPaintNet.EdgeDetection, Version=1.0.6834.34844, Culture=neutral, PublicKeyToken=null ArgusPaintNet.FFT ArgusPaintNet.FFT, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArgusPaintNet.Shared ArgusPaintNet.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArgusPDN.Barcode ArgusPDN.Barcode, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArgusPDN.EdgeDetect ArgusPDN.EdgeDetect, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArgusPDN.FFTEffects ArgusPDN.FFTEffects, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArgusPDN.Unblend ArgusPDN.Unblend, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ArtyThing ArtyThing, Version=1.0.5.0, Culture=neutral, PublicKeyToken=null AutoChrome AutoChrome, Version=1.2.5.19669, Culture=neutral, PublicKeyToken=null AutoChromeNoise AutoChromeNoise, Version=1.2.5.23331, Culture=neutral, PublicKeyToken=null BandWPlus BandWPlus, Version=1.3.7359.317, Culture=neutral, PublicKeyToken=null Barcode Barcode, Version=1.5.1.0, Culture=neutral, PublicKeyToken=null Bars Bars, Version=1.2.5.23704, Culture=neutral, PublicKeyToken=null BBChart BBChart, Version=1.0.7358.33924, Culture=neutral, PublicKeyToken=null System.Windows.Forms.DataVisualization System.Windows.Forms.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 BBOutlinedGradientText BBOutlinedGradientText, Version=4.6.7358.38713, Culture=neutral, PublicKeyToken=null Bezncurve Bezncurve, Version=4.0.1.0, Culture=neutral, PublicKeyToken=null Bizarro-Negation Bizarro-Negation, Version=1.0.4617.21771, Culture=neutral, PublicKeyToken=null BlackandAlpha+ BlackandAlpha+, Version=1.2.4329.272, Culture=neutral, PublicKeyToken=null BlendModesPlus BlendModesPlus, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null BlurFill BlurFill, Version=1.5.1.0, Culture=neutral, PublicKeyToken=null Borders N' Shapes "Borders N' Shapes", Version=4.0.4642.26476, Culture=neutral, PublicKeyToken=null Boutons Boutons, Version=1.2.5.23747, Culture=neutral, PublicKeyToken=null boxfitting boxfitting, Version=1.1.6164.32856, Culture=neutral, PublicKeyToken=null BrushFactory BrushFactory, Version=1.3.0.41507, Culture=neutral, PublicKeyToken=null BrushFilter BrushFilter, Version=1.3.0.13866, Culture=neutral, PublicKeyToken=null BulletinBoardTrim BulletinBoardTrim, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Burninate Burninate, Version=4.6.7358.31797, Culture=neutral, PublicKeyToken=null Calendar Calendar, Version=4.6.7358.32649, Culture=neutral, PublicKeyToken=null CalliColour CalliColour, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null CellMaker CellMaker, Version=1.1.6139.29120, Culture=neutral, PublicKeyToken=null Centerlines 2 Centerlines 2, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null CenterLines CenterLines, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null ChangeExtremeColors ChangeExtremeColors, Version=1.2.6.30674, Culture=neutral, PublicKeyToken=null ChessFEN ChessFEN, Version=1.1.6139.31083, Culture=neutral, PublicKeyToken=null CircleText CircleText, Version=1.4.4415.32488, Culture=neutral, PublicKeyToken=null CircularText CircularText, Version=2.0.1.0, Culture=neutral, PublicKeyToken=null ClampedGaussianBlur ClampedGaussianBlur, Version=2.1.0.0, Culture=neutral, PublicKeyToken=null ClipDisplaceAA ClipDisplaceAA, Version=1.2.4.0, Culture=neutral, PublicKeyToken=null ClipWarpNew ClipWarpNew, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null OptionBasedLibrary v0.7.9 OptionBasedLibrary v0.7.9, Version=0.7.9.1561, Culture=neutral, PublicKeyToken=null Clock Clock, Version=1.1.6245.30896, Culture=neutral, PublicKeyToken=null Cobweb Cobweb, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null CodeLab CodeLab, Version=6.0.7481.36627, Culture=neutral, PublicKeyToken=null Color Match Color Match, Version=4.0.4642.26532, Culture=neutral, PublicKeyToken=null coloraberation coloraberation, Version=1.2.5.15647, Culture=neutral, PublicKeyToken=null ColorBalance ColorBalance, Version=4.7.7401.17173, Culture=neutral, PublicKeyToken=null ColorHarmonies.Effect ColorHarmonies.Effect, Version=0.7.0.155, Culture=neutral, PublicKeyToken=null ColoRise ColoRise, Version=1.0.6218.40504, Culture=neutral, PublicKeyToken=null ColorModulo ColorModulo, Version=1.2.5.25136, Culture=neutral, PublicKeyToken=null ColorSketch ColorSketch, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null ColorZoomBlur ColorZoomBlur, Version=1.2.5.17431, Culture=neutral, PublicKeyToken=null CombinedAdjustments CombinedAdjustments, Version=1.1.7358.40688, Culture=neutral, PublicKeyToken=null System.Xml.Linq System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 CompoGrids CompoGrids, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null System.Numerics System.Numerics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Compotool Compotool, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null PresentationFramework-SystemXmlLinq PresentationFramework-SystemXmlLinq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ComputeShaderEffects ComputeShaderEffects, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null ContentAwareFill ContentAwareFill, Version=1.4.3.0, Culture=neutral, PublicKeyToken=null Contour Contour, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null SharpDX.Direct3D11 SharpDX.Direct3D11, Version=2.5.0.0, Culture=neutral, PublicKeyToken=627a3d6d1956f55a CoordinatePlanePoints CoordinatePlanePoints, Version=1.1.6846.29158, Culture=neutral, PublicKeyToken=null CreativeTextPro CreativeTextPro, Version=1.1.7358.34307, Culture=neutral, PublicKeyToken=null SharpDX SharpDX, Version=2.5.0.0, Culture=neutral, PublicKeyToken=627a3d6d1956f55a Cuboids Cuboids, Version=1.1.1.0, Culture=neutral, PublicKeyToken=null SharpDX.D3DCompiler SharpDX.D3DCompiler, Version=2.5.0.0, Culture=neutral, PublicKeyToken=627a3d6d1956f55a Curves+ Curves+, Version=4.0.6119.31044, Culture=neutral, PublicKeyToken=null CustomBrushesMini CustomBrushesMini, Version=2.2.5286.39584, Culture=neutral, PublicKeyToken=null DHShapeMaker DHShapeMaker, Version=1.7.0.0, Culture=neutral, PublicKeyToken=null Diagonal Lines Diagonal Lines, Version=1.0.4800.36619, Culture=neutral, PublicKeyToken=null Diffuse Diffuse, Version=1.0.3254.27766, Culture=neutral, PublicKeyToken=null Dimensions Dimensions, Version=1.3.6826.38472, Culture=neutral, PublicKeyToken=null Displacement Displacement, Version=1.3.5.15773, Culture=neutral, PublicKeyToken=null DispMap DispMap, Version=2.1.7197.13119, Culture=neutral, PublicKeyToken=null DistortingMirror DistortingMirror, Version=1.2.5.15788, Culture=neutral, PublicKeyToken=null DistortThis DistortThis, Version=2.9.0.0, Culture=neutral, PublicKeyToken=null Donut Donut, Version=1.2.5.15739, Culture=neutral, PublicKeyToken=null dpyColorBalance dpyColorBalance, Version=1.1.4330.37850, Culture=neutral, PublicKeyToken=null DragFrom DragFrom, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null Dream Dream, Version=4.6.7358.35004, Culture=neutral, PublicKeyToken=null Droste Droste, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null Dryad Dryad, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null EarthsAndGreys EarthsAndGreys, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null EdgeExpander EdgeExpander, Version=1.0.5863.38192, Culture=neutral, PublicKeyToken=null EdHarvey.Effects EdHarvey.Effects, Version=4.0.5120.42730, Culture=neutral, PublicKeyToken=null EdHarvey.FastFx EdHarvey.FastFx, Version=4.0.5120.35262, Culture=neutral, PublicKeyToken=null System.Design System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a EditableText EditableText, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null Emboss+ Emboss+, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null EngraveEmboss EngraveEmboss, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null SBCommon SBCommon, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null EOEffects EOEffects, Version=1.10.16.12, Culture=neutral, PublicKeyToken=null IniFile IniFile, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null Equirectangular Diffuse Transform Equirectangular Diffuse Transform, Version=1.0.7159.445, Culture=neutral, PublicKeyToken=null ExpandColor ExpandColor, Version=1.2.5.15745, Culture=neutral, PublicKeyToken=null ExtendBorder ExtendBorder, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null Facet Facet, Version=1.0.3.0, Culture=neutral, PublicKeyToken=null FibonacciFill FibonacciFill, Version=1.1.6139.28851, Culture=neutral, PublicKeyToken=null FillFromClipboard FillFromClipboard, Version=4.7.7358.36519, Culture=neutral, PublicKeyToken=null FillFromFile FillFromFile, Version=4.7.7358.36581, Culture=neutral, PublicKeyToken=null FillPalette FillPalette, Version=1.2.5.32012, Culture=neutral, PublicKeyToken=null Film Film, Version=4.0.4642.26607, Culture=neutral, PublicKeyToken=null FindEdges FindEdges, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null Flip Flip, Version=4.6.7358.36953, Culture=neutral, PublicKeyToken=null Flourish Flourish, Version=1.0.3.0, Culture=neutral, PublicKeyToken=null FloydSteinbergDithering FloydSteinbergDithering, Version=4.6.7358.37110, Culture=neutral, PublicKeyToken=null FractalAttractor FractalAttractor, Version=1.3.5.27448, Culture=neutral, PublicKeyToken=null FractalFern FractalFern, Version=1.2.0.28378, Culture=neutral, PublicKeyToken=null FractalTree FractalTree, Version=1.2.0.38806, Culture=neutral, PublicKeyToken=null Frames Frames, Version=1.2.5.27903, Culture=neutral, PublicKeyToken=null FurBlur FurBlur, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null GaussianBlurPlus GaussianBlurPlus, Version=4.2.5691.27401, Culture=neutral, PublicKeyToken=null Gears Gears, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null Gen96Colors Gen96Colors, Version=1.2.0.15608, Culture=neutral, PublicKeyToken=null GenTree GenTree, Version=0.1.0.0, Culture=neutral, PublicKeyToken=null Gingham Gingham, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null __blur __blur, Version=1.1.7212.26179, Culture=neutral, PublicKeyToken=null Gmic Gmic, Version=2.9.4.0, Culture=neutral, PublicKeyToken=null GmicFragmentBlurPlus GmicFragmentBlurPlus, Version=0.2.0.0, Culture=neutral, PublicKeyToken=null Gossamer Gossamer, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null Gradient Bars Gradient Bars, Version=4.0.5152.23084, Culture=neutral, PublicKeyToken=null Gradient Blocks Gradient Blocks, Version=4.0.4642.26658, Culture=neutral, PublicKeyToken=null Gradient Grid Gradient Grid, Version=4.0.6436.36068, Culture=neutral, PublicKeyToken=null Gradient Mapping Gradient Mapping, Version=4.0.6107.40059, Culture=neutral, PublicKeyToken=null GradientBlur GradientBlur, Version=1.2.5.28179, Culture=neutral, PublicKeyToken=null GradientsGalore GradientsGalore, Version=1.0.5.0, Culture=neutral, PublicKeyToken=null GraphPaper GraphPaper, Version=2.1.0.0, Culture=neutral, PublicKeyToken=null Gravity Gravity, Version=1.2.5.29548, Culture=neutral, PublicKeyToken=null Gray2Alpha Gray2Alpha, Version=4.5.6826.36897, Culture=neutral, PublicKeyToken=null GreenTintReduction GreenTintReduction, Version=1.0.6484.29238, Culture=neutral, PublicKeyToken=null Grid Warp Grid Warp, Version=4.0.5873.25124, Culture=neutral, PublicKeyToken=null GridCheckerboard GridCheckerboard, Version=4.5.6828.36789, Culture=neutral, PublicKeyToken=null GridGrad GridGrad, Version=1.0.4172.25342, Culture=neutral, PublicKeyToken=null GridMaker GridMaker, Version=5.2.5.29827, Culture=neutral, PublicKeyToken=null Grow Grow, Version=1.0.7.0, Culture=neutral, PublicKeyToken=null Heightmap plugin v1 Heightmap plugin v1, Version=1.3.4261.22267, Culture=neutral, PublicKeyToken=null Helix Helix, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null HexaGrid HexaGrid, Version=4.0.0.39367, Culture=neutral, PublicKeyToken=null Highlight Highlight, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null HilbertCurve HilbertCurve, Version=1.2.0.32151, Culture=neutral, PublicKeyToken=null HSVGradients HSVGradients, Version=4.5.6832.41864, Culture=neutral, PublicKeyToken=null HueSatPlus HueSatPlus, Version=4.6.7359.209, Culture=neutral, PublicKeyToken=null Image Modulo Toolkit.dll Image Modulo Toolkit.dll, Version=1.0.7587.35621, Culture=neutral, PublicKeyToken=null InsetBoxShadow InsetBoxShadow, Version=1.3.0.0, Culture=neutral, PublicKeyToken=null __invert_anything __invert_anything, Version=1.0.7213.37760, Culture=neutral, PublicKeyToken=null iPhoneTabbarIconMaker iPhoneTabbarIconMaker, Version=1.0.3659.22550, Culture=neutral, PublicKeyToken=null IsometricCuboid IsometricCuboid, Version=1.6.0.0, Culture=neutral, PublicKeyToken=null JigsawPuzzle JigsawPuzzle, Version=2.3.0.0, Culture=neutral, PublicKeyToken=null Jitter Jitter, Version=4.0.4642.26986, Culture=neutral, PublicKeyToken=null NoiseReduction NoiseReduction, Version=1.0.3747.24002, Culture=neutral, PublicKeyToken=null JuliaPlus JuliaPlus, Version=1.2.5.13821, Culture=neutral, PublicKeyToken=null KaleidoGen KaleidoGen, Version=1.3.5.30504, Culture=neutral, PublicKeyToken=null Kaleidoscope Kaleidoscope, Version=1.6.1.27167, Culture=neutral, PublicKeyToken=null kb_lens kb_lens, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null Kuwahara Kuwahara, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Landscape Landscape, Version=4.6.7358.37463, Culture=neutral, PublicKeyToken=null LensFlare LensFlare, Version=2.2.12.35124, Culture=neutral, PublicKeyToken=null LevelHorizon LevelHorizon, Version=4.6.7358.37589, Culture=neutral, PublicKeyToken=null LightRays LightRays, Version=2.1.5.14276, Culture=neutral, PublicKeyToken=null Linocut_en Linocut_en, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Liquify Liquify, Version=4.0.5873.25113, Culture=neutral, PublicKeyToken=null ListOfPalettes ListOfPalettes, Version=1.0.0.32564, Culture=neutral, PublicKeyToken=null Magnifier Magnifier, Version=1.3.5.14308, Culture=neutral, PublicKeyToken=null Majority Majority, Version=1.2.5.14328, Culture=neutral, PublicKeyToken=null mandala mandala, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null MarkupRenderer MarkupRenderer, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null MathNet.Iridium MathNet.Iridium, Version=2007.3.8.35795, Culture=neutral, PublicKeyToken=null MeasureObject MeasureObject, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null MeasureSelection MeasureSelection, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null Melting Melting, Version=1.3.6550.31783, Culture=neutral, PublicKeyToken=null MemeMaker MemeMaker, Version=4.5.6828.38061, Culture=neutral, PublicKeyToken=null Metallize Metallize, Version=1.2.4415.32969, Culture=neutral, PublicKeyToken=null MirrorRotate MirrorRotate, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null MirrorRotateMenu MirrorRotateMenu, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null Moire Moire, Version=1.2.5.14350, Culture=neutral, PublicKeyToken=null MotionSharpen MotionSharpen, Version=1.2.5.19059, Culture=neutral, PublicKeyToken=null MultiSpline MultiSpline, Version=1.0.4.0, Culture=neutral, PublicKeyToken=null MultiThreshold MultiThreshold, Version=1.1.4330.38982, Culture=neutral, PublicKeyToken=null Nebulous Nebulous, Version=1.2.5.19527, Culture=neutral, PublicKeyToken=null NeonEdges_en NeonEdges_en, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null NewtonFractal NewtonFractal, Version=2.2.5.19770, Culture=neutral, PublicKeyToken=null NoiseChoice NoiseChoice, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null NormalMapPlus NormalMapPlus, Version=1.4.6422.43071, Culture=neutral, PublicKeyToken=null Object2Colour Object2Colour, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null ObjectBevel ObjectBevel, Version=1.0.6.0, Culture=neutral, PublicKeyToken=null ObjectEdge ObjectEdge, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null ObjectTools ObjectTools, Version=5.0.7502.21624, Culture=neutral, PublicKeyToken=null Oblique Oblique, Version=1.2.5.15730, Culture=neutral, PublicKeyToken=null OilPaintingPlus OilPaintingPlus, Version=4.6.7358.38406, Culture=neutral, PublicKeyToken=null Olden Olden, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null Feather Feather, Version=2.3.4315.37038, Culture=neutral, PublicKeyToken=null OptionBasedLibrary v0.7.9 OptionBasedLibrary v0.7.9, Version=0.7.9.1561, Culture=neutral, PublicKeyToken=null Organigram Organigram, Version=1.3.6565.29874, Culture=neutral, PublicKeyToken=null Outline Object Outline Object, Version=4.0.4642.26954, Culture=neutral, PublicKeyToken=null Overblur Overblur, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null Overliner Overliner, Version=1.2.5.25545, Culture=neutral, PublicKeyToken=null PageCurl PageCurl, Version=1.5.5.23162, Culture=neutral, PublicKeyToken=null Paneling Paneling, Version=1.2.5.23448, Culture=neutral, PublicKeyToken=null ParallelLines.Effect ParallelLines.Effect, Version=1.6.0.575, Culture=neutral, PublicKeyToken=null PasteAlpha PasteAlpha, Version=4.6.7358.38804, Culture=neutral, PublicKeyToken=null Pastel Pastel, Version=4.6.7358.38877, Culture=neutral, PublicKeyToken=null PerlinTexture PerlinTexture, Version=2.2.5.23710, Culture=neutral, PublicKeyToken=null Perspective Perspective, Version=2.1.4415.36116, Culture=neutral, PublicKeyToken=null PhotoAdjustments PhotoAdjustments, Version=4.6.7358.38979, Culture=neutral, PublicKeyToken=null PieChart PieChart, Version=2.5.0.0, Culture=neutral, PublicKeyToken=null Pixelate+ Pixelate+, Version=4.0.4642.26940, Culture=neutral, PublicKeyToken=null Planetoid Planetoid, Version=1.0.4.0, Culture=neutral, PublicKeyToken=null PlugInData PlugInData, Version=1.3.0.2, Culture=neutral, PublicKeyToken=null pointwarp pointwarp, Version=1.2.5709.42172, Culture=neutral, PublicKeyToken=null Polar Polar, Version=1.2.5.24467, Culture=neutral, PublicKeyToken=null PolaroidFrame PolaroidFrame, Version=1.2.6565.30489, Culture=neutral, PublicKeyToken=null a_polar_test a_polar_test, Version=1.0.7188.40229, Culture=neutral, PublicKeyToken=null Polygon Polygon, Version=4.5.6828.38648, Culture=neutral, PublicKeyToken=null Polygones Polygones, Version=1.3.5.31866, Culture=neutral, PublicKeyToken=null PostageStamp PostageStamp, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null Poster Poster, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null PrinterPlus PrinterPlus, Version=1.5.0.0, Culture=neutral, PublicKeyToken=null PrintIt.Effect PrintIt.Effect, Version=0.9.0.1162, Culture=neutral, PublicKeyToken=null OptionBasedLibrary v0.7 OptionBasedLibrary v0.7, Version=0.7.0.602, Culture=neutral, PublicKeyToken=null PSFilterPdn PSFilterPdn, Version=1.0.7.1, Culture=neutral, PublicKeyToken=null Psychocolour Psychocolour, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null pxEexpansion pxEexpansion, Version=1.0.4437.36287, Culture=neutral, PublicKeyToken=null QuadrilateralCorrection QuadrilateralCorrection, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null Radialcolors Radialcolors, Version=1.2.5.21672, Culture=neutral, PublicKeyToken=null RadiusFillCorners RadiusFillCorners, Version=1.6.0.0, Culture=neutral, PublicKeyToken=null RainbowTwist RainbowTwist, Version=1.2.5.25218, Culture=neutral, PublicKeyToken=null Random Effect Random Effect, Version=4.0.4642.26928, Culture=neutral, PublicKeyToken=null Random Shape Fill Random Shape Fill, Version=4.0.4642.26910, Culture=neutral, PublicKeyToken=null RandomLines RandomLines, Version=1.2.5.25981, Culture=neutral, PublicKeyToken=null RandomMaze1 RandomMaze1, Version=1.2.5.26409, Culture=neutral, PublicKeyToken=null RandomMaze2 RandomMaze2, Version=1.2.5.26820, Culture=neutral, PublicKeyToken=null RecolorGray RecolorGray, Version=1.2.5.27251, Culture=neutral, PublicKeyToken=null RecolourChoice RecolourChoice, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null RegularNoise RegularNoise, Version=1.2.5.29080, Culture=neutral, PublicKeyToken=null RemoveDust RemoveDust, Version=4.5.6826.37862, Culture=neutral, PublicKeyToken=null __killblack __killblack, Version=1.0.7212.28737, Culture=neutral, PublicKeyToken=null RenderSphereHeightMap RenderSphereHeightMap, Version=1.0.6145.37460, Culture=neutral, PublicKeyToken=null ReverseColors ReverseColors, Version=1.2.5.29336, Culture=neutral, PublicKeyToken=null RGB_Remap4 RGB_Remap4, Version=1.0.3538.24311, Culture=neutral, PublicKeyToken=null Rosaces Rosaces, Version=1.2.5.29635, Culture=neutral, PublicKeyToken=null RotateText RotateText, Version=1.1.4415.32628, Culture=neutral, PublicKeyToken=null RotateTextSUI RotateTextSUI, Version=1.1.4415.32713, Culture=neutral, PublicKeyToken=null Rotate_Zoom+ Rotate_Zoom+, Version=1.11.5237.17779, Culture=neutral, PublicKeyToken=null RubberStamp RubberStamp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Ruler Ruler, Version=1.0.6846.37263, Culture=neutral, PublicKeyToken=null SaveForWebRIOT SaveForWebRIOT, Version=1.0.7.0, Culture=neutral, PublicKeyToken=null Scintillate Scintillate, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null ScreenPixel ScreenPixel, Version=1.1.6846.39497, Culture=neutral, PublicKeyToken=null Scribble Scribble, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null ScriptLab ScriptLab, Version=4.0.6107.18914, Culture=neutral, PublicKeyToken=null SeamCarving SeamCarving, Version=4.6.7358.39596, Culture=neutral, PublicKeyToken=null SeamlessTextureMaker SeamlessTextureMaker, Version=1.2.5.29984, Culture=neutral, PublicKeyToken=null Selection2Clear Selection2Clear, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null SelectionObscure SelectionObscure, Version=1.1.4602.34476, Culture=neutral, PublicKeyToken=null SelectionTools SelectionTools, Version=5.0.7502.22140, Culture=neutral, PublicKeyToken=null Shape3D Shape3D, Version=1.2.6.3, Culture=neutral, PublicKeyToken=null Shapes Shapes, Version=1.6.5.30197, Culture=neutral, PublicKeyToken=null SharpDX.DXGI SharpDX.DXGI, Version=2.5.0.0, Culture=neutral, PublicKeyToken=627a3d6d1956f55a Sierpinski Sierpinski, Version=2.2.5.30414, Culture=neutral, PublicKeyToken=null SinWaves SinWaves, Version=1.2.5.30582, Culture=neutral, PublicKeyToken=null Skew Skew, Version=1.0.7638.38725, Culture=neutral, PublicKeyToken=null SlightEdgeBoost SlightEdgeBoost, Version=1.5.7467.22643, Culture=neutral, PublicKeyToken=null Slinky Slinky, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null Smooth Smooth, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null SmoothNoise SmoothNoise, Version=1.0.0.28227, Culture=neutral, PublicKeyToken=null Smudge Smudge, Version=4.0.5873.25097, Culture=neutral, PublicKeyToken=null SoftProofing SoftProofing, Version=1.1.0.1, Culture=neutral, PublicKeyToken=null SpacedTextPlugin SpacedTextPlugin, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null Sparkles Sparkles, Version=1.2.5.12788, Culture=neutral, PublicKeyToken=null Specular Specular, Version=1.0.3254.27778, Culture=neutral, PublicKeyToken=null SpeechBubble SpeechBubble, Version=2.1.4445.42029, Culture=neutral, PublicKeyToken=null Spiral Spiral, Version=1.2.5.12809, Culture=neutral, PublicKeyToken=null SpiralText SpiralText, Version=1.4.4415.32775, Culture=neutral, PublicKeyToken=null SpiroGraph SpiroGraph, Version=1.2.5.12972, Culture=neutral, PublicKeyToken=null SpiroShapes SpiroShapes, Version=2.2.5.16659, Culture=neutral, PublicKeyToken=null Splashes Splashes, Version=1.2.5.13040, Culture=neutral, PublicKeyToken=null Splatter Splatter, Version=4.0.5873.25083, Culture=neutral, PublicKeyToken=null SpokedWheel SpokedWheel, Version=1.1.6846.37336, Culture=neutral, PublicKeyToken=null SpotCenter SpotCenter, Version=1.2.0.17265, Culture=neutral, PublicKeyToken=null Squirkle Squirkle, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null SquirkleWarp SquirkleWarp, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null StarGlow StarGlow, Version=1.3.5.17930, Culture=neutral, PublicKeyToken=null Stars Stars, Version=2.0.0.25701, Culture=neutral, PublicKeyToken=null Stickman Stickman, Version=1.2.2.30005, Culture=neutral, PublicKeyToken=null Stitch Stitch, Version=4.0.4642.26808, Culture=neutral, PublicKeyToken=null StringAndPin StringAndPin, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null SubLCD SubLCD, Version=1.2.1.0, Culture=neutral, PublicKeyToken=null Table Table, Version=1.1.5847.38905, Culture=neutral, PublicKeyToken=null Tartan Tartan, Version=1.5.1.0, Culture=neutral, PublicKeyToken=null Tattersall Tattersall, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null Temperature Temperature, Version=4.6.7358.39746, Culture=neutral, PublicKeyToken=null TextPlus TextPlus, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null TextPro TextPro, Version=1.0.6711.26540, Culture=neutral, PublicKeyToken=null TextureMerger TextureMerger, Version=1.1.6159.40169, Culture=neutral, PublicKeyToken=null TextureShader TextureShader, Version=2.3.0.0, Culture=neutral, PublicKeyToken=null TextureSmoother TextureSmoother, Version=1.0.6096.31689, Culture=neutral, PublicKeyToken=null TextWindow TextWindow, Version=1.4.0.0, Culture=neutral, PublicKeyToken=null TGAngle TGAngle, Version=1.0.1.0, Culture=neutral, PublicKeyToken=null TGMagnitude TGMagnitude, Version=1.0.2.0, Culture=neutral, PublicKeyToken=null ThatOtherApp ThatOtherApp, Version=2.2.0.0, Culture=neutral, PublicKeyToken=null Thorn Fractal.dll Thorn Fractal.dll, Version=1.0.7611.40689, Culture=neutral, PublicKeyToken=null TiledFormGmicPDN TiledFormGmicPDN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null Tiles Tiles, Version=1.2.5.13094, Culture=neutral, PublicKeyToken=null TileWorld TileWorld, Version=1.0.2.30273, Culture=neutral, PublicKeyToken=null TOON TOON, Version=1.0.7446.7819, Culture=neutral, PublicKeyToken=null Tournesol Tournesol, Version=1.2.5.13128, Culture=neutral, PublicKeyToken=null Trail Trail, Version=4.0.4642.26791, Culture=neutral, PublicKeyToken=null Transparency Transparency, Version=4.6.7358.39871, Culture=neutral, PublicKeyToken=null TreeGen TreeGen, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null TRsAlphaCutter TRsAlphaCutter, Version=3.0.4.0, Culture=neutral, PublicKeyToken=null TRsDodgeBurn TRsDodgeBurn, Version=1.4.0.33503, Culture=neutral, PublicKeyToken=null TRsDodgeBurn.resources TRsDodgeBurn.resources, Version=1.3.26.12436, Culture=zh-CN, PublicKeyToken=null TRsDoodleMatic TRsDoodleMatic, Version=1.4.5045.31846, Culture=neutral, PublicKeyToken=null TRsFilaments TRsFilaments, Version=1.0.15.11399, Culture=neutral, PublicKeyToken=null TRsMonolithic TRsMonolithic, Version=1.0.6.24412, Culture=neutral, PublicKeyToken=null TRsMorpher TRsMorpher, Version=1.1.10.8959, Culture=neutral, PublicKeyToken=null TRsSplineMaster TRsSplineMaster, Version=1.4.2.18310, Culture=neutral, PublicKeyToken=null TRsStrobeMotion TRsStrobeMotion, Version=1.2.4962.30523, Culture=neutral, PublicKeyToken=null TubeOblique TubeOblique, Version=1.2.0.0, Culture=neutral, PublicKeyToken=null TurbulentCircles TurbulentCircles, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null TurbulentLines TurbulentLines, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null TwainablePlus TwainablePlus, Version=1.0.0.2, Culture=neutral, PublicKeyToken=null Twist Twist, Version=4.0.5873.25056, Culture=neutral, PublicKeyToken=null TwistZ TwistZ, Version=1.2.5.13350, Culture=neutral, PublicKeyToken=null TwoPointPerspective TwoPointPerspective, Version=1.6.0.0, Culture=neutral, PublicKeyToken=null TwoToneThreshold TwoToneThreshold, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null UnselectedRectangleKeeper UnselectedRectangleKeeper, Version=1.0.5669.36271, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.Blurs Vandermotten.PaintDotNetEffects.Blurs, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.ColorAccent Vandermotten.PaintDotNetEffects.ColorAccent, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects Vandermotten.PaintDotNetEffects, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.DropShadow Vandermotten.PaintDotNetEffects.DropShadow, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.Duotones Vandermotten.PaintDotNetEffects.Duotones, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.FadeEdge Vandermotten.PaintDotNetEffects.FadeEdge, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.Gradient Vandermotten.PaintDotNetEffects.Gradient, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.Grid Vandermotten.PaintDotNetEffects.Grid, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.Monochromes Vandermotten.PaintDotNetEffects.Monochromes, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vandermotten.PaintDotNetEffects.ObjectAlign Vandermotten.PaintDotNetEffects.ObjectAlign, Version=3.8.0.0, Culture=neutral, PublicKeyToken=null Vanishing Trails Vanishing Trails, Version=1.0.7514.41368, Culture=neutral, PublicKeyToken=null VanishPoint VanishPoint, Version=1.0.3.0, Culture=neutral, PublicKeyToken=null Varicose2 Varicose2, Version=2.1.1.42085, Culture=neutral, PublicKeyToken=null Vibrato Vibrato, Version=2.0.5.13530, Culture=neutral, PublicKeyToken=null Vignette1 Vignette1, Version=1.0.3538.14367, Culture=neutral, PublicKeyToken=null VignettePlus VignettePlus, Version=4.6.7358.40027, Culture=neutral, PublicKeyToken=null Volutes Volutes, Version=1.3.5.13753, Culture=neutral, PublicKeyToken=null WaterReflection WaterReflection, Version=1.2.5.15754, Culture=neutral, PublicKeyToken=null Waves Waves, Version=1.2.5.14072, Culture=neutral, PublicKeyToken=null WaveText WaveText, Version=1.2.4415.32811, Culture=neutral, PublicKeyToken=null WaveTextSUI WaveTextSUI, Version=1.2.4415.33440, Culture=neutral, PublicKeyToken=null WetFloor WetFloor, Version=1.2.5.14166, Culture=neutral, PublicKeyToken=null WhichSymbolRedux WhichSymbolRedux, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null XYCoords XYCoords, Version=1.2.5.19506, Culture=neutral, PublicKeyToken=null ZoomBlurDeluxe ZoomBlurDeluxe, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null K4os.Compression.LZ4 K4os.Compression.LZ4, Version=1.1.11.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d Native modules 129 PaintDotNet.exe C:\Program Files\paint.net\PaintDotNet.exe, version=4.214.7601.39231 ntdll.dll C:\WINDOWS\SYSTEM32\ntdll.dll, version=10.0.19041.662 (WinBuild.160101.0800) MSCOREE.DLL C:\WINDOWS\SYSTEM32\MSCOREE.DLL, version=10.0.19041.1 (WinBuild.160101.0800) KERNEL32.dll C:\WINDOWS\System32\KERNEL32.dll, version=10.0.19041.662 (WinBuild.160101.0800) KERNELBASE.dll C:\WINDOWS\System32\KERNELBASE.dll, version=10.0.19041.662 (WinBuild.160101.0800) ADVAPI32.dll C:\WINDOWS\System32\ADVAPI32.dll, version=10.0.19041.1 (WinBuild.160101.0800) msvcrt.dll C:\WINDOWS\System32\msvcrt.dll, version=7.0.19041.546 (WinBuild.160101.0800) sechost.dll C:\WINDOWS\System32\sechost.dll, version=10.0.19041.1 (WinBuild.160101.0800) RPCRT4.dll C:\WINDOWS\System32\RPCRT4.dll, version=10.0.19041.1 (WinBuild.160101.0800) mscoreei.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll, version=4.8.4180.0 built by: NET48REL1LAST_B SHLWAPI.dll C:\WINDOWS\System32\SHLWAPI.dll, version=10.0.19041.1 (WinBuild.160101.0800) kernel.appcore.dll C:\WINDOWS\SYSTEM32\kernel.appcore.dll, version=10.0.19041.546 (WinBuild.160101.0800) VERSION.dll C:\WINDOWS\SYSTEM32\VERSION.dll, version=10.0.19041.546 (WinBuild.160101.0800) clr.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll, version=4.8.4300.0 built by: NET48REL1LAST_C USER32.dll C:\WINDOWS\System32\USER32.dll, version=10.0.19041.1 (WinBuild.160101.0800) win32u.dll C:\WINDOWS\System32\win32u.dll, version=10.0.19041.662 (WinBuild.160101.0800) GDI32.dll C:\WINDOWS\System32\GDI32.dll, version=10.0.19041.685 (WinBuild.160101.0800) VCRUNTIME140_CLR0400.dll C:\WINDOWS\SYSTEM32\VCRUNTIME140_CLR0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM ucrtbase_clr0400.dll C:\WINDOWS\SYSTEM32\ucrtbase_clr0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM gdi32full.dll C:\WINDOWS\System32\gdi32full.dll, version=10.0.19041.685 (WinBuild.160101.0800) msvcp_win.dll C:\WINDOWS\System32\msvcp_win.dll, version=10.0.19041.546 (WinBuild.160101.0800) ucrtbase.dll C:\WINDOWS\System32\ucrtbase.dll, version=10.0.19041.546 (WinBuild.160101.0800) IMM32.DLL C:\WINDOWS\System32\IMM32.DLL, version=10.0.19041.546 (WinBuild.160101.0800) psapi.dll C:\WINDOWS\System32\psapi.dll, version=10.0.19041.546 (WinBuild.160101.0800) mscorlib.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\mscorlib\ed4777cae83e1fc9087ac3dc82cf23ab\mscorlib.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C ole32.dll C:\WINDOWS\System32\ole32.dll, version=10.0.19041.1 (WinBuild.160101.0800) combase.dll C:\WINDOWS\System32\combase.dll, version=10.0.19041.1 (WinBuild.160101.0800) bcryptPrimitives.dll C:\WINDOWS\System32\bcryptPrimitives.dll, version=10.0.19041.662 (WinBuild.160101.0800) uxtheme.dll C:\WINDOWS\system32\uxtheme.dll, version=10.0.19041.1 (WinBuild.160101.0800) CRYPTSP.dll C:\WINDOWS\SYSTEM32\CRYPTSP.dll, version=10.0.19041.546 (WinBuild.160101.0800) rsaenh.dll C:\WINDOWS\system32\rsaenh.dll, version=10.0.19041.1 (WinBuild.160101.0800) bcrypt.dll C:\WINDOWS\System32\bcrypt.dll, version=10.0.19041.1 (WinBuild.160101.0800) CRYPTBASE.dll C:\WINDOWS\SYSTEM32\CRYPTBASE.dll, version=10.0.19041.546 (WinBuild.160101.0800) System.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System\5dd302cc18514670950e7f3fbebddb06\System.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C System.Core.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Core\ce57a19cdc83705ba9aeec743bfdc62f\System.Core.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C WindowsBase.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\WindowsBase\fec1e81e95fa9e5ed8f8290632af79de\WindowsBase.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C System.Drawing.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Drawing\f4b470d059025978bbe597afc6e60f7d\System.Drawing.ni.dll, version=4.8.4084.0 built by: NET48REL1 PresentationCore.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PresentationCore\66450953713be99c7f54d828732cb56c\PresentationCore.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C PresentationFramework.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\Presentatio5ae0f00f#\95a1a26b05917f415f1754568270dea5\PresentationFramework.ni.dll, version=4.8.4300.0 PaintDotNet.Base.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Base\fc25066683c7361eac95d8f777ecedc2\PaintDotNet.Base.ni.dll, version=4.214.7601.39231 System.Windows.Forms.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Windows.Forms\9c043df0c5a3f7b28f75021b55a8152a\System.Windows.Forms.ni.dll, version=4.8.4270.0 built by: NET48REL1LAST_C PaintDotNet.SystemLayer.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet500b2e4f#\d8bd916e4e9bb26991cfb223b06f5195\PaintDotNet.SystemLayer.ni.dll, version=4.214.7601.39231 PaintDotNet.Core.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Core\c886cffd4910aaf7f9a1a5d6ceaa3d91\PaintDotNet.Core.ni.dll, version=4.214.7601.39231 PaintDotNet.Resources.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet26779e70#\83137b48fff0b69a36db10d37a951c61\PaintDotNet.Resources.ni.dll, version=4.214.7601.39231 PaintDotNet.Framework.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet7afaaa15#\4c57c688ebbc9d8155d72f6a9fe07f83\PaintDotNet.Framework.ni.dll, version=4.214.7601.39231 PaintDotNet.Data.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Data\18e056f040e873f6dbc3543ebeb9ddc1\PaintDotNet.Data.ni.dll, version=4.214.7601.39231 PaintDotNet.Effects.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Effects\9d130cae3bf94f393d1273d1fa4bb73b\PaintDotNet.Effects.ni.dll, version=4.214.7601.39231 PaintDotNet.ni.exe C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet\1d443f490e133a5d9232c313e4c78eff\PaintDotNet.ni.exe, version=4.214.7601.39231 dwrite.dll C:\WINDOWS\SYSTEM32\dwrite.dll, version=10.0.19041.1 (WinBuild.160101.0800) wpfgfx_v0400.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\wpfgfx_v0400.dll, version=4.8.4300.0 built by: NET48REL1LAST_C OLEAUT32.dll C:\WINDOWS\System32\OLEAUT32.dll, version=10.0.19041.546 (WinBuild.160101.0800) MSVCP140_CLR0400.dll C:\WINDOWS\SYSTEM32\MSVCP140_CLR0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM PresentationNative_v0400.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\PresentationNative_v0400.dll, version=4.8.4300.0 built by: NET48REL1LAST_C shell32.dll C:\WINDOWS\System32\shell32.dll, version=10.0.19041.329 (WinBuild.160101.0800) windows.storage.dll C:\WINDOWS\SYSTEM32\windows.storage.dll, version=10.0.19041.1 (WinBuild.160101.0800) Wldp.dll C:\WINDOWS\SYSTEM32\Wldp.dll, version=10.0.19041.1 (WinBuild.160101.0800) SHCORE.dll C:\WINDOWS\System32\SHCORE.dll, version=10.0.19041.1 (WinBuild.160101.0800) vcruntime140.dll C:\Program Files\paint.net\Native\X64\vcruntime140.dll, version=14.27.29016.0 built by: vcwrkspc vcruntime140_1.dll C:\Program Files\paint.net\Native\X64\vcruntime140_1.dll, version=14.27.29016.0 built by: vcwrkspc msvcp140.dll C:\Program Files\paint.net\Native\X64\msvcp140.dll, version=14.27.29016.0 built by: vcwrkspc msvcp140_1.dll C:\Program Files\paint.net\Native\X64\msvcp140_1.dll, version=14.27.29016.0 built by: vcwrkspc msvcp140_2.dll C:\Program Files\paint.net\Native\X64\msvcp140_2.dll, version=14.27.29016.0 built by: vcwrkspc msvcp140_codecvt_ids.dll C:\Program Files\paint.net\Native\X64\msvcp140_codecvt_ids.dll, version=14.27.29016.0 built by: vcwrkspc vcomp140.dll C:\Program Files\paint.net\Native\X64\vcomp140.dll, version=14.27.29016.0 built by: vcwrkspc PaintDotNet.SystemLayer.Native.x64.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNetc8826574#\b7f1508efefbbdfbbc686b0ba0d18cc7\PaintDotNet.SystemLayer.Native.x64.ni.dll, version=4.214.7601.39231 PaintDotNet.SystemLayer.Native.x64.dll C:\Program Files\paint.net\PaintDotNet.SystemLayer.Native.x64.dll, version=4.214.7601.39231 PROPSYS.dll C:\WINDOWS\SYSTEM32\PROPSYS.dll, version=7.0.19041.1 (WinBuild.160101.0800) gdiplus.dll C:\WINDOWS\WinSxS\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.19041.685_none_faeca4db76168538\gdiplus.dll, version=10.0.19041.685 (WinBuild.160101.0800) WindowsCodecs.dll C:\WINDOWS\SYSTEM32\WindowsCodecs.dll, version=10.0.19041.546 (WinBuild.160101.0800) clbcatq.dll C:\WINDOWS\System32\clbcatq.dll, version=2001.12.10941.16384 (WinBuild.160101.0800) msasn1.dll C:\WINDOWS\SYSTEM32\msasn1.dll, version=10.0.19041.546 (WinBuild.160101.0800) cryptnet.dll C:\WINDOWS\SYSTEM32\cryptnet.dll, version=10.0.19041.546 (WinBuild.160101.0800) CRYPT32.dll C:\WINDOWS\System32\CRYPT32.dll, version=10.0.19041.1 (WinBuild.160101.0800) System.Configuration.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Configuration\9962fc89eda46413a40be6ede9d433fe\System.Configuration.ni.dll, version=4.8.4190.0 built by: NET48REL1LAST_B System.Xml.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xml\131a023309990432765d7a97ec31d6a7\System.Xml.ni.dll, version=4.8.4084.0 built by: NET48REL1 profapi.dll C:\WINDOWS\SYSTEM32\profapi.dll, version=10.0.19041.546 (WinBuild.160101.0800) clrjit.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll, version=4.8.4300.0 built by: NET48REL1LAST_C System.Xaml.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xaml\0ef8bfd0f4664190a99df56720291069\System.Xaml.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C dxgi.dll C:\WINDOWS\SYSTEM32\dxgi.dll, version=10.0.19041.546 (WinBuild.160101.0800) MSCTF.dll C:\WINDOWS\System32\MSCTF.dll, version=10.0.19041.1 (WinBuild.160101.0800) System.Runtime.CompilerServices.Unsafe.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Runtea61dfd5#\be3e121258d7e87a2074ef5bdac61ac8\System.Runtime.CompilerServices.Unsafe.ni.dll, version=4.700.20.12001 UIAnimation.dll C:\WINDOWS\System32\UIAnimation.dll, version=10.0.19041.546 (WinBuild.160101.0800) comctl32.dll C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.488_none_ca04af081b815d21\comctl32.dll, version=6.10 (WinBuild.160101.0800) TextShaping.dll C:\WINDOWS\System32\TextShaping.dll, version= d2d1.dll C:\WINDOWS\SYSTEM32\d2d1.dll, version=10.0.19041.1 (WinBuild.160101.0800) wtsapi32.dll C:\WINDOWS\SYSTEM32\wtsapi32.dll, version=10.0.19041.546 (WinBuild.160101.0800) WINSTA.dll C:\WINDOWS\SYSTEM32\WINSTA.dll, version=10.0.19041.546 (WinBuild.160101.0800) d3d11.dll C:\WINDOWS\SYSTEM32\d3d11.dll, version=10.0.19041.546 (WinBuild.160101.0800) D3D10Warp.dll C:\WINDOWS\SYSTEM32\D3D10Warp.dll, version=10.0.19041.546 (WinBuild.160101.0800) dxcore.dll C:\WINDOWS\SYSTEM32\dxcore.dll, version=10.0.19041.546 (WinBuild.160101.0800) cfgmgr32.dll C:\WINDOWS\System32\cfgmgr32.dll, version=10.0.19041.546 (WinBuild.160101.0800) dwmapi.dll C:\WINDOWS\SYSTEM32\dwmapi.dll, version=10.0.19041.1 (WinBuild.160101.0800) dataexchange.dll C:\WINDOWS\system32\dataexchange.dll, version=10.0.19041.546 (WinBuild.160101.0800) dcomp.dll C:\WINDOWS\system32\dcomp.dll, version=10.0.19041.662 (WinBuild.160101.0800) twinapi.appcore.dll C:\WINDOWS\system32\twinapi.appcore.dll, version=10.0.19041.1 (WinBuild.160101.0800) textinputframework.dll C:\WINDOWS\SYSTEM32\textinputframework.dll, version=10.0.19041.662 (WinBuild.160101.0800) CoreUIComponents.dll C:\WINDOWS\System32\CoreUIComponents.dll, version=10.0.19041.546 CoreMessaging.dll C:\WINDOWS\System32\CoreMessaging.dll, version=10.0.19041.610 WS2_32.dll C:\WINDOWS\System32\WS2_32.dll, version=10.0.19041.1 (WinBuild.160101.0800) ntmarta.dll C:\WINDOWS\SYSTEM32\ntmarta.dll, version=10.0.19041.1 (WinBuild.160101.0800) wintypes.dll C:\WINDOWS\SYSTEM32\wintypes.dll, version=10.0.19041.1 (WinBuild.160101.0800) Oleacc.dll C:\WINDOWS\system32\Oleacc.dll, version=7.2.19041.546 (WinBuild.160101.0800) diasymreader.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\diasymreader.dll, version=14.8.4084.0 built by: NET48REL1 Accessibility.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\Accessibility\b2d9fb5fc2521b994e41d2480280f81c\Accessibility.ni.dll, version=4.8.4084.0 built by: NET48REL1 powrprof.dll C:\WINDOWS\SYSTEM32\powrprof.dll, version=10.0.19041.1 (WinBuild.160101.0800) UMPDC.dll C:\WINDOWS\SYSTEM32\UMPDC.dll, version= System.Buffers.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Buffers\d861d77f413fed84924c0db1977ced0f\System.Buffers.ni.dll, version=4.6.28619.01 winmm.dll C:\WINDOWS\SYSTEM32\winmm.dll, version=10.0.19041.1 (WinBuild.160101.0800) System.Collections.Immutable.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Coll4a4f96a7#\a9cc475c11172c8824cd0d18e0b678cd\System.Collections.Immutable.ni.dll, version=4.700.20.21406 System.Memory.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Memory\6e9a8622af0dffa0e9f9737798ecefea\System.Memory.ni.dll, version=4.6.28619.01 mfplat.dll C:\WINDOWS\SYSTEM32\mfplat.dll, version=10.0.19041.1 (WinBuild.160101.0800) RTWorkQ.DLL C:\WINDOWS\SYSTEM32\RTWorkQ.DLL, version=10.0.19041.1 (WinBuild.160101.0800) CompPkgSup.DLL C:\WINDOWS\SYSTEM32\CompPkgSup.DLL, version=10.0.19041.546 (WinBuild.160101.0800) Windows.StateRepositoryPS.dll C:\Windows\System32\Windows.StateRepositoryPS.dll, version=10.0.19041.546 (WinBuild.160101.0800) nvldumdx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_2635d5c616c804dc\nvldumdx.dll, version=27.21.14.6089 WINTRUST.DLL C:\WINDOWS\System32\WINTRUST.DLL, version=10.0.19041.662 (WinBuild.160101.0800) imagehlp.dll C:\WINDOWS\System32\imagehlp.dll, version=10.0.19041.546 (WinBuild.160101.0800) nvwgf2umx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_2635d5c616c804dc\nvwgf2umx.dll, version=27.21.14.6089 nvspcap64.dll C:\WINDOWS\system32\nvspcap64.dll, version=3.20.5.70 explorerframe.dll C:\WINDOWS\system32\explorerframe.dll, version=10.0.19041.1 (WinBuild.160101.0800) System.Windows.Forms.DataVisualization.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Wind0de890be#\b36fd4078cb35dc14cf6dc0334a884fe\System.Windows.Forms.DataVisualization.ni.dll, version=4.8.4200.0 System.Xml.Linq.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xml.Linq\c50385f4daee7f53822e428afb22a07b\System.Xml.Linq.ni.dll, version=4.8.4084.0 built by: NET48REL1 System.Numerics.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Numerics\92acbf2f668c06e51b7ae29b448197a3\System.Numerics.ni.dll, version=4.8.4084.0 built by: NET48REL1 System.Design.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Design\6a241a48ffe03ae5328e41f854331234\System.Design.ni.dll, version=4.8.4084.0 built by: NET48REL1 libGmicSharpNative.dll C:\Program Files\paint.net\Effects\GmicSharpNative\win-x64\libGmicSharpNative.dll, version=0.7.0.0 SetupApi.dll C:\WINDOWS\System32\SetupApi.dll, version=10.0.19041.1 (WinBuild.160101.0800) DEVOBJ.dll C:\WINDOWS\SYSTEM32\DEVOBJ.dll, version=10.0.19041.546 (WinBuild.160101.0800) K4os.Compression.LZ4.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\K4os.Compression.LZ4\0a43166728ad63c02b98ef535d81fcdf\K4os.Compression.LZ4.ni.dll, version=1.1.11 XmlLite.dll C:\WINDOWS\SYSTEM32\XmlLite.dll, version=10.0.19041.546 (WinBuild.160101.0800) Edited January 3, 2021 by toe_head2001 Placed log into a Spoiler element Quote Link to comment Share on other sites More sharing options...
Reptillian Posted December 16, 2020 Author Share Posted December 16, 2020 (edited) You didn't need to reinstall gmicsharpnative. Also, both crash at beginning, right or is there a condition in which this plugin crash? Please provide more details on how these crash so I can replicate. Edited December 16, 2020 by Reptillian Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Panchdara Posted December 16, 2020 Share Posted December 16, 2020 12 minutes ago, Reptillian said: You didn't need to reinstall gmicsharpnative. Also, both crash at beginning, right or is there a condition in which this plugin crash? Please provide more details on how these crash so I can replicate. Just run the plugin on a blank project. Error. Then paint something... error again. Seems the blur+ working again now. The blur+ did fail until I reinstalled the gmicsharpnative. PDN-TileCrash.zip 1 Quote Link to comment Share on other sites More sharing options...
Reptillian Posted December 16, 2020 Author Share Posted December 16, 2020 (edited) 41 minutes ago, Panchdara said: Just run the plugin on a blank project. Error. Then paint something... error again. Seems the blur+ working again now. The blur+ did fail until I reinstalled the gmicsharpnative. PDN-TileCrash.zip 1.71 MB · 0 downloads Thank you, I was able to replicate it. A fix will come soon. I discovered other bugs. ----- EDIT: @Panchdara It's done. Download again, and see if everything works well. As for @null54 I am finding myself having issues with empty images as you can see here. I had to add tvv=0 repeat s#0 done if !$tvv return fi to fix my g'mic filter. Is there a remedy that you have for this? Edited December 16, 2020 by Reptillian Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
lynxster4 Posted December 16, 2020 Share Posted December 16, 2020 Hi @Reptillian The Z-Convolution % is just great! 🙂 Details are clear and crisp. However, I'm experiencing a crash on a very detailed gray scale image that I made in Gmic-QT with Thorn Fractal. It's the background in the above image. When I applied a Color Tint on it, it worked just fine. Instead of posting my crash log, download this image and try it yourself. Then apply color and it should work. Let me know what you find out. Thanks for all your hard work! 😊 👏 Quote My Art Gallery | My Shape Packs | ShapeMaker Mini Tut | Air Bubble Stained Glass Chrome Text with Reflections | Porcelain Text w/ Variegated Coloring | Realistic Knit PatternOpalescent Stained Glass | Frosted Snowman Cookie | Leather Texture | Plastic Text | Silk Embroidery Visit my Personal Website "Never, ever lose your sense of humor - you'll live longer" Link to comment Share on other sites More sharing options...
Reptillian Posted December 16, 2020 Author Share Posted December 16, 2020 It seems that some of the gmic script within the filter conflicted with the number of available spectrum. I fixed it by adding to_color[0] before the main part of the script. Download again, and see if it works. 1 Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
null54 Posted December 16, 2020 Share Posted December 16, 2020 2 hours ago, Reptillian said: Is there a remedy that you have for this? No, I do not. Quote Plugin Pack | PSFilterPdn | Content Aware Fill | G'MIC | Paint Shop Pro Filetype | RAW Filetype | WebP Filetype The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait Link to comment Share on other sites More sharing options...
lynxster4 Posted December 16, 2020 Share Posted December 16, 2020 It works now! Thanks @Reptillian 👍 1 Quote My Art Gallery | My Shape Packs | ShapeMaker Mini Tut | Air Bubble Stained Glass Chrome Text with Reflections | Porcelain Text w/ Variegated Coloring | Realistic Knit PatternOpalescent Stained Glass | Frosted Snowman Cookie | Leather Texture | Plastic Text | Silk Embroidery Visit my Personal Website "Never, ever lose your sense of humor - you'll live longer" Link to comment Share on other sites More sharing options...
Panchdara Posted December 17, 2020 Share Posted December 17, 2020 12 hours ago, Reptillian said: Thank you, I was able to replicate it. A fix will come soon. I discovered other bugs. ----- EDIT: @Panchdara It's done. Download again, and see if everything works well. Many thanks. Looking much-a-mo-bedda. Thank you for your time, effort and patience. Best & have a Great Christmas and may 2021 be better than 2020! And that goes for everybody in the PDN community. Hugh 1 Quote Link to comment Share on other sites More sharing options...
Reptillian Posted January 2, 2021 Author Share Posted January 2, 2021 Update for 2021 1) Icon has been added. 2) Maximum dimension has been increased to 512. 1 1 Quote G'MIC Filter Developer Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.