A LaTeX implementation. The problem is that the some glyphs are not in the Unicode position. Of course you want to preserve the position when not setting text in the slabikar font.
I added also support for LuaLaTeX. Note that XeLaTeX doesn't need \pdfmapline or similar.
\documentclass{article}
\usepackage{iftex}
\usepackage[czech]{babel}
\usepackage{newunicodechar}
\ifluatex
\pdfextension mapline{=slabikar slabikar <slabikar.pfb}
\fi
\newunicodechar{Č}{\ifslabikar ^^c8\else Č\fi}
\newunicodechar{č}{\ifslabikar ^^e8\else č\fi}
\newunicodechar{Ď}{\ifslabikar ^^cf\else Ď\fi}
\newunicodechar{ď}{\ifslabikar ^^ef\else ď\fi}
\newunicodechar{Ě}{\ifslabikar ^^cc\else ě\fi}
\newunicodechar{ě}{\ifslabikar ^^ec\else ě\fi}
\newunicodechar{Ň}{\ifslabikar ^^d2\else Ň\fi}
\newunicodechar{ň}{\ifslabikar ^^f2\else ň\fi}
\newunicodechar{Ř}{\ifslabikar ^^d8\else Ř\fi}
\newunicodechar{ř}{\ifslabikar ^^f8\else ř\fi}
\newunicodechar{Š}{\ifslabikar ^^a9\else Š\fi}
\newunicodechar{š}{\ifslabikar ^^b9\else š\fi}
\newunicodechar{Ť}{\ifslabikar ^^ab\else Ť\fi}
\newunicodechar{ť}{\ifslabikar ^^bb\else ť\fi}
\newunicodechar{Ů}{\ifslabikar ^^d9\else Ů\fi}
\newunicodechar{ů}{\ifslabikar ^^f9\else ů\fi}
\newunicodechar{Ž}{\ifslabikar ^^ae\else Ž\fi}
\newunicodechar{ž}{\ifslabikar ^^be\else ž\fi}
\DeclareFontFamily{T1}{slabikar}{}
\DeclareFontShape{T1}{slabikar}{m}{n}{<-> s*[2] slabikar}{}
\newif\ifslabikar
\newenvironment{slabikar}
{%
\par\addvspace{\topsep}%
\setlength{\parindent}{0pt}%
\linespread{2}%
\slabikartrue\usefont{T1}{slabikar}{m}{n}%
}
{\par\addvspace{\topsep}}
\begin{document}
\begin{slabikar}
Jakmile ulehneš, zavřeš oči a uvidíš své ruce,
Odemyky-zamyky,\
rozvažte se, jazyky!\
Povězte mi řeči lidí,\
co kdo slyší, co kdo vidí.\
A z~těch slabik, slov a vět\
vykouzlíme celý svět.
ÁáČčĎďÉéĚěÍíŇňÓóŘřŠšŤťÚúŮůÝýŽž
\end{slabikar}
\noindent
Jakmile ulehneš, zavřeš oči a uvidíš své ruce,
\noindent
Odemyky-zamyky,\
rozvažte se, jazyky!\
Povězte mi řeči lidí,\
co kdo slyší, co kdo vidí.\
A z~těch slabik, slov a vět\
vykouzlíme celý svět.
\noindent
ÁáČčĎďÉéĚěÍíŇňÓóŘřŠšŤťÚúŮůÝýŽž
\end{document}

An approach that doesn't make the characters active except inside the slabikar environment.
\documentclass{article}
\usepackage{iftex}
\usepackage[czech]{babel}
\ifluatex
\pdfextension mapline{=slabikar slabikar <slabikar.pfb}
\fi
\ExplSyntaxOn
\cs_new:Nn \slabikar_Č: { ^^c8 }
\cs_new:Nn \slabikar_č: { ^^e8 }
\cs_new:Nn \slabikar_Ď: { ^^cf }
\cs_new:Nn \slabikar_ď: { ^^ef }
\cs_new:Nn \slabikar_Ě: { ^^cc }
\cs_new:Nn \slabikar_ě: { ^^ec }
\cs_new:Nn \slabikar_Ň: { ^^d2 }
\cs_new:Nn \slabikar_ň: { ^^f2 }
\cs_new:Nn \slabikar_Ř: { ^^d8 }
\cs_new:Nn \slabikar_ř: { ^^f8 }
\cs_new:Nn \slabikar_Š: { ^^a9 }
\cs_new:Nn \slabikar_š: { ^^b9 }
\cs_new:Nn \slabikar_Ť: { ^^ab }
\cs_new:Nn \slabikar_ť: { ^^bb }
\cs_new:Nn \slabikar_Ů: { ^^d9 }
\cs_new:Nn \slabikar_ů: { ^^f9 }
\cs_new:Nn \slabikar_Ž: { ^^ae }
\cs_new:Nn \slabikar_ž: { ^^be }
\tl_const:Nn \c_slabikar_chars_tl { Č č Ď ď Ě ě Ň ň Ř ř Š š Ť ť Ů ů Ž ž }
\tl_map_inline:Nn \c_slabikar_chars_tl
{
\char_set_active_eq:Nc #1 { slabikar_#1: }
}
\NewDocumentCommand{\convertslabikar}{}
{
\tl_map_inline:Nn \c_slabikar_chars_tl { \char_set_catcode_active:N ##1 }
}
\ExplSyntaxOff
\DeclareFontFamily{T1}{slabikar}{}
\DeclareFontShape{T1}{slabikar}{m}{n}{<-> s*[2] slabikar}{}
\newenvironment{slabikar}
{%
\par\addvspace{\topsep}%
\setlength{\parindent}{0pt}%
\linespread{2}%
\convertslabikar\usefont{T1}{slabikar}{m}{n}%
}
{\par\addvspace{\topsep}}
\begin{document}
\begin{slabikar}
Jakmile ulehneš, zavřeš oči a uvidíš své ruce,
Odemyky-zamyky,\
rozvažte se, jazyky!\
Povězte mi řeči lidí,\
co kdo slyší, co kdo vidí.\
A z~těch slabik, slov a vět\
vykouzlíme celý svět.
ÁáČčĎďÉéĚěÍíŇňÓóŘřŠšŤťÚúŮůÝýŽž
\end{slabikar}
\noindent
Jakmile ulehneš, zavřeš oči a uvidíš své ruce,
\noindent
Odemyky-zamyky,\
rozvažte se, jazyky!\
Povězte mi řeči lidí,\
co kdo slyší, co kdo vidí.\
A z~těch slabik, slov a vět\
vykouzlíme celý svět.
\noindent
ÁáČčĎďÉéĚěÍíŇňÓóŘřŠšŤťÚúŮůÝýŽž
\end{document}
xelatexdue to the rest of my source file ! Could you modify my MnWE to MWE to work withxelatex?? It is impossible for me to modify everything else topdflatex. – user2925716 Jan 27 '21 at 16:41šwritten in the source file is interpreted as Unicode U+0161 by xetex but you need to transform it to the IL2 code ^^b9. This could be done using active character settings locally when the slabikar font is selected. – wipet Jan 27 '21 at 17:03