Re: [PATCH -perfbook 0/8] Use rsvg-convert for SVG --> PDF conversion

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 05, 2024 at 11:51:55PM +0900, Akira Yokosawa wrote:
> On Fri, 5 Jan 2024 05:31:36 -0800, Paul E. McKenney wrote:
> > On Fri, Jan 05, 2024 at 06:44:47PM +0900, Akira Yokosawa wrote:
> >> Hi Paul,
> >>
> >> [Cc 0/8 and 8/8 to Leo, Patch 8/8 touches gitlab-ci.yml]
> >>
> >> Frequent crashes of Inkscape I encountered in 2023, which was mitigated
> >> in commit f307e19f2be0 ("Prevent inkscape from interacting with desktop
> >> manager"), made me look into alternative SVG --> PDF converters.
> >>
> >> It turns out that recent versions of rsvg-convert work reasonably well
> >> for perfbook.  By "recent versions", I mean 2.52.5 and 2.57.x.
> >> rsvg-convert is a light-weight CLI command and is much faster than inkscape.
> >>
> >> Sequential SVG --> PDF conversion time I get from
> >> "make cleanfigs-svg; env time make figs":
> >>
> >>                 elapsed
> >> Inkscape:        21.45s
> >> rsvg-convert:     6.05s
> >>
> >> So patches 1/8--4/8 add rules in Makefile for using rsvg-convert if it
> >> is recent enough.
> >>
> >> One caveat: There is a SVG cartoon drawn by an ancient version of Inkscape,
> >> for which very recent versions of rsvg-convert produce distorted background
> >> of outlined text.
> >>
> >> Patch 5/8 retouches the cartoon and put a SVG compatible with librsvg as
> >> cartoons/r-2023-Memory-barriers.svg.
> >>
> >> Patches 6/8 and 7/8 adjust FAQ-BUILD and Dockerfiles accordingly.
> >>
> >> Patch 8/8 updates gitlab-ci.yml.  It needs an explicit ACK or Tested-by:
> >> from Leo before applying.
> >>
> >> Finally, this series wouldn't affect those of you who don't have
> >> rsvg-convert.
> > 
> > It does seem to deal well with rsvg-convert v2.52.5, so queued.
> > Especially given that I was having difficulty with inkscape's conversions
> > to PDF for another document.  I overcame these (I kid you not!) by
> > hand-editing one of perfbook's .svg files.
> 
> Hmm...
> 
> I remember hand-editing defer/RCUusecases.svg.  Let me see ...
> 
> Yes, it was commit 25238915b129 ("defer: Retouch SVG files for browser
> compatibility (2nd attempt)").
> 
> Which perfbook's SVG file did you need to hand-edit?

They were {co,fr,rf}.svg in the memorder directory.

But first, I should hasten to add that there is a good chance that
I was confused and used the wrong inkscape command-line arguments
and environment variables, as opposed to having -really- needed to
hand-edit the document.  I used my usual lazy approach of sticking
with the first thing that gave reasonable results instead of carefully
analyzing the problem.  In this case, that was hand-edit the .svg files
in the perfbook directory, use perfbook's "make" to generate the .pdfs,
and move the .pdfs to the other document's directory.

So it is just as likely to be me being confused as it is that the files
themselves have any real problem.

							Thanx, Paul

>         Thanks, Akira
> 
> 
> > 
> > So thank you very much!
> > 
> > Again, queued, and I will be pushing this out shortly.
> > 
> > 							Thanx, Paul
> > 
> >>         Thanks, Akira
> >> --
> >> Akira Yokosawa (8):
> >>   Makefile: Add rules to use rsvg-convert for SVG --> PDF conversion
> >>   Makefile: Don't use rsvg-convert < 2.57
> >>   Makefile: Allow rsvg-convert 2.52
> >>   Makefile: Use rsvg-convert anyway if no inkscape is found
> >>   cartoons: Retouch r-2014-Memory-barrier.svg
> >>   FAQ-BUILD: List package for rsvg-convert in package lists
> >>   docker: Add packages for rsvg-convert
> >>   gitlab-ci.yml: Install librsvg instead of inkscape
> >>
> >>  FAQ-BUILD.txt                      |   23 +-
> >>  Makefile                           |   48 +-
> >>  cartoons/r-2023-Memory-barrier.svg | 1130 ++++++++++++++++++++++++++++
> >>  cpu/overview.tex                   |    2 +-
> >>  docker/Dockerfile                  |    4 +-
> >>  docker/Dockerfile.fedora           |    7 +-
> >>  utilities/gitlab-ci.yml            |    2 +-
> >>  7 files changed, 1198 insertions(+), 18 deletions(-)
> >>  create mode 100644 cartoons/r-2023-Memory-barrier.svg
> >>
> >>
> >> base-commit: 1ea46c6d43475fbdf97404dec28a58036d505bc3
> >> -- 
> >> 2.34.1
> >>
> >>
> > 




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux