рдХреНрдпрд╛ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХреНрдпрд╛ рдХреЛрдИ рдЕрдЪреНрдЫреЗ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ?
рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреБрдЫ рдкреАрдЖрд░ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ, рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ (рдЬреИрд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ) рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдФрд░ рдЬрдирд╡рд░реА рдХреЗ рдордзреНрдп рддрдХ рдЕрдВрддрд┐рдо 3.0 рд░рд┐рд▓реАрдЬ рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдирд╡рд░реА рдХреЗ рдордзреНрдп рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдирд╣реАрдВ рд╣реБрдИред
рдХреНрдпрд╛ рд╣рдо рдорджрдж рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдореЗрд░рд╛ рдореБрдЦреНрдп рдореБрджреНрджрд╛ HiDPI рд╕реНрдХреНрд░реАрди рдкрд░ рдЧрд▓рдд рд╕реЗрд╡/рд▓реЛрдб рд╣реИред
@abraxxa рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдореБрджреНрджреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рдореБрджреНрджреЛрдВ рдФрд░
рд╕рдорд╕реНрдпрд╛ #453 рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдкреБрд▓-рдЕрдиреБрд░реЛрдз рдЬрд┐рд╕реЗ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ #411 рдореЗрдВ рд╣реИред
@abraxxa рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ рдлрд┐рд░ рд╕реЗ рдПрд╕рд╡реАрдЬреА рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдкрдврд╝реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдРрд╕реЗ рд╕реНрдерд╛рдиреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдКрдВрдЪрд╛рдИ рдФрд░ рдЪреМрдбрд╝рд╛рдИ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
const minX = 0;
const minY = 0;
const maxX = this.canvas.width / ratio;
const maxY = this.canvas.height / ratio;
...
svg.setAttribute('width', this.canvas.width.toString());
svg.setAttribute('height', this.canvas.height.toString());
...
const header =
'<svg' +
...
` viewBox="${minX} ${minY} ${maxX} ${maxY}"` +
` width="${maxX}"` +
` height="${maxY}"` +
'>';
рдзрдиреНрдпрд╡рд╛рдж!
@abraxxa @gimyboya рдореИрдВрдиреЗ рдПрд╕рд╡реАрдЬреА рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреЛ #453 рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреБрдЫ рдкреАрдЖрд░ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ, рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ (рдЬреИрд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ) рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдФрд░ рдЬрдирд╡рд░реА рдХреЗ рдордзреНрдп рддрдХ рдЕрдВрддрд┐рдо 3.0 рд░рд┐рд▓реАрдЬ рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВред