[racket] Generating svg-images rather than png-images from Scribble

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Tue Oct 15 12:32:46 EDT 2013

Oh, right! Silly me. I've fixed 2htdp/image images so they can be converted
to svgs.

I've also adjusted the scribble html renderer so that it treats
the current-render-pict-as parameter as a suggestion on an ordering (png
first or svg first) instead of insisting that all convertible things render
as one or the other.

But now that I write this message, I'm thinking that it probably makes more
sense to have a parameter whose value is a list of suggested conversions
(the importance being the order) and that the parameters names should be
based around the word 'convertible' instead of 'pict'.

Does that seem okay to you?

Robby


On Tue, Oct 15, 2013 at 4:46 AM, Jens Axel Søgaard <jensaxel at soegaard.net>wrote:

> 2013/10/15 Robby Findler <robby at eecs.northwestern.edu>:
> > I gave this a try and I'm just getting "???" in the image docs. Below is
> my
> > change to the image library. Does anyone know where the ???s come from?
>
> I was puzzled at first, but if I understand correctly, the HtDP images
> aren't picts but image-snips.
>
> This implies that they don't get converted at line 585 in [1]
> pict-lib/texpict/private/mrpict-extra.rkt,
> but that the conversion called is the one in [2]
> gui-lib/mrlib/image-core.rkt at line 232.
> I only made changes in the first one, not the second one.
>
> I am unsure how to fix this - have the image snips still the pict, or
> have they become
> become bitmaps at this point?
>
> [1]
> https://github.com/plt/racket/blob/5ed686d9911b9f0d1cb1d5cb58d6950e33b9d17c/pkgs/pict-pkgs/pict-lib/texpict/private/mrpict-extra.rkt#L585
>
> [2]
> https://github.com/plt/racket/blob/master/pkgs/gui-pkgs/gui-lib/mrlib/image-core.rkt#L232
>
> /Jens Axel
>
>
> > Robby
> >
> > ☕  git diff | cat
> > diff --git
> > a/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image-guide.scrbl
> > b/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image-guide.scrbl
> > index 8a625611..d66c922 100644
> > ---
> a/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image-guide.scrbl
> > +++
> b/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image-guide.scrbl
> > @@ -12,7 +12,9 @@
> >            "img-eval.rkt"
> >            scribble/decode
> >            scribble/manual
> > -          scribble/eval)
> > +          scribble/eval
> > +          scribble/core
> > +          scribble/html-properties)
> >
> >  @(define guide-eval (make-img-eval))
> >
> > @@ -35,8 +37,8 @@
> >  @(interaction-eval #:eval guide-eval
> >                     (require racket/list racket/local))
> >
> > -
> > - at title[#:tag "image-guide"]{Image Guide}
> > + at title[#:style (style "svg" (list (render-pict-as 'svg-images)))
> > +               #:tag "image-guide"]{Image Guide}
> >
> >  This section introduces the @racketmodname[2htdp/image] library
> >  through a series of increasingly complex image constructions
> > diff --git
> a/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image.scrbl
> > b/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image.scrbl
> > index 9c7d447..6f3cb39 100644
> > --- a/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image.scrbl
> > +++ b/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings/image.scrbl
> > @@ -34,7 +34,7 @@
> >       (img-eval '(extra-margin 0))))
> >
> >
> > - at teachpack["image"]{Images}
> > + at teachpack[#:svg? #t "image"]{Images}
> >
> >  @(define mode/color-and-nitty-text
> >     (make-splice
> > diff --git
> a/pkgs/htdp-pkgs/htdp-doc/teachpack/htdp/scribblings/shared.rkt
> > b/pkgs/htdp-pkgs/htdp-doc/teachpack/htdp/scribblings/shared.rkt
> > index 82ade26..b2c1b40 100644
> > --- a/pkgs/htdp-pkgs/htdp-doc/teachpack/htdp/scribblings/shared.rkt
> > +++ b/pkgs/htdp-pkgs/htdp-doc/teachpack/htdp/scribblings/shared.rkt
> > @@ -1,12 +1,17 @@
> >  #lang racket/base
> >
> > -(require scribble/manual)
> > +(require scribble/manual
> > +         scribble/core
> > +         scribble/html-properties)
> >
> >  (provide teachpack
> >           beginner-require)
> >
> > -(define (teachpack tp . name)
> > +(define (teachpack #:svg? [svg? #f] tp . name)
> >    (apply title #:tag tp
> > +         #:style (if svg?
> > +                     (style "svg" (list (render-pict-as 'svg-images)))
> > +                     #f)
> >           `(, at name ": " ,(filepath (format "~a.rkt" tp))
> >             ,(index (format "~a teachpack" tp)))))
> >
> > ☕  [robby at yanpu]
> > ~/git/plt/pkgs/htdp-pkgs/htdp-doc/teachpack/2htdp/scribblings
> > ☕
> >
>
>
>
> --
> --
> Jens Axel Søgaard
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20131015/c3139f20/attachment.html>

Posted on the users mailing list.