Subject: bug#36654: closed (Re: bug#36654: Docview: show current zoom % in the modeline bar)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 19 Jul 2019 07:21:02 +0000

Your bug report

#36654: Docview: show current zoom % in the modeline bar

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
36654: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=36654
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#36654: Docview: show current zoom % in the modeline bar
From: Tassilo Horn <[email-masked]>
To: 積丹尼 Dan Jacobson <[email-masked]>
Cc: [email-masked]
Date: Fri, 19 Jul 2019 09:20:36 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Tags: wontfix

積丹尼 Dan Jacobson <[email-masked]> writes:

> Well all I know is gv(1), firefox(1), chromium(1) all show the new
> "xx%" every time one zooms or unzooms, if not permanently shown on
> their panels, then at least on a brief popup.

Yes, right.  However, DocView just shows just images converted from the
document.  It has no clue about the original document's paper size,
e.g., US Letter, DIN A4, etc.  So it's not really feasilble to show a
meaningful percentage without using external tools to query that
information.

I'm assuming that with usual document readers a zoom level of 100% means
"Assuming you configured the correct DPI for you monitor [which, I
guess, almost nobody has], the document is displayed in the same size as
if it were printed out on a sheet of paper of the right dimensions".

Of course, we could simply say the initial size of the images when
opening a document is 100% and then change that when zooming.  That
would match my above assumption if `doc-view-resolution' is set to your
monitor's DPI.

However, DocView has two ways of zooming: if emacs is built with
ImageMagick support and `doc-view-scale-internally' is t, the images are
scaled dynamically, otherwise the document is reconverted with a changed
setting of `doc-view-resolution'.  So if you use emacs with ImageMagick
support, you'd usually configure a higher `doc-view-resolution' value in
order to improve the image quality when scaling dynamically.  But then
the "same size as printout" assumption is moot.

And without ImageMagick support, the recipe

  1) Open doc, zoom level indicator shows 100%
  2) Zoom in, zoom level indicator shows, e.g., 110%
  3) Kill buffer
  4) Find doc again, zoom level indicator shows 100%

would show a larger doc in step 4 than in step 1 although the zoom level
is 100% in both cases.  This is because DocView caches the images and
the corresponding resolution in a temporary directory.  Well, of course
it could also save more information on the initial conversion run so
that step 4 would result in 110%, but I think such a feature wouldn't be
worth the effort.

Therefore, I'm closing this issue as wontfix.

Bye,
Tassilo

Subject: Docview: show current zoom % in the modeline bar
From: 積丹尼 Dan Jacobson <[email-masked]>
To: [email-masked]
Date: Sun, 14 Jul 2019 19:50:39 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

       + runs the command doc-view-enlarge (found in doc-view-mode-map),
       which is an interactive compiled Lisp function in ‘doc-view.el’.

OK good, but those plus and minuses should put the current zoom scale
(200%, etc.) into the mode line. (Plenty of room there.)
In fact perhaps start by showing "100%" there even before we start zooming.

(Please do something to make it look different to the user than the
"what percent of the file am I looking at" item in the modeline (even if
not ever present at the same time.) Maybe say: "Zoom 55%".)