Длинные тексты на персидском (фарси) языке некорректно отображаются в столбцах в highcharts gantt

#highcharts

#highcharts

Вопрос:

в этом примере ячейки столбцов содержат несколько длинных текстов на персидском (фарси) языке, поэтому вы можете видеть, что расположение текстов на диаграмме Ганта неверно, а также при ее экспорте. но также, если я заменю эти тексты английскими, их расположение будет правильным!

Я написал образец текста вручную просто для примера.

 columns: [
          {
            title: {
              text: 'First Column'
            },
            useHTML: true,
            labels: {
              format: 'نتاکم کنمت کمنت کمنتشس اکمسنتشیکنمیتیک تک تکنتسی ن خهت کمنت من کمنت کمنت ه کمنت ',
              align: 'center',
              style: {
              direction: 'rtl',
                overflowWrap: 'break-word',
                wordWrap: 'break-word',
                width: '350px'

              }
            }
          
          }
         ]
  

Ответ №1:

Установка align значения left должна устранить проблему.

Демонстрация: https://jsfiddle.net/BlackLabel/bhm3yqvo

   columns: [{
    title: {
      text: 'First Column'
    },
    labels: {
      format: 'نتاکم کنمت کمنت کمنتشس اکمسنتشیکنمیتیک تک تکنتسی ن خهت کمنت من کمنت کمنت ه کمنت ',
      align: 'left'
    } 
  }]
  

Редактировать:

Согласно приведенным ниже комментариям — другое решение, которое пришло мне в голову, — использовать formatter обратный вызов для отображения этих меток как автономных HTML-элементов. Мне нужно указать на одну вещь — скрипт, который используется в этой демонстрации, является скриптом из ветки master, из-за этой ошибки — https://github.com/highcharts/highcharts/issues/10281 — это будет нормально работать с обычным скриптом после выпуска следующей версии.

Демонстрация: https://jsfiddle.net/BlackLabel/q8wx2egL

Комментарии:

1. Спасибо за ваш ответ, но на персидском языке мы пишем справа налево. есть ли другой способ исправить это с помощью RTL?

2. @MeysamZarei «но на персидском мы пишем справа налево» — я не уверен, имеет ли это значение, в данном случае, не могли бы вы воспроизвести какой-нибудь случай, когда это не будет работать?

3. Позвольте мне пояснить это, в моем примере в вопросе вы можете увидеть проблему, когда я устанавливаю align значение right , потому что в персидской литературе мы начинаем писать справа от статей, поэтому нет смысла писать длинный текст, который начинается слева от ячейки столбца.

4. Для уверенности — вы хотели бы, чтобы этот текст был в центре, но вторая строка для длинного текста должна начинаться с правильного сайта?

5. Да, обе строки должны начинаться справа / по центру ячейки, у меня также есть эта проблема с center выравниванием, вы можете видеть это в моем примере в моем вопросе.