Открыто
04.05.2021, 11:20
Требуется реализовать программу, раскрашивающую текстовый файл в различные цвета по заданным правилам и сохраняющую результат в формате HTML.
foo : FF0000
bar : 00FF00
...
baz : 0000FF
Реализовать программу для HTML-подсветки файла. На вход подаётся ссылка на поток std::istream
и уже загруженный в память. На выходе должен генерироваться HTML-файл с подсвеченным текстом.
О формате HTML можно почитать в википедии или попробовать его в деле, используя онлайн HTML-редактор.
Цвет в HTML задается в формате "<R><G><B>"
в 16-ричной системе исчисления: например, #FF0000
означает R=FF
(то есть 255), G=00
, B=00
. В таком случае цвет красный. Пример кодирования:
<span style="color: #FF0000;">text</span>
Обратите внимание, что некоторые символы в HTML нужно кодировать специальным образом (они называются entities). Символ <
записывается как <
, >
— как >
, а символ &
– как &
.
HTML-документ, содержащий весь текст из входного файла, где все слова, которые есть в словаре, подсвечены в соответствии с цветами, указанными там же.
Для словаря
foo : ff0000
bar : 00ff00
и текста
foobar bar & foo.
должен получиться выход
foobar <span style="color: #00ff00;">bar</span> & <span style="color: #ff0000;">foo</span>.