OfficeVba/docx/font/TSDocxFontRange.tsf

560 lines
16 KiB
Plaintext

Type TSDocxFontRange = Class(TSDocxFont)
Uses TSDocxEnumerations;
public
Function Init(rangeObj);
Function Apply();override;
Function ReWrite(pr);override;
private
Function CallFunction(pf, value);overload;
Function CallFunction(pf);overload;
private
range_obj_;
public
Function Reset();override;
Function WriteUnderlineColor(value);override;
Function ReadUnderlineColor();override;
Function WriteUnderline(value);override;
Function ReadUnderline();override;
Function ReadThreeD();override;
Function ReadTextShadow();override;
Function ReadTextColor();override;
Function WriteSuperscript(value);override;
Function ReadSuperscript();override;
Function WriteSubscript(value);override;
Function ReadSubscript();override;
Function WriteStylisticSet(value);override;
Function ReadStylisticSet();override;
Function WriteStrikeThrough(value);override;
Function ReadStrikeThrough();override;
Function WriteSpacing(value);override;
Function ReadSpacing();override;
Function WriteSmallCaps(value);override;
Function ReadSmallCaps();override;
Function WriteSizeBi(value);override;
Function ReadSizeBi();override;
Function WriteSize(value);override;
Function ReadSize();override;
Function WriteShadow(value);override;
Function ReadShadow();override;
Function ReadShading();override;
Function WriteScaling(value);override;
Function ReadScaling();override;
Function ReadReflection();override;
Function WritePosition(value);override;
Function ReadPosition();override;
Function WriteOutline(value);override;
Function ReadOutline();override;
Function WriteNumberSpacing(value);override;
Function ReadNumberSpacing();override;
Function WriteNumberForm(value);override;
Function ReadNumberForm();override;
Function WriteNameOther(value);override;
Function ReadNameOther();override;
Function WriteNameFarEast(value);override;
Function ReadNameFarEast();override;
Function WriteNameBi(value);override;
Function ReadNameBi();override;
Function WriteNameAscii(value);override;
Function ReadNameAscii();override;
Function WriteName(value);override;
Function ReadName();override;
Function WriteLine(value);override;
Function ReadLine();override;
Function WriteLigatures(value);override;
Function ReadLigatures();override;
Function WriteKerning(value);override;
Function ReadKerning();override;
Function WriteItalicBi(value);override;
Function ReadItalicBi();override;
Function WriteItalic(value);override;
Function ReadItalic();override;
Function WriteHidden(value);override;
Function ReadHidden();override;
Function ReadGlow();override;
Function ReadFill();override;
Function WriteEngrave(value);override;
Function ReadEngrave();override;
Function WriteEmphasisMark(value);override;
Function ReadEmphasisMark();override;
Function WriteEmboss(value);override;
Function ReadEmboss();override;
Function ReadDuplicate();override;
Function WriteDoubleStrikeThrough(value);override;
Function ReadDoubleStrikeThrough();override;
Function WriteDisableCharacterSpaceGrid(value);override;
Function ReadDisableCharacterSpaceGrid();override;
Function WriteDiacriticColor(value);override;
Function ReadDiacriticColor();override;
Function WriteContextualAlternates(value);override;
Function ReadContextualAlternates();override;
Function WriteColorIndexBi(value);override;
Function ReadColorIndexBi();override;
Function WriteColorIndex(value);override;
Function ReadColorIndex();override;
Function WriteColor(value);override;
Function ReadColor();override;
Function ReadBorders();override;
Function WriteBoldBi(value);override;
Function ReadBoldBi();override;
Function WriteBold(value);override;
Function ReadBold();override;
Function WriteAllCaps(value);override;
Function ReadAllCaps();override;
End;
// ============== 实现 ================= //
Function TSDocxFontRange.Init(rangeObj);
Begin
range_obj_ := rangeObj;
class(TSDocxFont).Init(nil);
End;
Function TSDocxFontRange.Apply();override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).Apply));
End;
Function TSDocxFontRange.ReWrite(pr);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).ReWrite), pr);
End;
Function TSDocxFontRange.CallFunction(pf, value);overload;
Begin
range_obj_.SplitRun();
for i:=0 to range_obj_.Size()-1 do
begin
pr_ := range_obj_[i].TParagraph.pPr.rPr;
##pf(value);
pr_ := range_obj_[i].TRun.rPr;
##pf(value);
end;
End;
Function TSDocxFontRange.CallFunction(pf);overload;
Begin
ret := nil;
for i:=0 to range_obj_.Size()-1 do
begin
pr_ := range_obj_[i].TRun.rPr;
if not ifObj(pr_.Root()) then continue;
cur := ##pf();
if ifnil(ret) then ret := cur;
if ret <> cur then return TSDocxEnumerations.wdUndefined();
end
return ret;
End;
// function
Function TSDocxFontRange.Reset();override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).Reset));
End;
// property
Function TSDocxFontRange.WriteUnderlineColor(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteUnderlineColor), value);
End;
Function TSDocxFontRange.ReadUnderlineColor();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadUnderlineColor));
End;
Function TSDocxFontRange.WriteUnderline(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteUnderline), value);
End;
Function TSDocxFontRange.ReadUnderline();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadUnderline));
End;
Function TSDocxFontRange.ReadThreeD();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadThreeD));
End;
Function TSDocxFontRange.ReadTextShadow();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadTextShadow));
End;
Function TSDocxFontRange.ReadTextColor();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadTextColor));
End;
Function TSDocxFontRange.WriteSuperscript(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSuperscript), value);
End;
Function TSDocxFontRange.ReadSuperscript();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSuperscript));
End;
Function TSDocxFontRange.WriteSubscript(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSubscript), value);
End;
Function TSDocxFontRange.ReadSubscript();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSubscript));
End;
Function TSDocxFontRange.WriteStylisticSet(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteStylisticSet), value);
End;
Function TSDocxFontRange.ReadStylisticSet();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadStylisticSet));
End;
Function TSDocxFontRange.WriteStrikeThrough(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteStrikeThrough), value);
End;
Function TSDocxFontRange.ReadStrikeThrough();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadStrikeThrough));
End;
Function TSDocxFontRange.WriteSpacing(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSpacing), value);
End;
Function TSDocxFontRange.ReadSpacing();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSpacing));
End;
Function TSDocxFontRange.WriteSmallCaps(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSmallCaps), value);
End;
Function TSDocxFontRange.ReadSmallCaps();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSmallCaps));
End;
Function TSDocxFontRange.WriteSizeBi(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSizeBi), value);
End;
Function TSDocxFontRange.ReadSizeBi();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSizeBi));
End;
Function TSDocxFontRange.WriteSize(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteSize), value);
End;
Function TSDocxFontRange.ReadSize();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadSize));
End;
Function TSDocxFontRange.WriteShadow(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteShadow), value);
End;
Function TSDocxFontRange.ReadShadow();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadShadow));
End;
Function TSDocxFontRange.ReadShading();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadShading));
End;
Function TSDocxFontRange.WriteScaling(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteScaling), value);
End;
Function TSDocxFontRange.ReadScaling();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadScaling));
End;
Function TSDocxFontRange.ReadReflection();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadReflection));
End;
Function TSDocxFontRange.WritePosition(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WritePosition), value);
End;
Function TSDocxFontRange.ReadPosition();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadPosition));
End;
Function TSDocxFontRange.WriteOutline(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteOutline), value);
End;
Function TSDocxFontRange.ReadOutline();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadOutline));
End;
Function TSDocxFontRange.WriteNumberSpacing(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNumberSpacing), value);
End;
Function TSDocxFontRange.ReadNumberSpacing();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNumberSpacing));
End;
Function TSDocxFontRange.WriteNumberForm(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNumberForm), value);
End;
Function TSDocxFontRange.ReadNumberForm();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNumberForm));
End;
Function TSDocxFontRange.WriteNameOther(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNameOther), value);
End;
Function TSDocxFontRange.ReadNameOther();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNameOther));
End;
Function TSDocxFontRange.WriteNameFarEast(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNameFarEast), value);
End;
Function TSDocxFontRange.ReadNameFarEast();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNameFarEast));
End;
Function TSDocxFontRange.WriteNameBi(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNameBi), value);
End;
Function TSDocxFontRange.ReadNameBi();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNameBi));
End;
Function TSDocxFontRange.WriteNameAscii(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteNameAscii), value);
End;
Function TSDocxFontRange.ReadNameAscii();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadNameAscii));
End;
Function TSDocxFontRange.WriteName(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteName), value);
End;
Function TSDocxFontRange.ReadName();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadName));
End;
Function TSDocxFontRange.WriteLine(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteLine), value);
End;
Function TSDocxFontRange.ReadLine();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadLine));
End;
Function TSDocxFontRange.WriteLigatures(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteLigatures), value);
End;
Function TSDocxFontRange.ReadLigatures();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadLigatures));
End;
Function TSDocxFontRange.WriteKerning(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteKerning), value);
End;
Function TSDocxFontRange.ReadKerning();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadKerning));
End;
Function TSDocxFontRange.WriteItalicBi(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteItalicBi), value);
End;
Function TSDocxFontRange.ReadItalicBi();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadItalicBi));
End;
Function TSDocxFontRange.WriteItalic(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteItalic), value);
End;
Function TSDocxFontRange.ReadItalic();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadItalic));
End;
Function TSDocxFontRange.WriteHidden(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteHidden), value);
End;
Function TSDocxFontRange.ReadHidden();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadHidden));
End;
Function TSDocxFontRange.ReadGlow();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadGlow));
End;
Function TSDocxFontRange.ReadFill();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadFill));
End;
Function TSDocxFontRange.WriteEngrave(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteEngrave), value);
End;
Function TSDocxFontRange.ReadEngrave();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadEngrave));
End;
Function TSDocxFontRange.WriteEmphasisMark(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteEmphasisMark), value);
End;
Function TSDocxFontRange.ReadEmphasisMark();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadEmphasisMark));
End;
Function TSDocxFontRange.WriteEmboss(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteEmboss), value);
End;
Function TSDocxFontRange.ReadEmboss();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadEmboss));
End;
Function TSDocxFontRange.ReadDuplicate();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadDuplicate));
End;
Function TSDocxFontRange.ReadDoubleStrikeThrough();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadDoubleStrikeThrough));
End;
Function TSDocxFontRange.WriteDisableCharacterSpaceGrid(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteDisableCharacterSpaceGrid), value);
End;
Function TSDocxFontRange.ReadDisableCharacterSpaceGrid();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadDisableCharacterSpaceGrid));
End;
Function TSDocxFontRange.WriteDiacriticColor(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteDiacriticColor), value);
End;
Function TSDocxFontRange.ReadDiacriticColor();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadDiacriticColor));
End;
Function TSDocxFontRange.WriteContextualAlternates(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteContextualAlternates), value);
End;
Function TSDocxFontRange.ReadContextualAlternates();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadContextualAlternates));
End;
Function TSDocxFontRange.WriteColorIndexBi(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteColorIndexBi), value);
End;
Function TSDocxFontRange.ReadColorIndexBi();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadColorIndexBi));
End;
Function TSDocxFontRange.WriteColorIndex(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteColorIndex), value);
End;
Function TSDocxFontRange.ReadColorIndex();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadColorIndex));
End;
Function TSDocxFontRange.WriteColor(value);override;
Begin
CallFunction(ThisFunction(class(TSDocxFont).WriteColor), value);
End;
Function TSDocxFontRange.ReadColor();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadColor));
End;
Function TSDocxFontRange.ReadBorders();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadBorders));
End;
Function TSDocxFontRange.WriteBoldBi(value);override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).WriteBoldBi), value);
End;
Function TSDocxFontRange.ReadBoldBi();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadBoldBi));
End;
Function TSDocxFontRange.WriteBold(value);override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).WriteBold), value);
End;
Function TSDocxFontRange.ReadBold();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadBold));
End;
Function TSDocxFontRange.WriteAllCaps(value);override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).WriteAllCaps), value);
End;
Function TSDocxFontRange.ReadAllCaps();override;
Begin
return CallFunction(ThisFunction(class(TSDocxFont).ReadAllCaps));
End;