在w管理RichTextField()中,我需要支持RTL语言。 我看到Draftail它通过textDirectionality自我支持。
在wagtail RichTextField()中添加RTL支持的最佳方法是什么?
Here,Wagtail文档建议使用register_rich_text_features
挂钩来限制编辑器的功能。但是我找不到有关向其添加textDirectionality的任何信息。
答案 0 :(得分:2)
文本方向性将基于编辑器中的字符。因此,您无需执行任何操作。 Draftail是Draft.js,Draft.js文档说:
textDirectionality ?: DraftTextDirectionality
(可选)为此编辑器设置覆盖文本的方向性。这些值包括从右到左的文本(如希伯来语或阿拉伯语)的“ RTL”和从左到右的文本(如英语或西班牙语)的“ LTR”。无论输入文本的默认文本方向如何,此方向性都将应用于整个内容。
如果未设置此值,则文本方向性将基于编辑器中的字符(逐块)。
来源:https://draftjs.org/docs/api-reference-editor.html#textdirectionality
我检查了
目前,除功能外,所有选项均被忽略。参见Wagtail源代码wagtail / admin / rich_text / editors / draftail / __ init __。py:20
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
DataGridViewCheckBoxColumn CheckboxColumn = new DataGridViewCheckBoxColumn();
CheckboxColumn.TrueValue = true;
CheckboxColumn.FalseValue = false;
dataGridView1.Columns.Add(CheckboxColumn);
dataGridView1.Rows.Add(4);
}
private void chkItems_CheckedChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
DataGridViewCheckBoxCell chk = (DataGridViewCheckBoxCell)row.Cells[0];
if (chk.Value == chk.FalseValue || chk.Value == null)
{
chk.Value = chk.TrueValue;
}
else
{
chk.Value = chk.FalseValue;
}
enter code here
}
dataGridView1.EndEdit();
}
}
如果需要更多控制,则始终可以覆盖小部件模板。参见wagtail/admin/templates/wagtailadmin/widgets/draftail_rich_text_area.html