Jump to content

Layer anomoly in use of Import *.svg


PlainoldTony

Recommended Posts

Hello Everybody

Has anyone out there had  this issue? I'm creating a new face for a temperature gauge on my boat. I'm drawing it in Inkscape but inkscape's colour fill is not very easy to use, so I thought I'd do that part in Paint.net. However, in order to preserve the layers I have had to use the *.svg plugin. So far so good. Problem is, although all the layers from inkscape are listed as having transferred. one layer, (called: inner circle) does not contain its image. See attachments. Can anyone please explain this and suggest a solution. The write-up of this plugin implies that there could be a large number of layers transferred which might slow Paint.net's responses . Therefor, I would not think that 4 layers would be too many. In any case, it is neither the top or bottom layer that is affected. I'm assuming here that the layers are transferred in some particular order; perhaps, top to bottom.

Regards

Layer_Incl.png

Layer_Missing.png

plainoldtony

Link to comment
Share on other sites

I think it would be a good idea to show us the original SVG file itself and also for you to make as a test a second image in the same style with multiple layers, save it in Inkscape and see, what happen.

 

BTW: In my version of Inkscape I can see FIVE different SVG saving options plus one as ZIP:

 

  1. Inkscape-SVG
  2. normal SVG
  3. Compressed Inkscape-SVG
  4. Compressed SVG
  5. Optimized Inkscape-SVG

 

Which of these did you use? In your first screenshot I see the filename Gauge_4_layered.tar and that irritates me a little bit. I guess one of the compressed versions.

 

In general in my opinion switching the application resp. importing files for further editing isn't really a good idea because of exact this kind of problems. Why you don't realize it completely in Paint.NET?

Edited by IRON67
Link to comment
Share on other sites

Questions about a specific plugin should be asked in the plugin thread. Normally I'd close a thread after pointing this out, however I think Iron67 is onto something with his suggestion that you rebuild the image in paint.net, so I'll let the discussion continue...

Link to comment
Share on other sites

Hello Iron67

Many thanks for your quick reply. I attach the transferred .svg and the Inkscape .tar files so that you can open them yourself. As th filename might suggest, this is not the first version of this image that I have created. It's OK in Inkscape. Take a look. I'm sure you will solve this easily or it won't even go wrong for you, but it illudes me.

Regards

Tony

Temp Gauge_4.svg

Temp Gauge_4_layered.tar

plainoldtony

Link to comment
Share on other sites

Hello Ego Eram Reputo

 

Thank you very much for allowing me to break with protocol. I apologise for not realising the existence of a dedicated plugin thread. I will happily accept a decision to move it.

Best regards

Tony

plainoldtony

Link to comment
Share on other sites

I can't even open the Gauge...SVG with PDN despite I've installed the newest version of Martin Osiekas SVGImport-Plugin correctly. If I try to open the SVGs from the archive, all images are empty. If I choose for layers instead flat in the import dialog, PDN crashes on every image.

 

Spoiler

