bug-groff
[Top][All Lists]
Advanced

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

[bug #58206] [PATCH] fix PDFPIC issue with determining size of pdfs cont


From: Deri James
Subject: [bug #58206] [PATCH] fix PDFPIC issue with determining size of pdfs containing images
Date: Tue, 21 Apr 2020 19:00:23 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0

Follow-up Comment #7, bug #58206 (project groff):

PDFPIC is not written by me, but I understand why it was written! The gropdf
driver supports this:-

\X’pdf: pdfpic file alignment width height line-length’

Place an image of the specified width containing the PDF drawing from file
file of desired width
and height (if height is missing or zero then it is scaled proportionally). If
alignment is -L the
drawing is left aligned. If it is -C or -R a linelength greater than the width
of the drawing is re-
quired as well. If width is specified as zero then the width is scaled in
proportion to the height.

The problem with this low level command is that the position where groff will
render next is not altered, gropdf has no way of signalling back to groff the
vertical space occupied by the picture. So it is down to the author to move
down the required distance, or set an indent if the text is to flow to the
right of the picture, adding a trap to remove the indent when the bottom the
picture is reached.

Here's a simple example using your bad pdf. It requires that you know the x/y
proportions, in your case 1200x800 pixels it is 3/2:-

Here it is:-
\#.PDFPIC Bad3..pdf
\# Alternatively ...
.nr len 4i
\X'pdf: pdfpic Bad.pdf -L \n[len]z'
\# Back to top of picture
.sp -1l
\# Pic is 1200x800, so if width is 4i length would be 4i * 2/3
.sp \n[len]u*2u/3u
And here we are.

You don't need to groff -U so it perfectly safe.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?58206>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]