Rhino 7 PRINT dpi affects vectors, both resolution and print width

Hi, we were just printing pdf’s from layout and discovered that two computers gave different line resolution AND default print width, with apparently the same settings, the same file and the same Rhino version (and RhinoPDF printer).

So after testing a bunch we discovered that the DPI setting affected both line resolution

We were of course printing to vectors and not raster. (Otherwise the dpi setting would make a lot of sense)

At 200dpi the lines became thicker and the curves were simplified.
At 600dpi the lines became thinner and did not loose visual resolution.

After all these years I would not expect the dpi setting to affect vectors at all. And absolutely not override the default curve thickness.

I would expect the dpi to only affect rendered views (and similar) and bitmaps in the file IF we still chose to print to vector. (If raster was choosen it would of course affect the entire image that was printed)

Is this intended? It says nothing about it in the help either.


@pascal and @wim do you know anything about this?
I can probably provide a file as an example if you need it. I will check on demand, or generate one unless you are aware of this. If the latter is the case then it should probably get more attention in the GUI.

Yes this is intended.

Curves are broken down into Beziers or polylines using pixel (dot) tolerance when sending them to something like a printer. If the dots are smaller, then then Beziers or polylines will be denser.

I believe hairline in Rhino 7 means single dot thickness. This would mean that resolution would have an effect on hairline. Other print weights should result in the same output thickness.

This has been the same probably going back to at least Rhino 4

Thanks for the fast reply Steve!

OK, then I think this needs to be communicated in some way. (“dpi setting affects line simplification and hairline thickness” or something like that)

But would that not mean that going from 200dpi to 600dpi should yield a 3x thicker line, but that was not the case, it’s more like 30-50% difference in thickness.

Or could it be that 0.13 mm line thinkness is to thin for 200pdi so it was bumped up?
200dpi = 25.4mm/200 = 0.127mm… so that IS 0.13mm… nope. I think we need to look into this.

Hairline in Rhino 8 is 0.05mm thick so there shouldn’t be a difference between resolutions in 8.

Communication is good, but this also hasn’t really come up in 20+ years.

1 Like

I know… I would have put money and quite a bit on it too, that dpi didn’t affect curves at all. It just goes to show that if it isn’t communicated we take our own logic for granted. (Talking about my self here)

But it also goes to show that when architects OCD over visual fidelity and discover that two pdf’s doesn’t feel the same then they are onto something :wink:

I guess this might not be intuitive since dpi isn’t usually used in this manner in other vector (2D) applications to portray line fidelity and minimum line width. I see that it does make sense from a programmers point of view.

@gustojunk were you aware of dpi affecting curve fidelity and minimum line width in PDF printing?

We already changed this in V8; at least the minimum line width bit

1 Like

Nice, look forward to being able to use it as the main platform.
I will test it out, we can’t transfer to V8 yet.

What is holding you back?

Stability when pushed to the limit and minor issues we can’t spend time on bugtracking and dealing with during heavy deadlines. Rhino 7 is rock solid and it bullet proof tested by us for years, so it will have to wait until autumn when new projects start. Gustavo has covered a lot of the topics so I’ll leave this out of this topic.

I tested setting dpi to 2400 and that DOES give thinner hairline curves than 200 dpi or 600 dpi here now, so it seems some lines were set to 0.1 and thus printed as 0.127 and that was the 30% thickness increase we saw.

Case closed and I can rest. Sorry for the long road I had to go and thanks for following me along it.

From a user point of view it is nice that line thickness isn’t affected by dpi, so thank you for updating that in V8!

If somebody else reads this in the future, here are some visuals on how thickness and curve fidelity is affected in V7:

@stevebaer in Rhino 8.7 this is the result I get at 75dpi, apparently only hearline is affected.
The file size is 3x bigger than the 75dpi version of v7 now since curve fidelity is intact too (as no simplifying of polylines seems to take place)

So maybe hairline needs a tuneup to use the said 0.05 mm thickness and ignore the dpi setting? It doesn’t make sense that only hairline is affected.

test print 600 dpi.zip (1.4 MB)

And a side note regarding discourse:
I see that most of the images I posted was downscaled to 1920 width, but not the 75 dpi v7 one for some reason. Could you tune that up to supporting up to 4k images before downscaling?

75 DPI? That is 2.95 dots per millimeter. Multiplied by 0.05 you end up with 0.14 dots which is much less than 1.

Maybe we should step back so I can understand what it is you are trying to do at 75 DPI?

[edit] I will take a look at this, thanks

1 Like

When I bugtrack I exaggerate settings to clearly see what we are dealing with. That way things stand out and I don’t have to zoom in all the way or second guess my eye sight :slight_smile:

And when printing billboards (not vector but raster) we often use a low resolution as these are not to be seen from up close. So it is not an uncommon resolution. But here I tested everything from 10dpi to 2400dpi to see any inconsistencies if there were any. That test made hairline stand out as the odd setting that was affected. 75 was best suited to show as an image here on discourse due to the downscaling.

The two trees are two different blocks, bottom one is 1:1 and the top one is 1000 times bigger and then the block is downscaled. That was done to see if block scaling would affect any curve width settings. It doesn’t obviously, but I try to do things thoroughly, again by exaggerating.

Thanks; I’ll take a look at this.

By the way, the only bit that is affected for curve resolution is for actual “curvy” things. Meshes and polylines don’t take DPI into account.

Hi Jørgen,

This is an area I can’t help with. We only use V7 and I was printing a lot in the last couple to days, all large format from viewport (I don’t use layouts). I was using print display colors / printed as vectors. Stuff looks fine but it was all poly lines, circles, dimensions and text. No splines.

When we do stuff for fancy output we export to Illustrator and also seems to be fine that way.


1 Like

OK! I presume this is related to V8, as it clearly does in V7 :slight_smile:
(polylines and curves that is, meshes I have not tired)

Same as us, only we use layouts, can’t live without them any more.
This was related to V7 and shows that dpi affects curves if the dpi is to low. If you use the default 600 then you are good to go.

Thanks for chiming in!

PS! 01.40 here now, so logging off. Cheers!

1 Like