Skip to content

Aspect ratio not computed when giving only one of r or c to display image #7380

Description

@dmlloyd

Describe the bug
According to the docs:

You can also ask the terminal emulator to display the image in a specified rectangle (num of columns / num of lines), using the control codes c,r. c is the number of columns and r the number of rows. The image will be scaled (enlarged/shrunk) as needed to fit the specified area. Note that if you specify a start cell offset via the X,Y keys, it is not added to the number of rows/columns. If only one of either r or c is specified, the other one is computed based on the source image aspect ratio, so that the image is displayed without distortion.

However, only providing one of r or c does not cause the image to be scaled by aspect ratio as the final sentence in the doc indicates.

To Reproduce
Steps to reproduce the behavior:

  1. Cat attached mars.txt - this is the original image emitted by icat
  2. Cat attached mars-just-r.txt - this is the same image with r=4 added
  3. Cat attached mars-just-c.txt - this is the same iamge with c=8 added
  4. See distorted image

Also attached is the original mars.png. The image is public domain.

It's possible that the problem only occurs with a=T; I haven't tested.

The problem can be reproduced without catting these files by capturing icat --transfer-mode=stream mars.png and editing the resultant text to add r=4 or c=8.

Environment details

kitty 0.34.1 (7f61f1f9f3) created by Kovid Goyal
Darwin cactaur 23.4.0 Darwin Kernel Version 23.4.0: Fri Mar 15 00:12:49 PDT 2024; root:xnu-10063.101.17~1/RELEASE_ARM64_T6020 arm64
ProductName:		macOS ProductVersion:		14.4.1 BuildVersion:		23E224
Frozen: True
Paths:
  kitty: /Applications/kitty.app/Contents/MacOS/kitty
  base dir: /Applications/kitty.app/Contents/Resources/kitty
  extensions dir: /Applications/kitty.app/Contents/Resources/Python/lib/kitty-extensions
  system shell: /bin/bash
Loaded config files:
  /Users/david/.config/kitty/kitty.conf

Config options different from defaults:
background_opacity      0.85
confirm_os_window_close 0
enable_audio_bell       False
font_family             DejaVu Sans Mono
font_size               13.0
Removed shortcuts:
	cmd+, →  edit_config_file
	cmd+enter →  new_window
	cmd+h →  hide_macos_app
	cmd+k →  clear_terminal to_cursor active
	cmd+m →  minimize_macos_window
	cmd+n →  new_os_window
	cmd+q →  quit
	cmd+t →  new_tab
	cmd+w →  close_tab
	ctrl+cmd+, →  load_config_file
	ctrl+cmd+f →  toggle_fullscreen
	opt+cmd+h →  hide_macos_other_apps
	opt+cmd+r →  clear_terminal reset active
	opt+cmd+s →  toggle_macos_secure_keyboard_entry
	shift+cmd+/ →  open_url https://sw.kovidgoyal.net/kitty/
	shift+cmd+[ →  previous_tab
	shift+cmd+] →  next_tab
	shift+cmd+d →  close_window
	shift+cmd+w →  close_os_window

Important environment variables seen by the kitty process:
	PATH                                /Applications/kitty.app/Contents/MacOS:/usr/bin:/bin:/usr/sbin:/sbin
	LANG                                en_US.UTF-8
	SHELL                               /bin/bash
	USER                                david

mars-just-c.txt
mars-just-r.txt
mars.txt
mars.png

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions