Canvas option "zoom threshold for hiding card content" to also apply to non-text elements, esp. images, to improve performance on media-heavy large canvases

problem

  • currently, the performance of Canvas drops significantly to a point of almost being unusable when there are too many images displayed in a Canvas (simultaneously)
  • use case is for visual art inspiration collection and art creation projects
  • for the most part the use cases do not require every image to be displayed at full resolution when viewing from a bird’s-eye view
    • to me they could just be simplified mental representation to think about and make mental connection of
  • therefore, i’m guessing a lot of system resources are wasted to load up and display every images regardless of zoom level?
    • and this is one of the reason for this performance issue?

observation

  • currently, all text elements (cards, .md notes) are turned into an abstract form when zoomed out, controlled by the Canvas option “zoom threshold for hiding card content”
  • but, non-text elements like images do not exhibit this behaviour

workaround

  • current workaround
    • separate large image-heavy canvas into smaller canvases, embed all smaller canvases into a “table of content” large canvas
    • this leverages the abstraction behaviour of embedded canvases in another canvas
  • downsides of current workaround
    • for art collection and inspirations brainstorming, this separation beaks the mental continuity
    • sometimes one has to break down large topics into smaller parts, but often they are not that clear-cut at all - they are still in a brainstorming process, sort of all mixed together - therefore having to do this so that the Canvas is usable, to a certain degree, defeats the freedom and the premise of an Infinite Canvas

suggestions to problem

  • idea 1
    • display an abstract solid colour block for each image, when zoomed out to the level set in Canvas option “zoom threshold for hiding card content”, to match the behaviour of text display
      • could be the main colour of the image or just pure grey
      • this could be visually consistent with the behaviour of texts’ abstraction
  • idea 2
    • display downscaled low resolution thumbnails for each image
      • i think this is way more technically demanding, but it makes more sense generally

final words

  • i’m not familiar with software engineering
  • please do lmk
    • whether this is problem can be viably resolved (:
    • or you have encountered similar problem and have an other workaround to improve performance without sacrificing continuity
  • from my experience of using Obsidian for almost 4 years, i feel like the dev team will just be thinking about this problem will put it on the schedule to improve it
    • i checked the roadmap found out that this is not a priority currently
    • when this is no longer a problem, Obsidian, along with Canvas, will be much more powerful and versatile, for more use cases and professions, like the visual arts