Возможно ли в JavaScript создать элемент div, поместить символ \ u #### в этот элемент div, а затем скопировать его в canvas как putImage? - PullRequest
0 голосов
/ 30 октября 2019

Я работаю с fTelnet.js - я перешел к коду this_Font.GetChar () и обнаружил, что все символы взяты из шрифтового спрайта, getItemData (....) меняет цвет там, где пиксель равен 0x80. и окрашивает его передним планом [r] [g] [b] [alpha], или окрашивает его фоном [r] [g] [b] [alpha].

Так как Unicode выходит за пределы того, что находится в его 40+шрифты - мне нужно обмануть и .createElement ("div"), .innerHTML = "\ u #####";затем каким-то образом принять это как ImageData, чтобы я мог исправить вышеприведенную логику и внедрить поддержку юникода в процедуру холста fTelnet.

Кто-нибудь знает, какие команды мне нужны для этого? Например, я потратил часы, пытаясь решить эту проблему с помощью Google, HTML5 Context Docs, но безуспешно ... в основном, не зная, что я ищу; -)

или как я перечитал это ... возможноскрытый холст, сделайте ctx.strokeText ("\ u #####", 25, 50);а затем скопировать из этого CTX в качестве IMAGEDATA на отображаемый? (какую команду я тогда посмотрю?) ... Я обычно не балуюсь в мире 2D / 3D графики (очевидно) ...

С уважением,

1 Ответ

1 голос
/ 30 октября 2019

Как правило, рендеринг HTML на холст невозможен - и кажется, что это происходит из-за замысла (это затруднит навигацию, связанную с нанесением вреда).

Но поставить один холст поверх другого очень просто -вы можете просто использовать стандартный вызов #drawImage, как и любое другое изображение, которое вы рисуете на холсте.

На самом деле, если вы посмотрите документацию API и нажмете определения, которые выувидим, что вы можете использовать drawImage для «печати» любого экземпляра svg или html-изображения, растрового изображения, закадрового холста, видео или аудио тегов.

...