Я собираюсь преобразовать html в canvas и отобразить этот canvas в png файл.
Он хорошо работает при хорошем отображении, но не работает, для которого window.devicePixelRatio больше 2.
Я использую HTML2Canvas для отображения HTML как Canvas.
Для холста я установил imageSmoothingEnabled как false.
И установите для параметра стиля «рендеринг изображения» значение «четкие края».
html2canvas($('#finalImageToExport')[0], {
canvas: canvas,
scale: window.devicePixelRatio
})
В этом случае ширина и высота холста кратны window.devicePixelRatio.
Поэтому, когда я рендерим этот холст в png, я получаю png-файл с originalImageWidth * devicePixelRatio width и originalImageHeight * devicePixelRatio.
Мне нужна та же ширина и высота с началом координат, поэтому уменьшите их до естественной ширины и высоты.
Но я получаю размытое изображение.
Как мне решить эту проблему?