Le 05/09/2018 à 09:13, Zaumseil René a écrit :
> it is now some weeks after the last discussion on this tip. I think I > have answered all open issues. The current state is in the tk > repository at http://core.tcl.tk/tk/timeline?n=100&r=tip-507 If there > are no more questions I would like to get a vote on it.
Here are some comments and questions summing up my reading and testing:
A. About the TIP
A.1. Quoting the TIP: "are there better libraries with our requirements?":
What are those requirements?
What was the reason for going with tksvg rather than another choice?
Is there another option, another implementation? Was this discussed and
settled? Any pointer to the discussion?
A.2. Quoting the TIP: "nanosvg is no full svg library":
I'm wondering about the future: putting this tip-507 code into the core
condemn us to maintain it for the next 20 years at least (who commits to
do this by the way?). Since nanosvg provides only part of the SVG
library, will upward compatibility be reasonably guaranteed when we will
be willing to replace this nanosvg by another code having more complete
SVG functionality?
Or perhaps we consider we don't care since this nanosvg is already a
huge improvement over having no SVG support at all? This would be a
position I could agree on.
Nonetheless, what governed the choice of a partial SVG library as
opposed to a full SVG-featured library (see section "Alternatives" in
the TIP)?
A.3. I really believe, and this was also requested by Harald Oehlmann on
tcl-core on 29 May 2018, that the TIP should document what is NOT
possible/supported with nanovsg (compared to a full-featured SVG library).
A.4. If you're requesting a vote, then the proposal should be fully
decided by consensus. Therefore the "Discussion" section of the TIP,
containing open questions, should not stay as it is now.
A.5. The TIP still does not mention that the format parameter is
read-only. When Koen Danckaert noticed this you agreed to update the TIP
accordingly.
B. About the source code, the build and the running of the test suite
B.1. The tip-507 branch compiles with success on Windows Vista and Win7,
with Visual C++ 2008.It also compiles with success on macOS. Didn't try
on Linux, anyone can check please?
B.2. The test suite runs successfully on Windows (Win7), both
imgSVGnano.test alone and the full Tk test suite (exactly zero
failure).Same good results on macOS. Didn't try on Linux, anyone can
check please?
B.3. Naming: nanosvg or svgnano? Both are present in the source code
from tip-507 branch. Shouldn't this be homogeneous (i.e. pick one and
use it consistently)?Is there some reason that escapes me for not having
consistency?
B.4. Still <TODO> in the source code, according to Harald Oehlmann: "the
quick fix by me has to be replaced (stroll replaced by strol)". Any taker?
C. About the documentation (in photo.n)
C.1. What was in the tip-507 branch did not compile to html. I have
fixed the syntax errors and changed the text slightly since I was there.
Proofreading by any native english speaker is probably needed.
C.2. Quotingthe man page: "The svgnano format supports a wide range of
SVG features, but the full SVG standard is not available for instance
the 'text' feature is missing.": I think we should point the reader to
the full documentation of what is supported in our subset of the SVG
standard and what is not supported. Even better would be we document
this properly in Tk. As dkf reminded us at some point in the discussion:
we have a long tradition of not forcing our users to read the code to
find out what feature Tcl/Tk has.
C.3. Quoting the man page: "Available units are px (default, coordinates
in pixel), mm , cm and in." But reading nanosvg.h one learns that "The
units passed to NanoVG should be one of: 'px', 'pt', 'pc' 'mm', 'cm', or
'in'." Why were some of these units left out of the man page?
C.4. In one of his messages to tcl-core, René mentioned: "Be aware each
new -format call will reset previous ones." This is true, and definitely
deserves to be added in the man page (if we don't see this as a bug,
which was my first reaction). The options do not cumulate, e.g.:
$img configure -format {svgnano -scale 2}
$img configure -format {svgnano -x 10} ; # this call resets -scale
to 1 !!
But really I tend to view this as a bug. Opinions?
Regards,
Francois
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Tcl-Core mailing list
Tcl-...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tcl-core