Alinhamento de caracteres chineses

Alinhamento de caracteres chineses

Quero fazer vários parágrafos alinhados ao meio, este é o código:

\usemodule[zhfonts] % zhfonts is a third-party module which created by Liyanrui, for selecting Chinese fonts,font size, etc. 
% https://github.com/liyanrui/zhfonts

\starttext
    \startalignment[middle]
        天地玄黄

        宇宙洪荒
    \stopalignment

    \midaligned{天地玄黄}

    \midaligned{宇宙洪荒}

    \startalignment[middle]
        \hbox{天地玄黄}

        \hbox{宇宙洪荒}
    \stopalignment
\stoptext

O código acima não produz o efeito desejado, pois não trata da distância entre os caracteres. (Compare-o com o \midalignedcomando.)

Ao colocar os caracteres em a hbox, os dois parágrafos ficam justificados à esquerda!

Como modificar \start ... \stopalignmento ambiente para obter o efeito produzido pelo \midalignedcomando?

insira a descrição da imagem aqui

Responder1

Ao ativar a quebra de linha para texto em chinês com o \setscriptcomando ConTeXt, adicione um pequeno espaço verificável entre todas as letras chinesas. Este espaço é necessário para preencher o espaço disponível em cada linha e compensar lacunas de pontuação e aspas.

Ao tentar centralizar o texto em um alignmentambiente, o material de preenchimento à esquerda e à direita do texto não é forte o suficiente para cancelar o texto extensível entre cada letra. Você pode usar a broadpalavra-chave para o alinhamento para obter um material de preenchimento mais resistente que evite que o espaço entre as letras seja usado para preencher a linha.

Outra forma de evitar o espaço entre as letras é colocá-las em um, \hboxmas neste caso é necessário adicionar \dontleavehmodena frente de cada caixa para garantir que fique centralizado na linha.

\definefontfamily [mincho] [rm] [MS Mincho]
\definefontfamily [mincho] [ss] [MS Gothic]
\definefontfamily [mincho] [mm] [Latin Modern Math]

\setupbodyfont [mincho]

\setscript [hanzi]

\starttext

\startalignment[middle]
  天地玄黄\par
  宇宙洪荒
\stopalignment

\blank

\startalignment[middle,broad]
  天地玄黄\par
  宇宙洪荒
\stopalignment

\blank

\startalignment[middle]
  \dontleavehmode\hbox{天地玄黄}\par
  \dontleavehmode\hbox{宇宙洪荒}
\stopalignment

\stoptext

insira a descrição da imagem aqui

informação relacionada