System.OutOfMemoryException: Nicht genügend Arbeitsspeicher.

   bei System.Drawing.Graphics.CheckErrorStatus(Int32 status)

   bei System.Drawing.Graphics.DrawPath(Pen pen, GraphicsPath path)

   bei ControlExtensions.ImSvg.PaintPath(Graphics g, XmlNode elementNode, GraphicsPath gp)

   bei ControlExtensions.ImSvg.ElementEllipse(Graphics g, XmlNode elementNode)

   bei ControlExtensions.ImSvg.ElementNode(Graphics g, XmlNode elementNode, Int32 depth)

   bei ControlExtensions.ImSvg.ElementG(Graphics g, XmlNode elementNode, Int32 depth)

   bei ControlExtensions.ImSvg.ElementNode(Graphics g, XmlNode elementNode, Int32 depth)

   bei ControlExtensions.ImSvg.ElementSvg(Graphics g, XmlNode svgElementNode, Int32 depth)

   bei OptionBasedFileTypes.SvgFileType.OnLoad(Stream input)

   bei PaintDotNet.FileType.Load(Stream input) in D:\src\pdn\src\Data\FileType.cs:Zeile 496.

   bei PaintDotNet.Functional.Func.Eval[T1,TRet](Func`2 f, T1 arg1) in D:\src\pdn\src\Base\Functional\Func.cs:Zeile 158.

 

Edited by IRON67
Link to comment
Share on other sites

@PlainoldTony, please take 30 seconds to look at the source contents of the .svg file. You will easily noticed that the "inner layer" is not like the others (it has something extra).  Removing that difference solves the issue.

https://3.bp.blogspot.com/-O_NloxnuoS0/VLlHw3KyiJI/AAAAAAAABbE/bWanRaJ7DRw/s1600/oneofthese.jpg
 

Spoiler

From this:


  <g
     inkscape:groupmode="layer"
     id="layer3"
     inkscape:label="inner layer">
    <a
       id="a847">
      <ellipse
         ry="17.48797"
         rx="16.95343"
         cy="23.549358"
         cx="23.252451"
         id="path827"
         style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:0.3383671;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
    </a>
  </g>

 

To this:


  <g
     inkscape:groupmode="layer"
     id="layer3"
     inkscape:label="inner layer">
      <ellipse
         ry="17.48797"
         rx="16.95343"
         cy="23.549358"
         cx="23.252451"
         id="path827"
         style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:0.3383671;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
  </g>

 

 

 

 

 

But like the others have said, it's best to just use Inkscape or just use paint.net; not both for the same project.

(September 25th, 2023)  Sorry about any broken images in my posts. I am aware of the issue.

bp-sig.png
My Gallery  |  My Plugin Pack

Layman's Guide to CodeLab

Link to comment
Share on other sites

22 hours ago, toe_head2001 said:

@PlainoldTony, please take 30 seconds to look at the source contents of the .svg file. You will easily noticed that the "inner layer" is not like the others (it has something extra).  Removing that difference solves the issue.

https://3.bp.blogspot.com/-O_NloxnuoS0/VLlHw3KyiJI/AAAAAAAABbE/bWanRaJ7DRw/s1600/oneofthese.jpg
 

  Reveal hidden contents

From this:



  <g
     inkscape:groupmode="layer"
     id="layer3"
     inkscape:label="inner layer">
    <a
       id="a847">
      <ellipse
         ry="17.48797"
         rx="16.95343"
         cy="23.549358"
         cx="23.252451"
         id="path827"
         style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:0.3383671;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
    </a>
  </g>

 

To this:



  <g
     inkscape:groupmode="layer"
     id="layer3"
     inkscape:label="inner layer">
      <ellipse
         ry="17.48797"
         rx="16.95343"
         cy="23.549358"
         cx="23.252451"
         id="path827"
         style="opacity:1;fill:none;fill-opacity:0;stroke:#000000;stroke-width:0.3383671;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
  </g>

 

 

 

 

 

But like the others have said, it's best to just use Inkscape or just use paint.net; not both for the same project.

 

Hello Toe_Head2001

These contributors names get more and more bizarre. Still, I suppose yours has some significance to you and those who know you. Thank you for your most informative reply. I remain somewhat perplexed as I cannot see how you have accessed this information. Admittedly, I'm not very experienced with drawing programs. I've looked in Object Properties and Document properties but cannot see the level of data that you have shown to me. Perhaps you would be so kind as to give me some further help by describing how to access this settings/data level.

You are probably right in suggesting that I only use one application for each project, but each does have advantages over the other. Two examples I can say are: Paint.net's colour fill is easier to use, while Inkscape's zoom function is nicer by not magnifying the pixels. Anyhow, thanks for your assistance.

Best regards

Tony

plainoldtony

Link to comment
Share on other sites

13 minutes ago, PlainoldTony said:

while Inkscape's zoom function is nicer by not magnifying the pixels

 

Inkscape produces mainly SVG images, that means SCALABLE VECTOR GRAPHICS. Such Images have no informations about colors for every pixel but mathematically described forms/shapes and graphical base elements like circle, rectangle, line and so on, that descibes the content.

Thatswhy you can scale such images wihout quality loss.

 

For your project, SVG is unnecessary and exaggerated. It would be a different thing if you were looking for a logo for your company that should look as good on a business card as on a billboard.

Edited by IRON67
Link to comment
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

×
×
  • Create New...