c# – 带有OpenXML SDK 2.0的tableCell文本中的对齐
发布时间:2020-12-15 18:09:38 所属栏目:百科 来源:网络整理
导读:我想在表格单元格中使用Open XML应用文本对齐方式. 我不明白为什么它没有应用. Table table = new Table();TableRow tableHeader = new TableRow();table.AppendChildTableRow(tableHeader);TableCell tableCell = new TableCell();tableHeader.AppendChildT
我想在表格单元格中使用Open
XML应用文本对齐方式.
我不明白为什么它没有应用. Table table = new Table(); TableRow tableHeader = new TableRow(); table.AppendChild<TableRow>(tableHeader); TableCell tableCell = new TableCell(); tableHeader.AppendChild<TableCell>(tableCell); Paragraph paragraph = new Paragraph(new Run(new Text("test"))); ParagraphProperties paragraphProperties = new ParagraphProperties(); JustificationValues? justification = GetJustificationFromString("centre"); if (justification != null) { paragraphProperties.AppendChild<Justification>(new Justification() { Val = justification }); } paragraph.AppendChild<ParagraphProperties>(paragraphProperties); tableCell.AppendChild<Paragraph>(paragraph); public static JustificationValues? GetJustificationFromString(string alignment) { switch(alignment) { case "centre" : return JustificationValues.Center; case "droite" : return JustificationValues.Right; case "gauche" : return JustificationValues.Left; default: return null; } } 谢谢你的帮助! 解决方法
如果您将paragraphProperties应用于父单元而不是段落,它是否有效?
Table table = new Table(); TableRow tableHeader = new TableRow(); table.AppendChild<TableRow>(tableHeader); TableCell tableCell = new TableCell(); tableHeader.AppendChild<TableCell>(tableCell); ParagraphProperties paragraphProperties = new ParagraphProperties(); Paragraph paragraph = new Paragraph(new Run(new Text("test"))); JustificationValues? justification = GetJustificationFromString("centre"); // Use System.Nullable<T>.HasValue instead of the null check. if (justification.HasValue) { // Using System.Nullable<T>.Value to obtain the value and resolve a warning // that occurs when using 'justification' by itself. paragraphProperties.AppendChild<Justification>(new Justification() { Val = justification.Value }); } // append the paragraphProperties to the tableCell rather than the paragraph element tableCell.AppendChild<ParagraphProperties>(paragraphProperties); tableCell.AppendChild<Paragraph>(paragraph); Console.WriteLine(table.OuterXml); table.OuterXml之前: <w:tbl xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"> <w:tr> <w:tc> <w:p> <w:r> <w:t>test</w:t> </w:r> <w:pPr> <w:jc w:val="center" /> </w:pPr> </w:p> </w:tc> </w:tr> </w:tbl> table.OuterXml之后: <w:tbl xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"> <w:tr> <w:tc> <w:pPr> <w:jc w:val="center" /> </w:pPr> <w:p> <w:r> <w:t>test</w:t> </w:r> </w:p> </w:tc> </w:tr> </w:tbl> 我是OpenXml的新手.结果是保存到word文档中还是用单词查看? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |