This commit is contained in:
csh 2023-12-27 09:02:23 +08:00
parent ffbde2f964
commit c5bdd38506
1 changed files with 17 additions and 6 deletions

View File

@ -33,10 +33,16 @@ Begin
para.Format.Style := "Title"; para.Format.Style := "Title";
para.Format.Apply(); // 写属性后要apply para.Format.Apply(); // 写属性后要apply
image := TOfficeTemplate('tinysoft.gif',true);
shape := ActiveDocument.InlineShapes.AddPicture(image);
shape.Width := 410;
shape.Height := 75;
shape.Apply();
ActiveDocument.Paragraphs.Add; ActiveDocument.Paragraphs.Add;
ActiveDocument.Paragraphs(2).Range.InsertParagraphAfter(); ActiveDocument.Paragraphs(3).Range.InsertParagraphAfter();
ActiveDocument.Paragraphs(2).Range.InsertParagraphBefore(); ActiveDocument.Paragraphs(4).Range.InsertParagraphBefore();
range := ActiveDocument.Paragraphs(3).Range; range := ActiveDocument.Paragraphs(4).Range;
range.Collapse(TSDocxEnumerations.wdCollapseEnd()); range.Collapse(TSDocxEnumerations.wdCollapseEnd());
table := ActiveDocument.Tables.Add(Range:=range, NumRows:=3, NumColumns:=2, DefaultTableBehavior:=TSDocxEnumerations.wdWord9TableBehavior); table := ActiveDocument.Tables.Add(Range:=range, NumRows:=3, NumColumns:=2, DefaultTableBehavior:=TSDocxEnumerations.wdWord9TableBehavior);
println("ActiveDocument.Paragraphs.Count = {}", ActiveDocument.Paragraphs.Count); println("ActiveDocument.Paragraphs.Count = {}", ActiveDocument.Paragraphs.Count);
@ -67,7 +73,7 @@ End;
Function AddTitle(ActiveDocument, text, level); Function AddTitle(ActiveDocument, text, level);
Begin Begin
ActiveDocument.Paragraphs.Add; ActiveDocument.Paragraphs.Add;
para := ActiveDocument.Paragraphs.Last; para := ActiveDocument.Paragraphs.Last;
info := array( info := array(
(22, TSDocxEnumerations.wdViolet(), TSDocxEnumerations.wdOutlineLevel1(), 0), (22, TSDocxEnumerations.wdViolet(), TSDocxEnumerations.wdOutlineLevel1(), 0),
@ -144,6 +150,8 @@ Begin
path + "TSDocxDocuments.tsf", path + "TSDocxDocuments.tsf",
path + "font//TSDocxFont.tsf", path + "font//TSDocxFont.tsf",
path + "listformat//TSDocxListFormat.tsf", path + "listformat//TSDocxListFormat.tsf",
path + "TSDocxInlineShape.tsf",
path + "TSDocxInlineShapes.tsf",
path + "TSDocxTable.tsf", path + "TSDocxTable.tsf",
path + "TSDocxTables.tsf", path + "TSDocxTables.tsf",
path + "TSDocxTablesOfContents.tsf", path + "TSDocxTablesOfContents.tsf",
@ -363,7 +371,7 @@ Begin
FAQContent(ActiveDocument, "paragraph.Range.Font.Name := 'Consolas';"); FAQContent(ActiveDocument, "paragraph.Range.Font.Name := 'Consolas';");
FAQContent(ActiveDocument, "paragraph.Range.Font.Size := 12;"); FAQContent(ActiveDocument, "paragraph.Range.Font.Size := 12;");
FAQContent(ActiveDocument, "paragraph.Range.Font.Apply();"); FAQContent(ActiveDocument, "paragraph.Range.Font.Apply();");
FAQContent(ActiveDocument, "注意一在应用Font, Shading, ParagraphFormat, border, ListFormat时均需要执行Apply方法使得设置生效"); FAQContent(ActiveDocument, "注意一在应用Font, Shading, ParagraphFormat, border, ListFormat以及InlineShape时均需要执行Apply方法使得设置生效");
FAQContent(ActiveDocument, "注意二使用这些类时最多支持到两级赋值比如说paragraph.Range.Font中Range是第一级paragraph是第二级。若使用paragraphs.Item(1).Range.Font则不会生效。这里出现了第三级Paragraphs"); FAQContent(ActiveDocument, "注意二使用这些类时最多支持到两级赋值比如说paragraph.Range.Font中Range是第一级paragraph是第二级。若使用paragraphs.Item(1).Range.Font则不会生效。这里出现了第三级Paragraphs");
AddTitle(ActiveDocument, "如何使用VBA中的Enumerations", 2); AddTitle(ActiveDocument, "如何使用VBA中的Enumerations", 2);
@ -374,6 +382,9 @@ Begin
AddTitle(ActiveDocument, "为什么目录无法计算页码", 2); AddTitle(ActiveDocument, "为什么目录无法计算页码", 2);
FAQContent(ActiveDocument, "由于目录页码计算比较复杂,目前仅提供生成目录项功能,不支持页码的计算。"); FAQContent(ActiveDocument, "由于目录页码计算比较复杂,目前仅提供生成目录项功能,不支持页码的计算。");
FAQContent(ActiveDocument, "另外使用TablesOfContents.Add生成目录时仅支持Range, UpperHeadingLevel, LowerHeadingLevel三个参数的设置其余参数设置均无效。"); FAQContent(ActiveDocument, "另外使用TablesOfContents.Add生成目录时仅支持Range, UpperHeadingLevel, LowerHeadingLevel三个参数的设置其余参数设置均无效。");
AddTitle(ActiveDocument, "为什么添加图片的FileName参数不生效", 2);
FAQContent(ActiveDocument, "因为TSVBA中FileName是一个二进制格式需要传入的是图片的二进制内容而不是路径");
End; End;
Function FAQContent(ActiveDocument, text); Function FAQContent(ActiveDocument, text);
@ -393,7 +404,7 @@ End;
Function AddTablesOfContents(ActiveDocument); Function AddTablesOfContents(ActiveDocument);
Begin Begin
range := ActiveDocument.Paragraphs(15).Range; range := ActiveDocument.Paragraphs(16).Range;
// println("range.text = {}", range.Text); // println("range.text = {}", range.Text);
range.Collapse(TSDocxEnumerations.wdCollapseStart()); range.Collapse(TSDocxEnumerations.wdCollapseStart());
ActiveDocument.TablesOfContents.Add(Range := range, UseHeadingStyles := true, UpperHeadingLevel := 1, LowerHeadingLevel := 9); ActiveDocument.TablesOfContents.Add(Range := range, UseHeadingStyles := true, UpperHeadingLevel := 1, LowerHeadingLevel := 9);