Skip to content

Commit

Permalink
Merge branch 'hidpi-canvas' of https://github.com/EHfive/ComfyUI
Browse files Browse the repository at this point in the history
  • Loading branch information
comfyanonymous committed Jul 11, 2023
2 parents 880c9b9 + 05e6eac commit cef30cc
Showing 1 changed file with 19 additions and 3 deletions.
22 changes: 19 additions & 3 deletions web/scripts/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,19 @@ import { api } from "./api.js";
import { defaultGraph } from "./defaultGraph.js";
import { getPngMetadata, importA1111, getLatentMetadata } from "./pnginfo.js";

/**
// DPI scaling fix, see https://github.com/comfyanonymous/ComfyUI/pull/845
(function() {
const originalRenderInfo = LGraphCanvas.prototype.renderInfo
LGraphCanvas.prototype.renderInfo = function(ctx, x, y) {
// Patch renderInfo() to use canvas.offsetHeight instead of canvas.height as bottom viewpoint bound
if (!y) {
y = this.canvas.offsetHeight - 80
}
return originalRenderInfo.call(this, ctx, x, y)
}
})()

/**
* @typedef {import("types/comfy").ComfyExtension} ComfyExtension
*/

Expand Down Expand Up @@ -1038,8 +1050,12 @@ export class ComfyApp {
this.graph.start();

function resizeCanvas() {
canvasEl.width = canvasEl.offsetWidth;
canvasEl.height = canvasEl.offsetHeight;
// Limit minimal scale to 1, see https://github.com/comfyanonymous/ComfyUI/pull/845
const scale = Math.max(window.devicePixelRatio, 1);
const { width, height } = canvasEl.getBoundingClientRect();
canvasEl.width = Math.round(width * scale);
canvasEl.height = Math.round(height * scale);
canvasEl.getContext("2d").scale(scale, scale);
canvas.draw(true, true);
}

Expand Down

0 comments on commit cef30cc

Please sign in to comment.