GNU bug report logs - #39736
27.0.60; wrong display of scaled checkerd pattern image

Previous Next

Package: emacs;

Reported by: ynyaaa <at> gmail.com

Date: Sat, 22 Feb 2020 14:28:01 UTC

Severity: normal

Merged with 38394

Found in version 27.0.60

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39736 in the body.
You can then email your comments to 39736 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#39736; Package emacs. (Sat, 22 Feb 2020 14:28:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to ynyaaa <at> gmail.com:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 22 Feb 2020 14:28:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: ynyaaa <at> gmail.com
To: bug-gnu-emacs <at> gnu.org
Subject: 27.0.60; wrong display of scaled checkerd pattern image
Date: Sat, 22 Feb 2020 23:26:54 +0900
A scaled checkered pattern image is converted into a solid gray image.
I expect a large chechered pattern.
Evaluating the form below, a solid gray square is displayed.

(let ((data "\
P1
8 8
01010101
10101010
01010101
10101010
01010101
10101010
01010101
10101010
"))
  (insert-image (create-image data 'pbm t :scale 8)))

The form below temporally displays another image.
The upper side is gray, the lower-left corner is black,
and the lower-right corner is white.
Once the text cursor gets on the image, the whole image is displayed as
a gray square.

(let ((data "P1\n2 2\n01\n10")
      (buf (generate-new-buffer "tmp")))
  (switch-to-buffer buf)
  (insert "\na")
  (goto-char (point-min))
  (redisplay)
  (insert-image (create-image data 'pbm t :scale 16)))


In GNU Emacs 27.0.60 (build 1, x86_64-w64-mingw32)
 of 2019-12-29 built on CIRROCUMULUS
Repository revision: 21c3020fcec0a32122d2680a391864a75393031b
Repository branch: emacs-27
Windowing system distributor 'Microsoft Corp.', version 10.0.18363
System Description: Microsoft Windows 10 Pro (v10.0.1909.18363.657)

Recent messages:

Configured using:
 'configure --without-dbus --host=x86_64-w64-mingw32
 --without-compress-install -C 'CFLAGS=-O2 -static -g3''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY W32NOTIFY ACL GNUTLS LIBXML2
HARFBUZZ ZLIB TOOLKIT_SCROLL_BARS MODULES THREADS PDUMPER LCMS2 GMP

Important settings:
  value of $LANG: JPN
  locale-coding-system: cp932

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(thingatpt xref project ring gnutls network-stream nsm mailalias
smtpmail auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs json
map cl-extra misearch multi-isearch pp shadow sort mail-extr emacsbug
message rmc puny dired dired-loaddefs format-spec rfc822 mml mml-sec
password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs
text-property-search time-date subr-x seq byte-opt gv bytecomp
byte-compile cconv mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils term/bobcat help-fns radix-tree cl-print
debug backtrace help-mode easymenu find-func cl-loaddefs cl-lib
japan-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win
w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote threads w32notify w32 lcms2 multi-tty make-network-process
emacs)

Memory information:
((conses 16 69135 12815)
 (symbols 48 7851 5)
 (strings 32 22941 1828)
 (string-bytes 1 729921)
 (vectors 16 15072)
 (vector-slots 8 259276 24684)
 (floats 8 37 321)
 (intervals 56 709 0)
 (buffers 1000 18))




Merged 38394 39736. Request was from Alan Third <alan <at> idiocy.org> to control <at> debbugs.gnu.org. (Mon, 24 Feb 2020 19:03:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39736; Package emacs. (Mon, 24 Feb 2020 19:06:01 GMT) Full text and rfc822 format available.

Message #10 received at 39736 <at> debbugs.gnu.org (full text, mbox):

From: Alan Third <alan <at> idiocy.org>
To: ynyaaa <at> gmail.com
Cc: 39736 <at> debbugs.gnu.org
Subject: Re: bug#39736: 27.0.60; wrong display of scaled checkerd pattern image
Date: Mon, 24 Feb 2020 20:05:23 +0100 (CET)
On Sat, Feb 22, 2020 at 11:26:54PM +0900, ynyaaa <at> gmail.com wrote:
> 
> A scaled checkered pattern image is converted into a solid gray image.
> I expect a large chechered pattern.
> Evaluating the form below, a solid gray square is displayed.
> 
> (let ((data "\
> P1
> 8 8
> 01010101
> 10101010
> 01010101
> 10101010
> 01010101
> 10101010
> 01010101
> 10101010
> "))
>   (insert-image (create-image data 'pbm t :scale 8)))

I believe this is the same as bug#38394. Could you perhaps try the
patch at

    https://debbugs.gnu.org/cgi/bugreport.cgi?bug=38394

> The form below temporally displays another image.
> The upper side is gray, the lower-left corner is black,
> and the lower-right corner is white.
> Once the text cursor gets on the image, the whole image is displayed as
> a gray square.
> 
> (let ((data "P1\n2 2\n01\n10")
>       (buf (generate-new-buffer "tmp")))
>   (switch-to-buffer buf)
>   (insert "\na")
>   (goto-char (point-min))
>   (redisplay)
>   (insert-image (create-image data 'pbm t :scale 16)))

I tried this and couldn’t replicate it, but I believe I had the patch
for 38394 applied, so it may be a fix. Alternatively it could be
related to the way the cursor is drawn on images.
-- 
Alan Third




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39736; Package emacs. (Mon, 24 Feb 2020 19:25:01 GMT) Full text and rfc822 format available.

Message #13 received at 39736 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Alan Third <alan <at> idiocy.org>
Cc: ynyaaa <at> gmail.com, 39736 <at> debbugs.gnu.org
Subject: Re: bug#39736: 27.0.60; wrong display of scaled checkerd pattern image
Date: Mon, 24 Feb 2020 21:24:31 +0200
> Date: Mon, 24 Feb 2020 20:05:23 +0100 (CET)
> From: Alan Third <alan <at> idiocy.org>
> Cc: 39736 <at> debbugs.gnu.org
> 
> > Evaluating the form below, a solid gray square is displayed.
> > 
> > (let ((data "\
> > P1
> > 8 8
> > 01010101
> > 10101010
> > 01010101
> > 10101010
> > 01010101
> > 10101010
> > 01010101
> > 10101010
> > "))
> >   (insert-image (create-image data 'pbm t :scale 8)))
> 
> I believe this is the same as bug#38394. Could you perhaps try the
> patch at
> 
>     https://debbugs.gnu.org/cgi/bugreport.cgi?bug=38394

The OP is on MS-Windows, and the patch is for XRender configurations,
so it won't help, I think.

> > The form below temporally displays another image.
> > The upper side is gray, the lower-left corner is black,
> > and the lower-right corner is white.
> > Once the text cursor gets on the image, the whole image is displayed as
> > a gray square.
> > 
> > (let ((data "P1\n2 2\n01\n10")
> >       (buf (generate-new-buffer "tmp")))
> >   (switch-to-buffer buf)
> >   (insert "\na")
> >   (goto-char (point-min))
> >   (redisplay)
> >   (insert-image (create-image data 'pbm t :scale 16)))
> 
> I tried this and couldn’t replicate it, but I believe I had the patch
> for 38394 applied, so it may be a fix. Alternatively it could be
> related to the way the cursor is drawn on images.

I didn't see any temporary display, either, FWIW.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39736; Package emacs. (Mon, 24 Feb 2020 21:40:01 GMT) Full text and rfc822 format available.

Message #16 received at 39736 <at> debbugs.gnu.org (full text, mbox):

From: Alan Third <alan <at> idiocy.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: ynyaaa <at> gmail.com, 39736 <at> debbugs.gnu.org
Subject: Re: bug#39736: 27.0.60; wrong display of scaled checkerd pattern image
Date: Mon, 24 Feb 2020 22:39:04 +0100 (CET)
On Mon, Feb 24, 2020 at 09:24:31PM +0200, Eli Zaretskii wrote:
> > Date: Mon, 24 Feb 2020 20:05:23 +0100 (CET)
> > From: Alan Third <alan <at> idiocy.org>
> > Cc: 39736 <at> debbugs.gnu.org
> > 
> > > Evaluating the form below, a solid gray square is displayed.
> > > 
> > > (let ((data "\
> > > P1
> > > 8 8
> > > 01010101
> > > 10101010
> > > 01010101
> > > 10101010
> > > 01010101
> > > 10101010
> > > 01010101
> > > 10101010
> > > "))
> > >   (insert-image (create-image data 'pbm t :scale 8)))
> > 
> > I believe this is the same as bug#38394. Could you perhaps try the
> > patch at
> > 
> >     https://debbugs.gnu.org/cgi/bugreport.cgi?bug=38394
> 
> The OP is on MS-Windows, and the patch is for XRender configurations,
> so it won't help, I think.

Ah, I missed that. Thanks for pointing it out.

The problem is likely something similar, though, where there’s some
sort of filtering going on, which is definitely wanted when scaling
the image down, but is less welcome when scaling up.
-- 
Alan Third




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#39736; Package emacs. (Wed, 26 Feb 2020 10:33:01 GMT) Full text and rfc822 format available.

Message #19 received at 39736 <at> debbugs.gnu.org (full text, mbox):

From: ynyaaa <at> gmail.com
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Alan Third <alan <at> idiocy.org>, 39736 <at> debbugs.gnu.org
Subject: Re: bug#39736: 27.0.60; wrong display of scaled checkerd pattern image
Date: Wed, 26 Feb 2020 19:32:28 +0900
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes:

>> > The form below temporally displays another image.
>> > The upper side is gray, the lower-left corner is black,
>> > and the lower-right corner is white.
>> > Once the text cursor gets on the image, the whole image is displayed as
>> > a gray square.
>> > 
>> > (let ((data "P1\n2 2\n01\n10")
>> >       (buf (generate-new-buffer "tmp")))
>> >   (switch-to-buffer buf)
>> >   (insert "\na")
>> >   (goto-char (point-min))
>> >   (redisplay)
>> >   (insert-image (create-image data 'pbm t :scale 16)))
>> 
>> I tried this and couldn’t replicate it, but I believe I had the patch
>> for 38394 applied, so it may be a fix. Alternatively it could be
>> related to the way the cursor is drawn on images.
>
> I didn't see any temporary display, either, FWIW.

I tested with various :scale values.

(let* ((data "P1\n2 2\n01\n10")
       (buf (generate-new-buffer "tmp"))
       (max (1+ (frame-char-height)))
       (scale 4))
  (switch-to-buffer buf)
  (while (<= scale max)
    (erase-buffer)
    (insert (format "\nscale: %g" scale))
    (goto-char (point-min))
    (redisplay)
    (insert-image (create-image data 'pbm t :scale scale))
    (insert ?_)
    (sit-for 0.5)
    (setq scale (1+ scale))))

It seems that if the image is partially displayed under '_',
lower area is painted black and white.
And the maximum value which causes temporary display seems to be
(frame-char-height).

For example, just started after emacs -Q, (frame-char-height) is 16
and :scale 17 simply displays solid gray square.
After (set-frame-font "Courier New-18"), (frame-char-height) is 27
and :scale 28 simply displays solid gray square.

The attached image shows how the square image id displayed.

[emacs-tmp2.png (image/png, attachment)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 12 Sep 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 219 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.