Changing Z-Order of layers for "Print" (Copper obliterates Silkscreen)

For File->Print, is there a way to set up PCBNew (v 7.0.7 on Windows) so that the top-side silkscreen (F.Silkscreen) doesn’t get covered by the copper pour (F.Cu)? See the image of the PDF created:

Cu_covering_Silkscreen

Looks like essentially the same question was asked back in 2016, though I’d see if there were any recent updates on this:

…I though maybe changing the transparency of F.Cu, might be a work-around, but that doesn’t flow through to “Print”.

Thanks!

Strongly suggest you plot to PDF instead of print.

Print to PDF goes through whatever PDF printer driver your system provides. Plot gives you a lot more options to work with and avoids a system driver that you have little control over.

1 Like

So I tried Plotting to PDF, which even allows the rearranging of the layers in the “Plot on All Layers” window (using the arrow buttons below the window). But that order apparently doesn’t control which gets painted on top of which, because the copper still overlays the silkscreen, in either order.

Thanks

If I remember correctly, I fixed this for 8.0 but in 7.0 you can’t control the order.

1 Like

Ah, good to know.

Thanks

7.0 doesn’t have reordering at all as far as I can tell? I think you’re already using 7.99/8.0, so I don’t think 7.0 vs. 8.0 is the issue. Edit: you said 7.0.7, sorry. My copy of 7.0.10 does not have arrows so now I’m just confused.

Here’s 7.0, with no +/- buttons, unlike what you show in your screenshot:

Anyways, using 8.0-rc1 I can get the result you’re looking for (at least highly simplified, just F.Cu and F.SilkS). This is copper over silk:

There’s a few things you have to be careful about here which maybe could be tweaked to make this a little easier - or I don’t fully understand how it works, which is always possible.

  1. Whatever the “main” layer you have selected in the “include layers” list is, that one gets plotted underneath any of the “plot on all layers” selections.
  2. If a “Plot on all layers” selection has already been plotted, because it’s the primary layer for the current plot, it won’t get plotted again when the “Plot on all layers” selections are plotted on top. The consequence of this is that you can’t easily control where your primary layer gets plotted - it’s always going to be at the bottom. (Naively I’d prefer that this work the other way - if your primary layer is also in the “plot all layers” selection, then the primary layer gets skipped and it gets plotted later with the “plot all layers” selections, where you control the ordering). The workaround here is to use an empty layer as your primary layer so that you maintain full control over the ordering of the layers you care about.
  3. The “Plot on all layers” ordering is backwards from what I expected - items that are lower down in the list get plotted after (on top of) items that are higher up in the list.

Does that help?

2 Likes

Ah, ha, that did it. I selected F.Cu in the “Include Layers”, and like you said, it went to the bottom, I then selected the F.Silkscreen in the “Plot on All Layers” which went on top. So that solved my issue.

Thanks!

1 Like

It was what I tried with KiCad V4 before designing my first KiCad PCB and I failed. Since then my solution (when making pcb documentation) is to plot layers to SVG and then merge them using Inkscape. I load copper layer and change its color to gray 20% and then load the other layer(s) I want to be visible on the background of copper.