Re: resize/zoom ?

Bob Friesenhahn <[email protected]> Fri, 4 Dec 2020 08:29:13 -0600 (CST)
Newsgroups gmane.comp.video.graphicsmagick.help
Message-ID <[email protected]>
On Fri, 4 Dec 2020, Pro Turm wrote:

>>> 1) In case of zoom-in, would this preserve the quality of the image ?
>> Wrap SVG in SVG... intelligent pre-processing (e.g. only include the
> parts likely to be included in the view)
> Sorry, I didn't understand how you mean that. Are you saying
> a) I should preprocess the xml-like svg and insert a viewbox there as an
> xml-attribute ?

I am not sure if viewbox is what is needed.  My thought is that by 
adding additional SVG wrapping that the affine matrix (scale, offset, 
etc.) and the view of the wrapped/subordinate SVG can be controlled. 
This approach should work with any SVG renderer.  If you are basing 
your approach on SVG, then it seems best to use SVG syntax so the 
result could be used with GraphicsMagick or some other SVG renderer.

> b) I should preprocess the read svg by the SVG ? If, yes, do you have any
> example ?

No, I do not have any ready-made example or time to prepare one.  SVG 
supports defining urls which may refer to arbitrary pre-defined 
inline drawing content.  The original SVG may be used to create a 
pattern url which is then referenced by the wrapper.  The wrapper 
controls how the subordinate url is presented.

> 3) http://www.graphicsmagick.org/api/types.html -> tile_info seems to be
> never ever used in any svg application?

That is true.  The referenced documentation says that it is used to 
support "raw" formats as well as for TIFF.  I do see that the render 
code does use this internally in order to support fill and stroke 
patterns.  Also, the montage code is using this for a different 
purpose.

The C API is very old and there is quite a lot of code implemented 
using it.  As a result, some data structures are used for multiple 
purposes depending on the code which is using it.

Bob
-- 
Bob Friesenhahn
[email protected], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
Public Key,     http://www.simplesystems.org/users/bfriesen/public-key.txt