Jump to content

MJW

Members
  • Posts

    2,845
  • Joined

  • Last visited

  • Days Won

    70

Everything posted by MJW

  1. Thanks for building the command-line version of Compress, BoltBait! It worked great.
  2. I know it's a silly thing to worry about, and if I have to do it every build I will. I'm still curious about whether I can compress the file only when it changes. Back in the days of Makefiles, that would have been easy to achieve.
  3. Thank you very much BoltBait. I do have a concern, though. I'd prefer that compression only occur when the RTF file has changed. If I make it a pre-build event, won't it be done for every build? (I suppose I could live with that, but I rather not do it each build.)
  4. I include my Help files in the DLL as resources. I'd like to follow CodeLab's lead and compress the RTF file in ZIP format or BoltBait's RTZ format. Either will do. I want the RTF file to be automatically compressed upon building whenever the RTF file has been modified. If anyone knows how to do this in Visual Studio, I'd very much appreciate instructions. (This is probably something I could figure out by reading enough MS documentation, but I'm hoping someone knows if it can be done, and if so how to do it, so I dont have to spend my time reading MS's (often infuriating) documentation. (Can anyone describe things more indirectly than Microsoft?))
  5. I'm not certain what you mean, but Paste From Clipboard kind of lets you do that. Select the region you want to copy, copy it into the clipboard, deselect, then run Paste From Clipboard with the Blend Mode set to Normal.
  6. If that's what you want to do, why not just use the Color Picker tool to sample the color, then use the Paint Brush tool or Fill Selection to overwrite the text, etc.?
  7. Thanks lynxster4, Woodsy, and Seerose for your nice comments, and thanks to those who gave me reps! I just made a very minor change to the plugin. It may not be worth doing a download for. I decided to disable the Anitialias Quality control when antialiasing is disabled, to be consistent with my other recent antialiased plugins. I meant to do that originally, but forgot. The version number is 1.2.*.
  8. Paste From Clipboard copies the clipboard image into the current selection, or into the entire canvas if there is no selection. It's in the Selection submenu. It has quite a few options for pasting the clipboard image, including blending with the image in the canvas. The plugin (version 2.0.1): PasteFromClipboard_2.0.1.zip The UI: The Help Menu description: ------------------------------------------------------ Paste From Clipboard copies the clipboard image into the current selection, or into the entire canvas if there is no selection. The controls are: Tiling: Specifies how pixels outside the clipboard boundaries are treated. Pixels outside the image range of the clipboard can be transparent, Clamped, Tiled, Alternately Tiled, or Brick Tiled. When Alternately Tiled is selected, the tile orientation is reversed for every other tile, so that the tiles match at the edges. The edge pixels are not repeated. When Brick Tiled is selected, every other row is offset by half the image width. The rows do not wrap from the top to the bottom. Size: Increases or decreases the size of the clipboard image. XY Proportion: Changes the XY proportion of the clipboard image. Moving the control right increases the X size while decreasing the Y size. Moving the control left decreases the X size while increasing the Y size. Offset: Moves the clipboard image relative to the selection or the canvas. Rotation: Rotates the clipboard image counterclockwise by the specified number of degrees. Flip Horizontal: Flips the clipboard image horizontally. (The image can be flipped vertically by flipping horizontally and rotating 180°.) Canvas Transparency Preservation: Specifies the method used to preserve the transparency of the canvas pixels. The choices are None, Clamp Alpha to Canvas Alpha, and Multiply Alpha by Canvas Alpha. Blend with Canvas Image: When enabled, the clipboard image will be blended with the image in the canvas instead of replacing it. Blending Mode: Specifies the blending mode used to combine the clipboard and canvas images. Clipboard Opacity: Modifies the clipboard image opacity. This value is combined with the opacity of the clipboard pixels. Offset Relative to Canvas: When enabled, the Offset is relative to the entire canvas instead of the selection. Antialias: Specifies that antialiasing should be used. Antialias Quality: Specifies the number of samples in each direction per pixel. ------------------------------------------------------ EDIT 1: Version 1.1.*. -- Modified antialiasing so that only clipboard is subsampled, not canvas. This avoids blurring of canvas image when antialiasing is enabled. EDIT 2 (5/21/2017): Version 1.2.* -- Disabled Antialias Quality control when antialiasing is disabled. EDIT 3: (6/11/2018): Version 1.3.0 -- Fix tiling to eliminate cracks in some modes. EDIT 4: (10/2/2020): Version 2.0.0 -- Add "Flip Horizontal" and "Canvas Transparency Preservation" controls. EDIT 5: (10/10/2020): Version 2.0.1 -- Fix centering.
  9. I can suggest another method to paste the clipboard into selections, though it isn't pretty -- which is to say, it seems a bit overly complex, not that the image is bad. Use my Texture Shader plugin. Set the Image to one of the clipboard selections, such as Clipboard (Tiled). Then -- and this is key -- set the Texture Height Scale to 0.0, the Ambient Light Color to White, and the Directional Light Color to Black. You can then move, scale, and rotate the clipboard image, and use the antialiasing. The range of the Offset control should allow the clipboard image to be moved through the entire range of the selection.
  10. Rick, if that's addressed to me, unfortunately I don't know. Until today, I didn't know there was such a thing as Settings -> Plugin Errors. Normally, if I notice plugins disappearing, I just save everything and restart PDN, because I know if I don't it will probably crash soon. Next time it happens, I'll try to do a little forensic work. It seems to happen a lot more frequently to Woodsy, so maybe he can do some investigation next time it occurs. (I sort of wonder if the fixes made to prevent repeatedly rescanning the plugins will cure the symptom of vanishing plugins, but not the underlying problem that causes the crash that soon follows.)
  11. It isn't just that the plugins disappear while the built-in effects remain. (Not that anyone said it was.) When it occurred for me yesterday, I went to run my Color Clearer. It was gone, but there were still quite a few effects remaining in the Color submenu. All the effects in that submenu are plugins. I'd guess about half the effects were there.
  12. HSV Eraser is a similar plugin which has tolerance controls.
  13. I didn't mean which plugins result in the problem; I meant which plugins disappear from the menus. I agree that the problem probably isn't caused by running particular plugins.
  14. My assumption, based on almost nothing, is that it isn't the length of time, it's the number of commands. If I use the same instance of PDN for a long time, it's usually because I'm doing a lot of things with it, and I want to keep the state for the plugin controls and the history, so I can undo. Perhaps it has something to do with the amount of accumulated history data. Presumably larger images create more history data. It might be interesting to record which plugins are missing from the menu. Is it always the same ones, and is there a discernible pattern? Next time it happens to me, I'll write down the remaining plugins so I can figure out which have gone away.
  15. In that particular case, you could have an array of DashStyes and an array of ints (or an array of a struct containing both). The arrays would be initialized to the proper values, then indexed by AmountX to get the gPen.DashStyle and gPen.Width. gPen.DashStyle = penDashStyle[AmountX]; gPen.Width = penWidth[AmountX]; g.DrawLine (gPen, a, b, c, d); It could, of course, be put in a separate method.
  16. I've seen the same thing happen a number of times.In fact, it happened today. I believe it usually occurs when I've had the same instance of PDN up for a long time. I don't use images as large as 3000x3200. I've learned that when plugins start disappearing from the menus, it's time to save everything and restart PDN.
  17. That's why I think it might be better to have the image in the clipboard and the result in the canvas. That way they could be somewhat independent without requiring preprocessing.
  18. Thanks raeanana, that was a very clear explanation. I was going to suggest TR's Custom Palette Matcher, but I see you already know about it. I'm not aware of any plugin that does what you want, but I don't think it would be too difficult to write one. Maybe someone will do that, or if no one volunteers, maybe I will. For plugin writers: TR has a link to his code. I suggest the plugin could be based on TR's code to avoid having to re-invent the palette loading stuff. By using the original palette, the numbering would be in the same order. (The interpolation option should probably be omitted.) The image might be taken from the clipboard, and the grid and numbers rendered to the canvas using GDI+. Another approach might be to produce a file-type plugin that would produce an CSV file from the image in the canvas. That's something I know little about. I would guess two digit numbers would be sufficient.
  19. I have a feeling there are some techniques and plugins that would be useful to you, but I don't really understand what you're trying to do. It would help greatly if you'd explain it in more detail. For instance, you say it's difficult because some of the colors are very similar, but I have no idea what set of colors you're referring to. In the finished product, are the beads the same as pixels? If so, why call them beads, not pixels? Is there a significant distinction? Are the images you show the finished versions, or the starting points? If they're the final versions, what was done to produce them? If they're the starting points, what will be done to produce the final versions, and what would the final versions look like?
  20. There's a table of StickMan Info in the opening comment. Look under Manual.
  21. (Since this is a somewhat different question, you might want to start a new thread rather than extending an old thread.) If you have two images (with white backgrounds), one containing the stuff you want to be dark, and the other containing both the stuff you want to be light and the stuff you want to be dark, the following simple method should work: Put the light-and-dark image in a lower layer. Put the dark image in an upper layer. Adjust the opacity of the upper (dark) layer to get the desired look. (By "light-and-dark" I mean how you want them to appear in the final version, not what they'll look like in the layer, itself. In the layer, they'll both be dark.) If the stuff you want dark is in one image, and the stuff you want light is in another, I believe it's slightly more complicated. I won't bother explaining it unless the above method won't solve your problem.
  22. I say resize. Better than disqualifying it because of size.
  23. Thanks for the very helpful explanation, Pixey! Also thanks to the links to the YouTube videos. I'll have to watch some more of those.
  24. Congratulations to Pixie and Woodsy for their excellent entries. I was particularly impressed by the smooth curvature for the cross-section of Pixie's entry. If it's not spilling any secrets, I'd appreciate a brief summary of the techniques used. In particular, were the reflections and highlights manually drawn, or was some more automatic method used to produce them? Both the winning entries did a very good job of handling that tricky 15° bend in the box end, which gave me fits for the off-angle view. Congratulations, too, to AndrewDavid. (And even though his second entry wasn't really a combo wrench, the reflections on the top of each end are very well done.)
×
×
  • Create New...