
On Thu, 26 Sep 2013 13:45:02 -0700 Bryce Harrington <bryce@...961...> wrote:
How about this: you dimension your drawing either in "px", or some made up unit, "yunits" or "metors" or something. Then you have some control, both in the Inkscape UI and the saved SVG file, which defines that unit relative to either real physical lengths or pixels. If your cell phone display changes size or resolution, you adjust that definition, and the drawing rescales automatically.
Perhaps not ideal, but using SMUUs does sound like the practical solution to this.
I have not the slightest idea of what the meaning of "SMUU" might be, so perhaps you could elaborate.
This could permit having multiple unit systems in the drawing itself, each under a different <g>. So I guess for example, we can imagine a road map at scale 100km:1cm, but which includes highlight bubbles (perhaps rotated 90dgr to the main map) showing details of a few towns at a closer scale of 1km:1cm.
It would help if we could introduce a new attribute to specify the default unit for the node it belongs to and all its descendents. So you could write <g unit="km" transform="scale(1.0E-7)"> ... </g> , and specify all the elements of that group in kilometres, without actually using any unit suffix, and the whole thing would display at a scale of 100km:1cm .
The meaning of "km" would have to be defined in "units.xml" or some other place; it isn't in the SVG specification.
Right, because of that I don't think we can legally use km's there. So in the document SVG itself, the elements would have to be recorded in document units - cm's in this case. The user-visible units would be given as inkscape attributes, which we'd implement in inkscape initially like <g inkscape:scaling-factor="1.0E-7km:1cm"> or something equivalent.
We've had an invitation to submit proposals for improved unit handing in future revisions of the SVG specification. A mechanism for defining new units for a document, and a means of specifying them as the default for a certain part of the SVG tree, as above, are about the most important things I can think of in that regard.
As I said in another message, proposal forthcoming shortly.
Well, I'm just thinking that Inkscape's going to show coordinates as something like (50mm, 250mm), but we need some way to make it obvious to the user whether those measurements are in reference to the screen, the printed page, or the real world.
Next to the object size/position number boxes at the top edge of the Inkscape window, is a selection list which controls which units they are displayed in. We can add another selection list which controls whether the values displayed are relative to the screen, drawing, or export scales.
Maybe, yeah. The window chrome is already so crowded with cruft though, and this feature will be relevant to a pretty distinct audience so I'm uncertain that adding it as another edge widget is ideal. Not that I have a better idea to suggest though...
Krzysztof Kosi\u0144ski <tweenk.pl@...400...> wrote:
This will be extremely confusing. The unit selector should always work in document (drawing) units.
Instead of adding an extra widget, we should add the variables "displayscale" and "exportscale" to the expression evaluator in the spinbox, so that writing e.g. "3in / exportscale" would yield a length which corresponds to 3in when exported.
I'm inclined to agree with that.
-- Ian Bruce