From: Robert K. <rl...@al...> - 2021-05-08 21:05:59
|
I apologize that I've dropped the ball on this. Unfortunately, it looks like whatever solution we come up with is likely to be messy (as is often the case when the underlying breakage lies elsewhere). IIRC the problem was with the *Custom keywords for any option other than paper size. There are two broader possibilities: make a change only for OS X, or make a change for everyone. The former has the advantage of not inconveniencing Linux users who rely on the functionality of custom CD sizes/hubs, but the disadvantage of increasing complexity. I'd rather not add further to the testing matrix or have problems that are hard to reproduce based on OS. As far as solving the OS X specific problem, there are a few ways of going about it: 1) Use the gross/fine adjustment paradigm we currently use for floating point numbers. The difficulty is that for options other than page size we're specifying dimensions in mm rather than points; for CD sizes and the like, points aren't a very natural unit of measurement. So coarse/fine adjustment will yield weird things like 101.9 mm + fine adjustments of .035, .072, .107, .143... mm, which is meaningless to people. Plus, it adds the complexity of a fine adjustment option. 1a) Do this, but using points as the unit. The divisions and subdivisions will be easy enough; end users won't like having to think about points for their CD diameter and hub. Same fine adjustment problem, though. 2) Remove the custom point size altogether, treat it as an integer value at least externally. This is simple, but it means people who really want very precise positioning (better than about 0.4mm or 1/100") will be out of luck. 3) Make the base unit for the PPD files be 0.1 point rather than 1 point. This makes the number of choices very large (CD diameters have a range of about 40 mm, so that would mean 400 choices). I suppose we could make the base unit be 0.5 point rather than 1 point; that would at least reduce the worst case error by a factor of 2, so about 1/200". That might be good enough. Thoughts? I'm sort of leaning toward simply changing the base unit for the PPD files to 0.5 point. That will still make for a lot of option choices and we'll need to test to make sure that that doesn't cause additional problems. What do people think? |