Проверьте URL-адрес проблемы: - https://ambigramtools.com/
Амбиграмма отображается правильно на экране после создания, но когда я пытаюсь загрузить холст в виде изображения, загруженный файл полностью белый/пустой. Сгенерированный текст амбиграммы не включается в загруженный холст.
Что работает
- Текст амбиграммы виден на экране
- Элемент Canvas существует и имеет правильный размер
- Функция загрузки срабатывает правильно
- возвращает пустое белое изображение
Код: Выделить всё
canvas.toDataURL() - Текст, нарисованный на холсте, не отображается в загруженном изображении
- Веб-шрифты не полностью загружаются перед рисованием текста
- Содержимое холста рисуется с помощью преобразований CSS (повернуть/масштабировать)
- Рисование происходит на холсте, отличном от загружаемого
- Несоответствие ширины и высоты холста
Код: Выделить всё
const canvas = document.getElementById("ambigramCanvas");
const ctx = canvas.getContext("2d");
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.font = "40px AmbigramFont";
ctx.textAlign = "center";
ctx.fillStyle = "#000";
ctx.fillText("TEST", canvas.width / 2, canvas.height / 2);
function downloadCanvas() {
const link = document.createElement("a");
link.download = "ambigram.png";
link.href = canvas.toDataURL("image/png");
link.click();
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... -generator
Мобильная версия