新增父类TSVbaBase调整前
This commit is contained in:
parent
fec9adacd3
commit
cdf4b39350
|
|
@ -0,0 +1,370 @@
|
|||
Type TSDocxApplication = Class(TSVbaBase)
|
||||
|
||||
public
|
||||
Function Create();
|
||||
Function Init();
|
||||
|
||||
public
|
||||
Function Activate();
|
||||
Function AddAddress(TagID, Value);
|
||||
Function AutomaticChange();
|
||||
Function BuildKeyCode(Arg1, Arg2, Arg3, Arg4);
|
||||
Function CentimetersToPoints(Centimeters);
|
||||
Function ChangeFileOpenDirectory(Path);
|
||||
Function CheckGrammar(String);
|
||||
Function CheckSpelling(Word, CustomDictionary, IgnoreUppercase, MainDictionary, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
|
||||
Function CleanString(String);
|
||||
Function CompareDocuments(OriginalDocument, RevisedDocument, Destination, Granularity, CompareFormatting, CompareCaseChanges, CompareWhitespace, CompareTables, CompareHeaders, CompareFootnotes, CompareTextboxes, CompareFields, CompareComments, CompareMoves, RevisedAuthor, IgnoreAllComparisonWarnings);
|
||||
Function DDEExecute(Channel, Command);
|
||||
Function DDEInitiate(App, Topic);
|
||||
Function DDEPoke(Channel, Item, Data);
|
||||
Function DDERequest(Channel, Item);
|
||||
Function DDETerminate(Channel);
|
||||
Function DDETerminateAll();
|
||||
Function DefaultWebOptions();
|
||||
Function GetAddress(Name, AddressProperties, UseAutoText, DisplaySelectDialog, SelectDialog, CheckNamesDialog, RecentAddressesChoice, UpdateRecentAddresses);
|
||||
Function GetDefaultTheme(DocumentType);
|
||||
Function GetSpellingSuggestions(Word, CustomDictionary, IgnoreUppercase, MainDictionary, SuggestionMode, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
|
||||
Function GoBack();
|
||||
Function GoForward();
|
||||
Function Help(HelpType);
|
||||
Function InchesToPoints(Inches);
|
||||
Function Keyboard(LangId)
|
||||
Function KeyboardBidi();
|
||||
Function KeyboardLatin();
|
||||
Function KeyString(KeyCode, KeyCode2);
|
||||
Function LinesToPoints(Lines);
|
||||
Function ListCommands(ListAllCommands);
|
||||
Function LoadMasterList(FileName);
|
||||
Function LookupNameProperties(Name);
|
||||
Function MergeDocuments(OriginalDocument, RevisedDocument, Destination, Granularity, CompareFormatting, CompareCaseChanges, CompareWhitespace, CompareTables, CompareHeaders, CompareFootnotes, CompareTextboxes, CompareFields, CompareComments, OriginalAuthor, RevisedAuthor, FormatFrom);
|
||||
Function MillimetersToPoints(Millimeters);
|
||||
Function Move(Left, Top);
|
||||
Function NewWindow();
|
||||
Function OnTime(When, Name, Tolerance);
|
||||
Function OrganizerCopy(Source, Destination, Name, Object);
|
||||
Function OrganizerDelete(Source, Name, Object);
|
||||
Function OrganizerRename(Source, Name, NewName, Object);
|
||||
Function PicasToPoints(Picas);
|
||||
Function PixelsToPoints(Pixels, fVertical);
|
||||
Function PointsToCentimeters(Points);
|
||||
Function PointsToInches(Points);
|
||||
Function PointsToLines(Points);
|
||||
Function PointsToMillimeters(Points);
|
||||
Function PointsToPicas(Points);
|
||||
Function PointsToPixels(Points, fVertical);
|
||||
Function PrintOut(Background, Append, Range, OutputFileName, From_, To_, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName, ActivePrinterMacGX, ManualDuplexPrint, PrintZoomColumn, PrintZoomRow, PrintZoomPaperWidth, PrintZoomPaperHeight);
|
||||
Function ProductCode();
|
||||
Function PutFocusInMailHeader();
|
||||
Function Quit(SaveChanges, OriginalFormat, RouteDocument);
|
||||
Function Repeat(Times);
|
||||
Function ResetIgnoreAll();
|
||||
Function Resize (Width, Height);
|
||||
Function Run(MacroName, varg1, varg2, varg3, varg4, varg5, varg6, varg7, varg8, varg9, varg10, varg11, varg12, varg13, varg14, varg15, varg16, varg17, varg18, varg19, varg20, varg21, varg22, varg23, varg24, varg25, varg26, varg27, varg28, varg29, varg30);
|
||||
Function ScreenRefresh();
|
||||
Function SetDefaultTheme(Name, DocumentType);
|
||||
Function ShowClipboard();
|
||||
Function SubstituteFont(UnavailableFont, SubstituteFont);
|
||||
Function ToggleKeyboard();
|
||||
|
||||
property ActiveDocument read ReadActiveDocument;
|
||||
property ActiveEncryptionSession read ReadActiveEncryptionSession;
|
||||
property ActivePrinter read ReadActivePrinter write WriteActivePrinter;
|
||||
property ActiveProtectedViewWindow read ReadActiveProtectedViewWindow;
|
||||
property ActiveWindow read ReadActiveWindow;
|
||||
property AddIns read ReadAddIns;
|
||||
property ArbitraryXMLSupportAvailable read ReadArbitraryXMLSupportAvailable;
|
||||
property Assistance read ReadAssistance;
|
||||
property AutoCaptions read ReadAutoCaptions;
|
||||
property AutoCorrect read ReadAutoCorrect;
|
||||
property AutoCorrectEmail read ReadAutoCorrectEmail;
|
||||
property AutomationSecurity read ReadAutomationSecurity write WriteAutomationSecurity;
|
||||
property BackgroundPrintingStatus read ReadBackgroundPrintingStatus;
|
||||
property BackgroundSavingStatus read ReadBackgroundSavingStatus;
|
||||
property Bibliography read ReadBibliography;
|
||||
property BrowseExtraFileTypes read ReadBrowseExtraFileTypes write WriteBrowseExtraFileTypes;
|
||||
property Browser read ReadBrowser;
|
||||
property Build read ReadBuild;
|
||||
property CapsLock read ReadCapsLock;
|
||||
property Caption read ReadCaption write WriteCaption;
|
||||
property CaptionLabels read ReadCaptionLabels;
|
||||
property ChartDataPointTrack read ReadChartDataPointTrack write WriteChartDataPointTrack;
|
||||
property CheckLanguage read ReadCheckLanguage write WriteCheckLanguage;
|
||||
property COMAddIns read ReadCOMAddIns;
|
||||
property CommandBars read ReadCommandBars;
|
||||
property CustomDictionaries read ReadCustomDictionaries;
|
||||
property CustomizationContext read ReadCustomizationContext write WriteCustomizationContext;
|
||||
property DefaultLegalBlackline read ReadDefaultLegalBlackline write WriteDefaultLegalBlackline;
|
||||
property DefaultSaveFormat read ReadDefaultSaveFormat write WriteDefaultSaveFormat;
|
||||
property DefaultTableSeparator read ReadDefaultTableSeparator write WriteDefaultTableSeparator;
|
||||
property Dialogs read ReadDialogs;
|
||||
property DisplayAlerts read ReadDisplayAlerts write WriteDisplayAlerts;
|
||||
property DisplayAutoCompleteTips read ReadDisplayAutoCompleteTips write WriteDisplayAutoCompleteTips;
|
||||
property DisplayDocumentInformationPanel read ReadDisplayDocumentInformationPanel write WriteDisplayDocumentInformationPanel;
|
||||
property DisplayRecentFiles read ReadDisplayRecentFiles write WriteDisplayRecentFiles;
|
||||
property DisplayScreenTips read ReadDisplayScreenTips write WriteDisplayScreenTips;
|
||||
property DisplayScrollBars read ReadDisplayScrollBars write WriteDisplayScrollBars;
|
||||
property Documents read ReadDocuments;
|
||||
property DontResetInsertionPointProperties read ReadDontResetInsertionPointProperties write WriteDontResetInsertionPointProperties;
|
||||
property EmailOptions read ReadEmailOptions;
|
||||
property EmailTemplate read ReadEmailTemplate write WriteEmailTemplate;
|
||||
property EnableCancelKey read ReadEnableCancelKey write WriteEnableCancelKey;
|
||||
property FeatureInstall read ReadFeatureInstall write WriteFeatureInstall;
|
||||
property FileConverters read ReadFileConverters;
|
||||
property FileDialog read ReadFileDialog;
|
||||
property FileValidation read ReadFileValidation write WriteFileValidation;
|
||||
property FindKey read ReadFindKey;
|
||||
property FocusInMailHeader read ReadFocusInMailHeader;
|
||||
property FontNames read ReadFontNames;
|
||||
property HangulHanjaDictionaries read ReadHangulHanjaDictionaries;
|
||||
property Height read ReadHeight write WriteHeight;
|
||||
property International read ReadInternational;
|
||||
property IsObjectValid read ReadIsObjectValid;
|
||||
property IsSandboxed read ReadIsSandboxed;
|
||||
property KeyBindings read ReadKeyBindings;
|
||||
property KeysBoundTo read ReadKeysBoundTo;
|
||||
property LandscapeFontNames read ReadLandscapeFontNames;
|
||||
property Language read ReadLanguage;
|
||||
property Languages read ReadLanguages;
|
||||
property LanguageSettings read ReadLanguageSettings;
|
||||
property Left read ReadLeft write WriteLeft;
|
||||
property ListGalleries read ReadListGalleries;
|
||||
property MacroContainer read ReadMacroContainer;
|
||||
property MailingLabel read ReadMailingLabel;
|
||||
property MailMessage read ReadMailMessage;
|
||||
property MailSystem read ReadMailSystem;
|
||||
property MAPIAvailable read ReadMAPIAvailable;
|
||||
property MathCoprocessorAvailable read ReadMathCoprocessorAvailable;
|
||||
property MouseAvailable read ReadMouseAvailable;
|
||||
property Name read ReadName;
|
||||
property NewDocument read ReadNewDocument;
|
||||
property NormalTemplate read ReadNormalTemplate;
|
||||
property NumLock read ReadNumLock;
|
||||
property OMathAutoCorrect read ReadOMathAutoCorrect;
|
||||
property OpenAttachmentsInFullScreen read ReadOpenAttachmentsInFullScreen write WriteOpenAttachmentsInFullScreen;
|
||||
property Options read ReadOptions;
|
||||
property Path read ReadPath;
|
||||
property PathSeparator read ReadPathSeparator;
|
||||
property PickerDialog read ReadPickerDialog;
|
||||
property PortraitFontNames read ReadPortraitFontNames;
|
||||
property PrintPreview read ReadPrintPreview write WritePrintPreview;
|
||||
property ProtectedViewWindows read ReadProtectedViewWindows;
|
||||
property RecentFiles read ReadRecentFiles;
|
||||
property RestrictLinkedStyles read ReadRestrictLinkedStyles write WriteRestrictLinkedStyles;
|
||||
property ScreenUpdating read ReadScreenUpdating write WriteScreenUpdating;
|
||||
property Selection read ReadSelection;
|
||||
property SensitivityLabelPolicy read ReadSensitivityLabelPolicy;
|
||||
property ShowStartupDialog read ReadShowStartupDialog write WriteShowStartupDialog;
|
||||
property ShowStylePreviews read ReadShowStylePreviews write WriteShowStylePreviews;
|
||||
property ShowVisualBasicEditor read ReadShowVisualBasicEditor write WriteShowVisualBasicEditor;
|
||||
property SmartArtColors read ReadSmartArtColors;
|
||||
property SmartArtLayouts read ReadSmartArtLayouts;
|
||||
property SmartArtQuickStyles read ReadSmartArtQuickStyles;
|
||||
property SpecialMode read ReadSpecialMode;
|
||||
property StartupPath read ReadStartupPath write WriteStartupPath;
|
||||
property SynonymInfo read ReadSynonymInfo;
|
||||
property System read ReadSystem;
|
||||
property TaskPanes read ReadTaskPanes;
|
||||
property Tasks read ReadTasks;
|
||||
property Templates read ReadTemplates;
|
||||
property Top read ReadTop write WriteTop;
|
||||
property UndoRecord read ReadUndoRecord;
|
||||
property UsableHeight read ReadUsableHeight;
|
||||
property UsableWidth read ReadUsableWidth;
|
||||
property UserAddress read ReadUserAddress write WriteUserAddress;
|
||||
property UserControl read ReadUserControl;
|
||||
property UserInitials read ReadUserInitials write WriteUserInitials;
|
||||
property UserName read ReadUserName write WriteUserName;
|
||||
property VBE read ReadVBE;
|
||||
property Version read ReadVersion;
|
||||
property Visible read ReadVisible write WriteVisible;
|
||||
property Width read ReadWidth write WriteWidth;
|
||||
property Windows read ReadWindows;
|
||||
property WindowState read ReadWindowState write WriteWindowState;
|
||||
property WordBasic read ReadWordBasic;
|
||||
property XMLNamespaces read ReadXMLNamespaces;
|
||||
Function ReadXMLNamespaces();
|
||||
Function ReadWordBasic();
|
||||
Function WriteWindowState(value);
|
||||
Function ReadWindowState();
|
||||
Function ReadWindows();
|
||||
Function WriteWidth(value);
|
||||
Function ReadWidth();
|
||||
Function WriteVisible(value);
|
||||
Function ReadVisible();
|
||||
Function ReadVersion();
|
||||
Function ReadVBE();
|
||||
Function WriteUserName(value);
|
||||
Function ReadUserName();
|
||||
Function WriteUserInitials(value);
|
||||
Function ReadUserInitials();
|
||||
Function ReadUserControl();
|
||||
Function WriteUserAddress(value);
|
||||
Function ReadUserAddress();
|
||||
Function ReadUsableWidth();
|
||||
Function ReadUsableHeight();
|
||||
Function ReadUndoRecord();
|
||||
Function WriteTop(value);
|
||||
Function ReadTop();
|
||||
Function ReadTemplates();
|
||||
Function ReadTasks();
|
||||
Function ReadTaskPanes();
|
||||
Function ReadSystem();
|
||||
Function ReadSynonymInfo();
|
||||
Function WriteStartupPath(value);
|
||||
Function ReadStartupPath();
|
||||
Function ReadSpecialMode();
|
||||
Function ReadSmartArtQuickStyles();
|
||||
Function ReadSmartArtLayouts();
|
||||
Function ReadSmartArtColors();
|
||||
Function WriteShowVisualBasicEditor(value);
|
||||
Function ReadShowVisualBasicEditor();
|
||||
Function WriteShowStylePreviews(value);
|
||||
Function ReadShowStylePreviews();
|
||||
Function WriteShowStartupDialog(value);
|
||||
Function ReadShowStartupDialog();
|
||||
Function ReadSensitivityLabelPolicy();
|
||||
Function ReadSelection();
|
||||
Function WriteScreenUpdating(value);
|
||||
Function ReadScreenUpdating();
|
||||
Function WriteRestrictLinkedStyles(value);
|
||||
Function ReadRestrictLinkedStyles();
|
||||
Function ReadRecentFiles();
|
||||
Function ReadProtectedViewWindows();
|
||||
Function WritePrintPreview(value);
|
||||
Function ReadPrintPreview();
|
||||
Function ReadPortraitFontNames();
|
||||
Function ReadPickerDialog();
|
||||
Function ReadPathSeparator();
|
||||
Function ReadPath();
|
||||
Function ReadOptions();
|
||||
Function WriteOpenAttachmentsInFullScreen(value);
|
||||
Function ReadOpenAttachmentsInFullScreen();
|
||||
Function ReadOMathAutoCorrect();
|
||||
Function ReadNumLock();
|
||||
Function ReadNormalTemplate();
|
||||
Function ReadNewDocument();
|
||||
Function ReadName();
|
||||
Function ReadMouseAvailable();
|
||||
Function ReadMathCoprocessorAvailable();
|
||||
Function ReadMAPIAvailable();
|
||||
Function ReadMailSystem();
|
||||
Function ReadMailMessage();
|
||||
Function ReadMailingLabel();
|
||||
Function ReadMacroContainer();
|
||||
Function ReadListGalleries();
|
||||
Function WriteLeft(value);
|
||||
Function ReadLeft();
|
||||
Function ReadLanguageSettings();
|
||||
Function ReadLanguages();
|
||||
Function ReadLanguage();
|
||||
Function ReadLandscapeFontNames();
|
||||
Function ReadKeysBoundTo();
|
||||
Function ReadKeyBindings();
|
||||
Function ReadIsSandboxed();
|
||||
Function ReadIsObjectValid();
|
||||
Function ReadInternational();
|
||||
Function WriteHeight(value);
|
||||
Function ReadHeight();
|
||||
Function ReadHangulHanjaDictionaries();
|
||||
Function ReadFontNames();
|
||||
Function ReadFocusInMailHeader();
|
||||
Function ReadFindKey();
|
||||
Function WriteFileValidation(value);
|
||||
Function ReadFileValidation();
|
||||
Function ReadFileDialog();
|
||||
Function ReadFileConverters();
|
||||
Function WriteFeatureInstall(value);
|
||||
Function ReadFeatureInstall();
|
||||
Function WriteEnableCancelKey(value);
|
||||
Function ReadEnableCancelKey();
|
||||
Function WriteEmailTemplate(value);
|
||||
Function ReadEmailTemplate();
|
||||
Function ReadEmailOptions();
|
||||
Function WriteDontResetInsertionPointProperties(value);
|
||||
Function ReadDontResetInsertionPointProperties();
|
||||
Function ReadDocuments();
|
||||
Function WriteDisplayScrollBars(value);
|
||||
Function ReadDisplayScrollBars();
|
||||
Function WriteDisplayScreenTips(value);
|
||||
Function ReadDisplayScreenTips();
|
||||
Function WriteDisplayRecentFiles(value);
|
||||
Function ReadDisplayRecentFiles();
|
||||
Function WriteDisplayDocumentInformationPanel(value);
|
||||
Function ReadDisplayDocumentInformationPanel();
|
||||
Function WriteDisplayAutoCompleteTips(value);
|
||||
Function ReadDisplayAutoCompleteTips();
|
||||
Function WriteDisplayAlerts(value);
|
||||
Function ReadDisplayAlerts();
|
||||
Function ReadDialogs();
|
||||
Function WriteDefaultTableSeparator(value);
|
||||
Function ReadDefaultTableSeparator();
|
||||
Function WriteDefaultSaveFormat(value);
|
||||
Function ReadDefaultSaveFormat();
|
||||
Function WriteDefaultLegalBlackline(value);
|
||||
Function ReadDefaultLegalBlackline();
|
||||
Function WriteCustomizationContext(value);
|
||||
Function ReadCustomizationContext();
|
||||
Function ReadCustomDictionaries();
|
||||
Function ReadCommandBars();
|
||||
Function ReadCOMAddIns();
|
||||
Function WriteCheckLanguage(value);
|
||||
Function ReadCheckLanguage();
|
||||
Function WriteChartDataPointTrack(value);
|
||||
Function ReadChartDataPointTrack();
|
||||
Function ReadCaptionLabels();
|
||||
Function WriteCaption(value);
|
||||
Function ReadCaption();
|
||||
Function ReadCapsLock();
|
||||
Function ReadBuild();
|
||||
Function ReadBrowser();
|
||||
Function WriteBrowseExtraFileTypes(value);
|
||||
Function ReadBrowseExtraFileTypes();
|
||||
Function ReadBibliography();
|
||||
Function ReadBackgroundSavingStatus();
|
||||
Function ReadBackgroundPrintingStatus();
|
||||
Function WriteAutomationSecurity(value);
|
||||
Function ReadAutomationSecurity();
|
||||
Function ReadAutoCorrectEmail();
|
||||
Function ReadAutoCorrect();
|
||||
Function ReadAutoCaptions();
|
||||
Function ReadAssistance();
|
||||
Function ReadArbitraryXMLSupportAvailable();
|
||||
Function ReadAddIns();
|
||||
Function ReadActiveWindow();
|
||||
Function ReadActiveProtectedViewWindow();
|
||||
Function WriteActivePrinter(value);
|
||||
Function ReadActivePrinter();
|
||||
Function ReadActiveEncryptionSession();
|
||||
Function ReadActiveDocument();
|
||||
|
||||
private
|
||||
documents_;
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxApplication.Create();
|
||||
Begin
|
||||
Class(TSVbaBase).Create(self, self, random(10000000));
|
||||
Init();
|
||||
End;
|
||||
|
||||
Function TSDocxApplication.Init();
|
||||
Begin
|
||||
documents_ := new TSDocxDocuments(application_, self, creator_);
|
||||
End;
|
||||
|
||||
|
||||
// property
|
||||
Function TSDocxApplication.ReadDocuments(Index)
|
||||
Begin
|
||||
if ifnil(Index) then return documents_;
|
||||
return documents_[Index];
|
||||
End;
|
||||
|
||||
Function TSDocxApplication.ReadActiveDocument();
|
||||
Begin
|
||||
return documents_.GetActivation();
|
||||
End;
|
||||
|
||||
|
|
@ -0,0 +1,151 @@
|
|||
Type TSDocxBorder = Class
|
||||
|
||||
public
|
||||
Function Create(application, borders, borderType);
|
||||
|
||||
private
|
||||
application_;
|
||||
border_;
|
||||
|
||||
public
|
||||
property Application read ReadApplication;
|
||||
property ArtStyle read ReadArtStyle write WriteArtStyle;
|
||||
property ArtWidth read ReadArtWidth write WriteArtWidth;
|
||||
property Color read ReadColor write WriteColor;
|
||||
property ColorIndex read ReadColorIndex write WriteColorIndex;
|
||||
property Creator read ReadCreator;
|
||||
property Inside read ReadInside;
|
||||
property LineStyle read ReadLineStyle write WriteLineStyle;
|
||||
property LineWidth read ReadLineWidth write WriteLineWidth;
|
||||
property Parent read ReadParent;
|
||||
property Visible read ReadVisible write WriteVisible;
|
||||
Function WriteVisible();
|
||||
Function ReadVisible();
|
||||
Function ReadParent();
|
||||
Function WriteLineWidth();
|
||||
Function ReadLineWidth();
|
||||
Function WriteLineStyle(value);virtual;
|
||||
Function ReadLineStyle();
|
||||
Function ReadInside();
|
||||
Function ReadCreator();
|
||||
Function WriteColorIndex();
|
||||
Function ReadColorIndex();
|
||||
Function WriteColor();
|
||||
Function ReadColor();
|
||||
Function WriteArtWidth();
|
||||
Function ReadArtWidth();
|
||||
Function WriteArtStyle();
|
||||
Function ReadArtStyle();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxBorder.Create(application, borders, borderType);
|
||||
Begin
|
||||
application_ := application;
|
||||
|
||||
case borderType of
|
||||
Class(TSDocxEnumerations).wdBorderBottom():
|
||||
border_ := borders.Bottom;
|
||||
Class(TSDocxEnumerations).wdBorderDiagonalDown():
|
||||
border_ := borders.tl2br;
|
||||
Class(TSDocxEnumerations).wdBorderDiagonalUp():
|
||||
border_ := borders.tr2bl;
|
||||
Class(TSDocxEnumerations).wdBorderHorizontal():
|
||||
border_ := borders.InsideH;
|
||||
Class(TSDocxEnumerations).wdBorderLeft():
|
||||
border_ := borders.Left;
|
||||
Class(TSDocxEnumerations).wdBorderRight():
|
||||
border_ := borders.Right;
|
||||
Class(TSDocxEnumerations).wdBorderTop():
|
||||
border_ := borders.Top;
|
||||
Class(TSDocxEnumerations).wdBorderVertical():
|
||||
border_ := borders.InsideV;
|
||||
end;
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxBorder.WriteLineStyle(value);virtual;
|
||||
Begin
|
||||
case value of
|
||||
class(TSDocxEnumerations).wdLineStyleDashDot():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDashDotDot():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDashDotStroked():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDashLargeGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDashSmallGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDot():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDouble():
|
||||
border_.Val := "double";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleDoubleWavy():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleEmboss3D():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleEngrave3D():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleInset():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleNone():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleOutset():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleSingle():
|
||||
border_.Val := "single";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleSingleWavy():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThickThinLargeGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThickThinMedGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThickThinSmallGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickLargeGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickMedGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickSmallGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickThinLargeGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickThinMedGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleThinThickThinSmallGap():
|
||||
border_.Val := "nil";
|
||||
|
||||
class(TSDocxEnumerations).wdLineStyleTriple():
|
||||
border_.Val := "nil";
|
||||
|
||||
end;
|
||||
border_.Update();
|
||||
|
||||
End;
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
Type TSDocxBorderTable = Class(TSDocxBorder)
|
||||
|
||||
public
|
||||
Function Create(application, table, borderType);
|
||||
|
||||
public
|
||||
Function WriteLineStyle(value);override;
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
border_type_;
|
||||
|
||||
End;
|
||||
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxBorderTable.Create(application, table, borderType);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
border_type_ := borderType;
|
||||
End;
|
||||
|
||||
|
||||
// property
|
||||
Function TSDocxBorderTable.WriteLineStyle(value);override;
|
||||
Begin
|
||||
for r:=1 to table_.Rows() do
|
||||
begin
|
||||
for c:=1 to table_.Cols() do
|
||||
begin
|
||||
cell := new TSDocxCell(application_, table_, r, c);
|
||||
cell.Borders(border_type_).LineStyle := value;
|
||||
end
|
||||
end
|
||||
End;
|
||||
|
|
@ -0,0 +1,112 @@
|
|||
Type TSDocxBorders = Class
|
||||
|
||||
public
|
||||
Function Create(application, borders);
|
||||
Function Operator[](index);virtual;
|
||||
|
||||
private
|
||||
application_;
|
||||
borders_;
|
||||
|
||||
public
|
||||
Function ApplyPageBordersToAllSections();
|
||||
Function Item(Index);
|
||||
|
||||
property AlwaysInFront read ReadAlwaysInFront write WriteAlwaysInFront;
|
||||
property Application read ReadApplication;
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
property DistanceFrom read ReadDistanceFrom write WriteDistanceFrom;
|
||||
property DistanceFromBottom read ReadDistanceFromBottom write WriteDistanceFromBottom;
|
||||
property DistanceFromLeft read ReadDistanceFromLeft write WriteDistanceFromLeft;
|
||||
property DistanceFromRight read ReadDistanceFromRight write WriteDistanceFromRight;
|
||||
property DistanceFromTop read ReadDistanceFromTop write WriteDistanceFromTop;
|
||||
property Enable read ReadEnable write WriteEnable;
|
||||
property EnableFirstPageInSection read ReadEnableFirstPageInSection write WriteEnableFirstPageInSection;
|
||||
property EnableOtherPagesInSection read ReadEnableOtherPagesInSection write WriteEnableOtherPagesInSection;
|
||||
property HasHorizontal read ReadHasHorizontal;
|
||||
property HasVertical read ReadHasVertical;
|
||||
property InsideColor read ReadInsideColor write WriteInsideColor;
|
||||
property InsideColorIndex read ReadInsideColorIndex write WriteInsideColorIndex;
|
||||
property InsideLineStyle read ReadInsideLineStyle write WriteInsideLineStyle;
|
||||
property InsideLineWidth read ReadInsideLineWidth write WriteInsideLineWidth;
|
||||
property JoinBorders read ReadJoinBorders write WriteJoinBorders;
|
||||
property OutsideColor read ReadOutsideColor write WriteOutsideColor;
|
||||
property OutsideColorIndex read ReadOutsideColorIndex write WriteOutsideColorIndex;
|
||||
property OutsideLineStyle read ReadOutsideLineStyle write WriteOutsideLineStyle;
|
||||
property OutsideLineWidth read ReadOutsideLineWidth write WriteOutsideLineWidth;
|
||||
property Parent read ReadParent;
|
||||
property Shadow read ReadShadow write WriteShadow;
|
||||
property SurroundFooter read ReadSurroundFooter write WriteSurroundFooter;
|
||||
property SurroundHeader read ReadSurroundHeader write WriteSurroundHeader;
|
||||
Function WriteSurroundHeader();
|
||||
Function ReadSurroundHeader();
|
||||
Function WriteSurroundFooter();
|
||||
Function ReadSurroundFooter();
|
||||
Function WriteShadow();
|
||||
Function ReadShadow();
|
||||
Function ReadParent();
|
||||
Function WriteOutsideLineWidth();
|
||||
Function ReadOutsideLineWidth();
|
||||
Function WriteOutsideLineStyle();
|
||||
Function ReadOutsideLineStyle();
|
||||
Function WriteOutsideColorIndex();
|
||||
Function ReadOutsideColorIndex();
|
||||
Function WriteOutsideColor();
|
||||
Function ReadOutsideColor();
|
||||
Function WriteJoinBorders();
|
||||
Function ReadJoinBorders();
|
||||
Function WriteInsideLineWidth();
|
||||
Function ReadInsideLineWidth();
|
||||
Function WriteInsideLineStyle();
|
||||
Function ReadInsideLineStyle();
|
||||
Function WriteInsideColorIndex();
|
||||
Function ReadInsideColorIndex();
|
||||
Function WriteInsideColor();
|
||||
Function ReadInsideColor();
|
||||
Function ReadHasVertical();
|
||||
Function ReadHasHorizontal();
|
||||
Function WriteEnableOtherPagesInSection();
|
||||
Function ReadEnableOtherPagesInSection();
|
||||
Function WriteEnableFirstPageInSection();
|
||||
Function ReadEnableFirstPageInSection();
|
||||
Function WriteEnable();
|
||||
Function ReadEnable();
|
||||
Function WriteDistanceFromTop();
|
||||
Function ReadDistanceFromTop();
|
||||
Function WriteDistanceFromRight();
|
||||
Function ReadDistanceFromRight();
|
||||
Function WriteDistanceFromLeft();
|
||||
Function ReadDistanceFromLeft();
|
||||
Function WriteDistanceFromBottom();
|
||||
Function ReadDistanceFromBottom();
|
||||
Function WriteDistanceFrom();
|
||||
Function ReadDistanceFrom();
|
||||
Function ReadCreator();
|
||||
Function ReadCount();
|
||||
Function ReadApplication();
|
||||
Function WriteAlwaysInFront();
|
||||
Function ReadAlwaysInFront();
|
||||
|
||||
End;
|
||||
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxBorders.Create(application, borders);
|
||||
Begin
|
||||
application_ := application;
|
||||
borders_ := borders;
|
||||
End;
|
||||
|
||||
Function Operator TSDocxBorders.[](index);virtual;
|
||||
Begin
|
||||
return new TSDocxBorder(application_, borders_, index);
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxBorders.Item(Index);
|
||||
Begin
|
||||
return self[Index];
|
||||
End;
|
||||
|
||||
// property
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
Type TSDocxBordersTable = Class(TSDocxBorders)
|
||||
|
||||
public
|
||||
Function Create(application, table);
|
||||
Function Operator[](index);overload;
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
|
||||
End;
|
||||
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxBordersTable.Create(application, table);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
End;
|
||||
|
||||
Function Operator TSDocxBordersTable.[](index);overload;
|
||||
Begin
|
||||
return new TSDocxBorderTable(application_, table_, index);
|
||||
End;
|
||||
|
|
@ -0,0 +1,373 @@
|
|||
Type TSDocxCell = Class
|
||||
|
||||
public
|
||||
Function Create(application, table, row, col);
|
||||
Function Init();
|
||||
|
||||
private
|
||||
Function GetCell();
|
||||
Function SetCellTcPrWidth(row, col, widthValue, widthType);
|
||||
|
||||
private
|
||||
application_;
|
||||
table_; // TOfficeObj("TTable")
|
||||
row_;
|
||||
column_;
|
||||
tcpr_; // TOfficeObj("TwTcPr")
|
||||
cell_; // TOfficeObj("TCell")
|
||||
min_dxa_width_; // 最小宽度 321
|
||||
|
||||
public
|
||||
Function AutoSum();
|
||||
Function Delete(ShiftCells);
|
||||
Function Formula(Formula, NumFormat);
|
||||
Function Merge(MergeTo);
|
||||
Function Select();
|
||||
Function SetHeight(RowHeight, HeightRule);
|
||||
Function SetWidth(ColumnWidth, RulerStyle);
|
||||
Function Split(NumRows, NumColumns);
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property BottomPadding read ReadBottomPadding write WriteBottomPadding;
|
||||
property Column read ReadColumn;
|
||||
property ColumnIndex read ReadColumnIndex;
|
||||
property Creator read ReadCreator;
|
||||
property FitText read ReadFitText write WriteFitText;
|
||||
property Height read ReadHeight write WriteHeight;
|
||||
property HeightRule read ReadHeightRule write WriteHeightRule;
|
||||
property ID read ReadID write WriteID;
|
||||
property LeftPadding read ReadLeftPadding write WriteLeftPadding;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Next read ReadNext;
|
||||
property Parent read ReadParent;
|
||||
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
|
||||
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
|
||||
property Previous read ReadPrevious;
|
||||
property Range read ReadRange;
|
||||
property RightPadding read ReadRightPadding write WriteRightPadding;
|
||||
property Row read ReadRow;
|
||||
property RowIndex read ReadRowIndex;
|
||||
property Shading read ReadShading;
|
||||
property Tables read ReadTables;
|
||||
property TopPadding read ReadTopPadding write WriteTopPadding;
|
||||
property VerticalAlignment read ReadVerticalAlignment write WriteVerticalAlignment;
|
||||
property Width read ReadWidth write WriteWidth;
|
||||
property WordWrap read ReadWordWrap write WriteWordWrap;
|
||||
Function WriteWordWrap(wrap);
|
||||
Function ReadWordWrap();
|
||||
Function WriteWidth(width);
|
||||
Function ReadWidth();
|
||||
Function WriteVerticalAlignment(alignment);
|
||||
Function ReadVerticalAlignment();
|
||||
Function WriteTopPadding(top);
|
||||
Function ReadTopPadding();
|
||||
Function ReadTables(index);
|
||||
Function ReadShading();
|
||||
Function ReadRowIndex();
|
||||
Function ReadRow();
|
||||
Function WriteRightPadding(right);
|
||||
Function ReadRightPadding();
|
||||
Function ReadRange();
|
||||
Function ReadPrevious();
|
||||
Function WritePreferredWidthType(value);
|
||||
Function ReadPreferredWidthType();
|
||||
Function WritePreferredWidth(value);
|
||||
Function ReadPreferredWidth();
|
||||
Function ReadParent();
|
||||
Function ReadNext();
|
||||
Function ReadNestingLevel();
|
||||
Function WriteLeftPadding(left);
|
||||
Function ReadLeftPadding();
|
||||
Function WriteID();
|
||||
Function ReadID();
|
||||
Function WriteHeightRule();
|
||||
Function ReadHeightRule();
|
||||
Function WriteHeight();
|
||||
Function ReadHeight();
|
||||
Function WriteFitText();
|
||||
Function ReadFitText();
|
||||
Function ReadCreator();
|
||||
Function ReadColumnIndex();
|
||||
Function ReadColumn();
|
||||
Function WriteBottomPadding(bottom);
|
||||
Function ReadBottomPadding();
|
||||
Function ReadBorders(index);
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxCell.Create(application, table, row, column);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
row_ := row;
|
||||
column_ := column;
|
||||
min_dxa_width_ := 321;
|
||||
Init();
|
||||
End;
|
||||
|
||||
Function TSDocxCell.Init();
|
||||
Begin
|
||||
cell := table_.GetCells()[row_-1, column_-1];
|
||||
if not ifnil(cell) then
|
||||
begin
|
||||
tcpr_node := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
|
||||
tcpr_ := TOfficeObj("TwTcPr");
|
||||
tcpr_.InitRootNode(tcpr_node);
|
||||
end
|
||||
End;
|
||||
|
||||
Function TSDocxCell.GetCell();
|
||||
Begin
|
||||
if ifObj(cell_) then return cell_;
|
||||
cell_ := table_.Cell(row_, column_);
|
||||
return cell_;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.SetCellTcPrWidth(row, col, widthValue, widthType);
|
||||
Begin
|
||||
cell := table_.GetCells()[row-1, col-1];
|
||||
if ifnil(cell) then return;
|
||||
tcpr_node := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
|
||||
tcpr_obj := TOfficeObj("TwTcPr");
|
||||
tcpr_obj.InitRootNode(tcpr_node);
|
||||
tcpr_obj.Width := widthValue;
|
||||
tcpr_obj.Type := widthType;
|
||||
tcpr_obj.Update();
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxCell.Delete(ShiftCells);
|
||||
Begin
|
||||
if ifnil(ShiftCells) then ShiftCells := class(TSDocxEnumerations).wdDeleteCellsShiftLeft();
|
||||
case ShiftCells of
|
||||
class(TSDocxEnumerations).wdDeleteCellsEntireColumn():
|
||||
table_.DeleteCell(nil, column_);
|
||||
|
||||
class(TSDocxEnumerations).wdDeleteCellsEntireRow():
|
||||
table_.DeleteCell(row_, nil);
|
||||
|
||||
class(TSDocxEnumerations).wdDeleteCellsShiftLeft():
|
||||
table_.DeleteCell(row_, column_);
|
||||
|
||||
class(TSDocxEnumerations).wdDeleteCellsShiftUp():
|
||||
table_.DeleteCell(row_, column_, 0);
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.Merge(MergeTo);
|
||||
Begin
|
||||
table_.Merge(self.RowIndex, self.ColumnIndex, MergeTo.RowIndex, MergeTo.ColumnIndex, false);
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxCell.ReadColumnIndex();
|
||||
Begin
|
||||
return column_;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.ReadColumn();
|
||||
Begin
|
||||
return new TSDocxColumn(application_, table_, column_);
|
||||
End;
|
||||
|
||||
Function TSDocxCell.ReadRowIndex();
|
||||
Begin
|
||||
return row_;
|
||||
End;
|
||||
|
||||
// VBA width=100,xml是2000
|
||||
Function TSDocxCell.WriteWidth(width);
|
||||
Begin
|
||||
tcpr_.Width := width * 20;
|
||||
tcpr_.Type := "dxa";
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadWidth();
|
||||
Begin
|
||||
return tcpr_.Value("width") / 20;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteWordWrap(wrap);
|
||||
Begin
|
||||
tcpr_.noWrap := wrap ? 0 : 1;
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadWordWrap();
|
||||
Begin
|
||||
return tcpr_.Value("noWrap") ? false : true;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteVerticalAlignment(alignment);
|
||||
Begin
|
||||
case alignment of
|
||||
class(TSDocxEnumerations).wdCellAlignVerticalBottom():
|
||||
begin
|
||||
tcpr_.vAlign := "bottom";
|
||||
tcpr_.Update();
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdCellAlignVerticalCenter():
|
||||
begin
|
||||
tcpr_.vAlign := "center";
|
||||
tcpr_.Update();
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdCellAlignVerticalTop():
|
||||
begin
|
||||
tcpr_.vAlign := "top";
|
||||
tcpr_.Update();
|
||||
end;
|
||||
|
||||
end;
|
||||
End;
|
||||
Function TSDocxCell.ReadVerticalAlignment();
|
||||
Begin
|
||||
alignment := tcpr_.Value("vAlign");
|
||||
case alignment of
|
||||
"bottom": return class(TSDocxEnumerations).wdCellAlignVerticalBottom();
|
||||
"center": return class(TSDocxEnumerations).wdCellAlignVerticalCenter();
|
||||
else return class(TSDocxEnumerations).wdCellAlignVerticalTop();
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteTopPadding(top);
|
||||
Begin
|
||||
tcpr_.CellMar.Top := 20 * top;
|
||||
tcpr_.CellMar.TopType := "dxa";
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadTopPadding();
|
||||
Begin
|
||||
return tcpr_.CellMar.Value("Top") / 20;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteLeftPadding(left);
|
||||
Begin
|
||||
tcpr_.CellMar.Left := 20 * left;
|
||||
tcpr_.CellMar.LeftType := "dxa";
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadLeftPadding();
|
||||
Begin
|
||||
return tcpr_.CellMar.Value("Left") / 20;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteBottomPadding(bottom);
|
||||
Begin
|
||||
tcpr_.CellMar.Bottom := 20 * bottom;
|
||||
tcpr_.CellMar.BottomType := "dxa";
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadBottomPadding();
|
||||
Begin
|
||||
return tcpr_.CellMar.Value("Bottom") / 20;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WriteRightPadding(right);
|
||||
Begin
|
||||
tcpr_.CellMar.Right := 20 * right;
|
||||
tcpr_.CellMar.RightType := "dxa";
|
||||
tcpr_.Update();
|
||||
End;
|
||||
Function TSDocxCell.ReadRightPadding();
|
||||
Begin
|
||||
return tcpr_.CellMar.Value("Right") / 20;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.ReadTables(index);
|
||||
Begin
|
||||
tables_obj := new TSDocxTables(application_, GetCell());
|
||||
return ifnil(index) ? tables_obj : tables_obj[index];
|
||||
End;
|
||||
|
||||
Function TSDocxCell.ReadShading();
|
||||
Begin
|
||||
return new TSDocxShading(application_, tcpr_);
|
||||
End;
|
||||
|
||||
Function TSDocxCell.ReadBorders(index);
|
||||
Begin
|
||||
obj := new TSDocxBorders(application_, tcpr_.Borders);
|
||||
return ifnil(index) ? obj : obj[index];
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WritePreferredWidthType(value);
|
||||
Begin
|
||||
width_value := nil;
|
||||
width_type := nil;
|
||||
case value of
|
||||
class(TSDocxEnumerations).wdPreferredWidthAuto():
|
||||
begin
|
||||
table_.TblPr.Width := 0;
|
||||
table_.TblPr.WidthType := "auto";
|
||||
table_.TblPr.Update();
|
||||
width_value := 0;
|
||||
width_type := "auto";
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPercent():
|
||||
begin
|
||||
table_.TblPr.Width := 5000;
|
||||
table_.TblPr.WidthType := "pct";
|
||||
table_.TblPr.Update();
|
||||
|
||||
width_value := integer(5000 / table_.Cols());
|
||||
width_type := "pct";
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPoints():
|
||||
begin
|
||||
width_value := nil;
|
||||
width_type := "dxa";
|
||||
end
|
||||
end;
|
||||
if ifnil(width_value) and ifnil(width_type) then return;
|
||||
for r:=1 to table_.Rows() do
|
||||
for c:=1 to table_.Cols() do
|
||||
SetCellTcPrWidth(r, c, width_value, width_type);
|
||||
End;
|
||||
Function TSDocxCell.ReadPreferredWidthType();
|
||||
Begin
|
||||
width_type := tcpr_.Value("Type");
|
||||
case width_type of
|
||||
"auto": return class(TSDocxEnumerations).wdPreferredWidthAuto();
|
||||
"dxa": return class(TSDocxEnumerations).wdPreferredWidthPoints();
|
||||
"pct": return class(TSDocxEnumerations).wdPreferredWidthPercent();
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxCell.WritePreferredWidth(value);
|
||||
Begin
|
||||
width_type := self.PreferredWidthType;
|
||||
width_value := 0;
|
||||
case width_type of
|
||||
class(TSDocxEnumerations).wdPreferredWidthAuto(),
|
||||
class(TSDocxEnumerations).wdPreferredWidthPoints():
|
||||
begin
|
||||
width_type := "dxa";
|
||||
width_value := 20 * value;
|
||||
if width_type > min_dxa_width_ then width_type := min_dxa_width_;
|
||||
SetCellTcPrWidth(row_, column_, width_value, width_type);
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPercent():
|
||||
begin
|
||||
width_type := "pct";
|
||||
if value < 0 or value > 100 then return;
|
||||
width_value := 50 * value;
|
||||
SetCellTcPrWidth(row_, column_, width_value, width_type);
|
||||
end
|
||||
end;
|
||||
End;
|
||||
Function TSDocxCell.ReadPreferredWidth();
|
||||
Begin
|
||||
width_type := tcpr_.Value("Type");
|
||||
width_value := tcpr_.Value("Width");
|
||||
case width_type of
|
||||
"auto", "dxa": return width_value / 20;
|
||||
"pct": return width_value / 50;
|
||||
end;
|
||||
End;
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
Type TSDocxCells = Class
|
||||
|
||||
public
|
||||
Function Create(application, table);
|
||||
|
||||
private
|
||||
application_;
|
||||
table_; // TOfficeObj("TTable")
|
||||
|
||||
public
|
||||
Function Add(BeforeCell);
|
||||
Function AutoFit();
|
||||
Function Delete(ShiftCells);
|
||||
Function DistributeHeight();
|
||||
Function DistributeWidth();
|
||||
Function Item(Index);
|
||||
Function Merge();
|
||||
Function SetHeight(RowHeight, HeightRule);
|
||||
Function SetWidth(ColumnWidth, RulerStyle);
|
||||
Function Split(NumRows, NumColumns, MergeBeforeSplit);
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
property Height read ReadHeight write WriteHeight;
|
||||
property HeightRule read ReadHeightRule write WriteHeightRule;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Parent read ReadParent;
|
||||
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
|
||||
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
|
||||
property Shading read ReadShading;
|
||||
property VerticalAlignment read ReadVerticalAlignment write WriteVerticalAlignment;
|
||||
property Width read ReadWidth write WriteWidth;
|
||||
Function WriteWidth();
|
||||
Function ReadWidth();
|
||||
Function WriteVerticalAlignment();
|
||||
Function ReadVerticalAlignment();
|
||||
Function ReadShading();
|
||||
Function WritePreferredWidthType();
|
||||
Function ReadPreferredWidthType();
|
||||
Function WritePreferredWidth();
|
||||
Function ReadPreferredWidth();
|
||||
Function ReadParent();
|
||||
Function ReadNestingLevel();
|
||||
Function WriteHeightRule();
|
||||
Function ReadHeightRule();
|
||||
Function WriteHeight();
|
||||
Function ReadHeight();
|
||||
Function ReadCreator();
|
||||
Function ReadCount();
|
||||
Function ReadBorders();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
|
|
@ -0,0 +1,245 @@
|
|||
Type TSDocxColumn = Class
|
||||
|
||||
public
|
||||
Function Create(application, table, column);
|
||||
|
||||
private
|
||||
Function SetColumnWidth(column, wvalue, type);
|
||||
Function SerializeTblGrid();
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
column_;
|
||||
min_dxa_width_; // 最小宽度 321
|
||||
|
||||
public
|
||||
Function AutoFit();
|
||||
Function Delete();
|
||||
Function Select();
|
||||
Function SetWidth(ColumnWidth, RulerStyle);
|
||||
Function Sort(ExcludeHeader, SortFieldType, SortOrder, CaseSensitive, BidiSort, IgnoreThe, IgnoreKashida, IgnoreDiacritics, IgnoreHe, LanguageID);
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property Cells read ReadCells;
|
||||
property Creator read ReadCreator;
|
||||
property Index read ReadIndex;
|
||||
property IsFirst read ReadIsFirst;
|
||||
property IsLast read ReadIsLast;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Next read ReadNext;
|
||||
property Parent read ReadParent;
|
||||
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
|
||||
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
|
||||
property Previous read ReadPrevious;
|
||||
property Shading read ReadShading;
|
||||
property Width read ReadWidth write WriteWidth;
|
||||
Function WriteWidth(value);
|
||||
Function ReadWidth();
|
||||
Function ReadShading();
|
||||
Function ReadPrevious();
|
||||
Function WritePreferredWidthType(value);
|
||||
Function ReadPreferredWidthType();
|
||||
Function WritePreferredWidth(value);
|
||||
Function ReadPreferredWidth();
|
||||
Function ReadParent();
|
||||
Function ReadNext();
|
||||
Function ReadNestingLevel();
|
||||
Function ReadIsLast();
|
||||
Function ReadIsFirst();
|
||||
Function ReadIndex();
|
||||
Function ReadCreator();
|
||||
Function ReadCells();
|
||||
Function ReadBorders();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxColumn.Create(application, table, column);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
column_ := column;
|
||||
min_dxa_width_ := 321;
|
||||
End;
|
||||
|
||||
Function TSDocxColumn.SetColumnWidth(column, wvalue, type);
|
||||
Begin
|
||||
if ifnil(wvalue) and ifnil(type) then return;
|
||||
tcells := table_.GetCells();
|
||||
for r:=0 to table_.Rows()-1 do
|
||||
begin
|
||||
cell := tcells[r, column-1];
|
||||
if ifnil(cell) then continue;
|
||||
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
|
||||
obj := TOfficeObj("TwTcPr");
|
||||
obj.InitRootNode(tcpr);
|
||||
obj.Width := wvalue;
|
||||
obj.Type := type;
|
||||
obj.Update();
|
||||
end
|
||||
End;
|
||||
|
||||
Function TSDocxColumn.SerializeTblGrid();
|
||||
Begin
|
||||
grid_col_arr := array();
|
||||
total_width := 0;
|
||||
grid_col := class(TSXml).GetNode(table_.Root(), "w:tblGrid/w:gridCol");
|
||||
while ifObj(grid_col) do
|
||||
begin
|
||||
ww := strtoint(grid_col.GetAttribute("w:w"));
|
||||
total_width += ww;
|
||||
grid_col_arr[length(grid_col_arr)] := array(grid_col, ww);
|
||||
grid_col := grid_col.NextElement();
|
||||
end
|
||||
return array(total_width, grid_col_arr);
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxColumn.SetWidth(ColumnWidth, RulerStyle);
|
||||
Begin
|
||||
if ifnil(RulerStyle) then RulerStyle := class(TSDocxEnumerations).wdAdjustNone();
|
||||
width_value := ColumnWidth * 20;
|
||||
[total_width, grid_col_arr] := SerializeTblGrid();
|
||||
// 设置w:tblPr的总宽度
|
||||
table_.TblPr.Width := total_width;
|
||||
table_.TblPr.WidthType := "dxa";
|
||||
table_.TblPr.Update();
|
||||
|
||||
case RulerStyle of
|
||||
class(TSDocxEnumerations).wdAdjustFirstColumn():
|
||||
begin
|
||||
if column_ < length(grid_col_arr)-1 then
|
||||
begin
|
||||
new_width := grid_col_arr[column_][1] + grid_col_arr[column_-1][1] - width_value;
|
||||
if new_width < min_dxa_width_ then new_width := min_dxa_width_;
|
||||
grid_col_arr[column_][0].SetAttribute("w:w", new_width);
|
||||
SetColumnWidth(column_ + 1, new_w, "dxa");
|
||||
end
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdAdjustNone():
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdAdjustProportional():
|
||||
begin
|
||||
// TODO : 需要搞懂算法
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdAdjustSameWidth():
|
||||
begin
|
||||
after_width := grid_col_arr[column_-1][1] - width_value;
|
||||
for i:=column_ to length(grid_col_arr)-1 do
|
||||
after_width += grid_col_arr[i][1];
|
||||
if length(grid_col_arr) > column_ then // 不是最后一列
|
||||
begin
|
||||
num := length(grid_col_arr) - column_;
|
||||
new_width := integer(after_width / num);
|
||||
for c:=column_+1 to length(grid_col_arr) do
|
||||
begin
|
||||
grid_col_arr[c-1][0].SetAttribute("w:w", new_width);
|
||||
SetColumnWidth(c, new_width, "dxa");
|
||||
end
|
||||
end
|
||||
end
|
||||
end;
|
||||
grid_col_arr[column_-1][0].SetAttribute("w:w", width_value);
|
||||
SetColumnWidth(column_, width_value, "dxa");
|
||||
End;
|
||||
|
||||
//property
|
||||
Function TSDocxColumn.WriteWidth(value);
|
||||
Begin
|
||||
End;
|
||||
Function TSDocxColumn.ReadWidth();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function TSDocxColumn.WritePreferredWidthType(value);
|
||||
Begin
|
||||
case value of
|
||||
class(TSDocxEnumerations).wdPreferredWidthAuto():
|
||||
begin
|
||||
table_.TblPr.Width := 0;
|
||||
table_.TblPr.WidthType := "auto";
|
||||
table_.TblPr.Update();
|
||||
for c:=1 to table_.Cols() do
|
||||
SetColumnWidth(c, 0, "auto");
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPercent():
|
||||
begin
|
||||
table_.TblPr.Width := 5000;
|
||||
table_.TblPr.WidthType := "pct";
|
||||
table_.TblPr.Update();
|
||||
|
||||
width_value := integer(5000 / table_.Cols());
|
||||
for c:=1 to table_.Cols() do
|
||||
SetColumnWidth(c, width_value, "pct");
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPoints():
|
||||
begin
|
||||
for c:=1 to table_.Cols() do
|
||||
SetColumnWidth(c, nil, "dxa");
|
||||
end
|
||||
end;
|
||||
End;
|
||||
Function TSDocxColumn.ReadPreferredWidthType();
|
||||
Begin
|
||||
tcells := table_.GetCells();
|
||||
cell := tcells[1, column_ - 1];
|
||||
if ifnil(cell) then return nil;
|
||||
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
|
||||
obj := TOfficeObj("TwTcPr");
|
||||
obj.InitRootNode(tcpr);
|
||||
width_type := obj.Value("Type");
|
||||
tcpr.print;
|
||||
case width_type of
|
||||
"auto": return class(TSDocxEnumerations).wdPreferredWidthAuto();
|
||||
"dxa": return class(TSDocxEnumerations).wdPreferredWidthPoints();
|
||||
"pct": return class(TSDocxEnumerations).wdPreferredWidthPercent();
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxColumn.WritePreferredWidth(value);
|
||||
Begin
|
||||
width_type := self.PreferredWidthType;
|
||||
width_value := 0;
|
||||
case width_type of
|
||||
class(TSDocxEnumerations).wdPreferredWidthAuto(),
|
||||
class(TSDocxEnumerations).wdPreferredWidthPoints():
|
||||
begin
|
||||
width_type := "dxa";
|
||||
width_value := 20 * value;
|
||||
if width_type > min_dxa_width_ then width_type := min_dxa_width_;
|
||||
SetColumnWidth(column_, width_value, width_type);
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdPreferredWidthPercent():
|
||||
begin
|
||||
width_type := "pct";
|
||||
if value < 0 or value > 100 then return;
|
||||
width_value := 50 * value;
|
||||
SetColumnWidth(column_, width_value, width_type);
|
||||
end
|
||||
end;
|
||||
End;
|
||||
Function TSDocxColumn.ReadPreferredWidth();
|
||||
Begin
|
||||
tcells := table_.GetCells();
|
||||
cell := tcells[1, column_ - 1];
|
||||
if ifnil(cell) then return nil;
|
||||
tcpr := class(TSXml).GetNode(cell[0], "w:tcPr", "first");
|
||||
obj := TOfficeObj("TwTcPr");
|
||||
obj.InitRootNode(tcpr);
|
||||
width_type := obj.Value("Type");
|
||||
width_value := obj.Value("Width");
|
||||
case width_type of
|
||||
"auto", "dxa": return width_value / 20;
|
||||
"pct": return width_value / 50;
|
||||
end;
|
||||
End;
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
Type TSDocxColumns = Class
|
||||
|
||||
public
|
||||
Function Create(application, table);
|
||||
Function Operator[](index);
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
|
||||
public
|
||||
Function Add(BeforeColumn);
|
||||
Function AutoFit();
|
||||
Function Delete();
|
||||
Function DistributeWidth();
|
||||
Function Item(Index);
|
||||
Function Select();
|
||||
Function SetWidth(ColumnWidth, RulerStyle);
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
property First read ReadFirst;
|
||||
property Last read ReadLast;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Parent read ReadParent;
|
||||
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
|
||||
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
|
||||
property Shading read ReadShading;
|
||||
property Width read ReadWidth write WriteWidth;
|
||||
Function WriteWidth();
|
||||
Function ReadWidth();
|
||||
Function ReadShading();
|
||||
Function WritePreferredWidthType(value);
|
||||
Function ReadPreferredWidthType();
|
||||
Function WritePreferredWidth(value);
|
||||
Function ReadPreferredWidth();
|
||||
Function ReadParent();
|
||||
Function ReadNestingLevel();
|
||||
Function ReadLast();
|
||||
Function ReadFirst();
|
||||
Function ReadCreator();
|
||||
Function ReadCount();
|
||||
Function ReadBorders();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxColumns.Create(application, table);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
End;
|
||||
|
||||
Function Operator TSDocxColumns.[](index);
|
||||
Begin
|
||||
return new TSDocxColumn(application_, table_, index);
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxColumns.Item(Index);
|
||||
Begin
|
||||
return self[Index];
|
||||
End;
|
||||
|
||||
//property
|
||||
Function TSDocxColumns.ReadCount();
|
||||
Begin
|
||||
return table_.Cols();
|
||||
End;
|
||||
|
||||
Function TSDocxColumns.WritePreferredWidthType(value);
|
||||
Begin
|
||||
End;
|
||||
Function TSDocxColumns.ReadPreferredWidthType();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function TSDocxColumns.WritePreferredWidth(value);
|
||||
Begin
|
||||
End;
|
||||
Function TSDocxColumns.ReadPreferredWidth();
|
||||
Begin
|
||||
End;
|
||||
|
|
@ -0,0 +1,657 @@
|
|||
Type TSDocxDocument = Class
|
||||
|
||||
public
|
||||
Function Create(application, docx, name, fullname);
|
||||
Function Init();
|
||||
|
||||
private
|
||||
application_;
|
||||
docx_;
|
||||
collection_;
|
||||
file_name_;
|
||||
full_name_;
|
||||
|
||||
public
|
||||
Function AcceptAllRevisions();
|
||||
Function AcceptAllRevisionsShown();
|
||||
Function Activate(); // Completed
|
||||
Function AddToFavorite();
|
||||
Function ApplyTSDocxDocumentTheme(FileName);
|
||||
Function ApplyQuickStyleSet2(Style);
|
||||
Function ApplyTheme(Name);
|
||||
Function AutoFormat();
|
||||
Function CanCheckIn();
|
||||
Function CheckConsistency();
|
||||
Function CheckGrammar();
|
||||
Function CheckIn(SaveChanges, Comments, MakePublic);
|
||||
Function CheckInWithVersion(SaveChanges, Comments, MakePublic, VersionType);
|
||||
Function CheckSpelling(CustomDictionary, IgnoreUppercase, AlwaysSuggest, CustomDictionary2, CustomDictionary3, CustomDictionary4, CustomDictionary5, CustomDictionary6, CustomDictionary7, CustomDictionary8, CustomDictionary9, CustomDictionary10);
|
||||
Function Close(SaveChanges, OriginalFormat, RouteTSDocxDocument); // Completed
|
||||
Function ClosePrintPreview();
|
||||
Function Compare(Name, AuthorName, CompareTarget, DetectFormatChanges, IgnoreAllComparisonWarnings, AddToRecentFiles, RemovePersonalInformation, RemoveDateAndTime);
|
||||
Function ComputeStatistics(Statistic, IncludeFootnotesAndEndnotes);
|
||||
Function Convert();
|
||||
Function ConvertAutoHyphens();
|
||||
Function ConvertNumbersToText();
|
||||
Function ConvertVietDoc(CodePageOrigin);
|
||||
Function CopyStylesFromTemplate(Template);
|
||||
Function CountNumberedItems(NumberType, Level);
|
||||
Function CreateLetterContent(DateFormat, IncludeHeaderFooter, PageDesign, LetterStyle, Letterhead, LetterheadLocation, LetterheadSize, RecipientName, RecipientAddress, Salutation, SalutationType, RecipientReference, MailingInstructions, AttentionLine, Subject, CCList, ReturnAddress, SenderName, Closing, SenderCompany, SenderJobTitle, SenderInitials, EnclosureNumber, InfoBlock, RecipientCode, RecipientGender, ReturnAddressShortForm, SenderCity, SenderCode, SenderGender, SenderReference);
|
||||
Function DataForm();
|
||||
Function DeleteAllComments(); // TODO
|
||||
Function DeleteAllCommentsShown(); // TODO
|
||||
Function DeleteAllEditableRanges(EditorID);
|
||||
Function DeleteAllInkAnnotations();
|
||||
Function DetectLanguage();
|
||||
Function DowngradeTSDocxDocument();
|
||||
Function EndReview();
|
||||
Function ExportAsFixedFormat(OutputFileName, ExportFormat, OpenAfterExport, OptimizeFor, Range, From_, To_, Item, IncludeDocProps, KeepIRM, CreateBookmarks, DocStructureTags, BitmapMissingFonts, UseISO19005_1, FixedFormatExtClassPtr);
|
||||
Function ExportAsFixedFormat2(OutputFileName, ExportFormat, OpenAfterExport, OptimizeFor, Range, From_, To_, Item, IncludeDocProps, KeepIRM, CreateBookmarks, DocStructureTags, BitmapMissingFonts, UseISO19005_1, OptimizeForImageQuality, FixedFormatExtClassPtr);
|
||||
Function FitToPages();
|
||||
Function FollowHyperlink (Address, SubAddress, NewWindow, AddHistory, ExtraInfo, Method, HeaderInfo);
|
||||
Function FreezeLayout();
|
||||
Function GetCrossReferenceItems(ReferenceType);
|
||||
Function GetLetterContent();
|
||||
Function GetWorkflowTasks();
|
||||
Function GetWorkflowTemplates();
|
||||
Function GoTo(What, Which, Count, Name);
|
||||
Function LockServerFile();
|
||||
Function MakeCompatibilityDefault();
|
||||
Function ManualHyphenation();
|
||||
Function Merge(Name, MergeTarget, DetectFormatChanges, UseFormattingFrom, AddToRecentFiles);
|
||||
Function Post();
|
||||
Function PresentIt();
|
||||
Function PrintOut(Background, Append, Range, OutputFileName, From_, To_, Item, Copies, Pages, PageType, PrintToFile, Collate, FileName, ActivePrinterMacGX, ManualDuplexPrint, PrintZoomColumn, PrintZoomRow, PrintZoomPaperWidth, PrintZoomPaperHeight);
|
||||
Function PrintPreview();
|
||||
Function Protect(Type, NoReset, Password, UseIRM, EnforceStyleLock);
|
||||
Function Range(Start, End_); // TODO
|
||||
Function Redo(Times);
|
||||
Function RejectAllRevisions();
|
||||
Function RejectAllRevisionsShown();
|
||||
Function Reload();
|
||||
Function ReloadAs(Encoding);
|
||||
Function RemoveTSDocxDocumentInformation(RemoveDocInfoType);
|
||||
Function RemoveLockedStyles();
|
||||
Function RemoveNumbers(NumberType);
|
||||
Function RemoveTheme();
|
||||
Function Repaginate();
|
||||
Function ReplyWithChanges(ShowMessage);
|
||||
Function ResetFormFields();
|
||||
Function ReturnToLastReadPosition();
|
||||
Function RunAutoMacro(Which);
|
||||
Function RunLetterWizard(LetterContent, WizardMode);
|
||||
Function Save(); // Completed
|
||||
Function SaveAs2(FileName, FileFormat, LockComments, Password, AddToRecentFiles, WritePassword,
|
||||
ReadOnlyRecommended, EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
|
||||
SaveAsAOCELetter, Encoding, InsertLineBreaks, AllowSubstitutions, LineEnding,
|
||||
AddBiDiMarks, CompatibilityMode); // Completed
|
||||
Function SaveAsQuickStyleSet(FileName);
|
||||
Function Select();
|
||||
Function SelectAllEditableRanges(EditorID);
|
||||
Function SelectContentControlsByTag(Tag);
|
||||
Function SelectContentControlsByTitle(Title);
|
||||
Function SelectLinkedControls(Node);
|
||||
Function SelectNodes(XPath, PrefixMapping, FastSearchSkippingTextNodes);
|
||||
Function SelectSingleNode(XPath, PrefixMapping, FastSearchSkippingTextNodes);
|
||||
Function SelectUnlinkedControls(Stream);
|
||||
Function SendFax(Address, Subject);
|
||||
Function SendFaxOverInternet(Recipients, Subject, ShowMessage);
|
||||
Function SendForReview(Recipients, Subject, ShowMessage, IncludeAttachment);
|
||||
Function SendMail();
|
||||
Function SetCompatibilityMode(Mode);
|
||||
Function SetDefaultTableStyle(Style, SetInTemplate);
|
||||
Function SetLetterContent(LetterContent);
|
||||
Function SetPasswordEncryptionOptions(PasswordEncryptionProvider, PasswordEncryptionAlgorithm, PasswordEncryptionKeyLength, PasswordEncryptionFileProperties);
|
||||
Function ToggleFormsDesign();
|
||||
Function TransformTSDocxDocument(Path, DataOnly);
|
||||
Function Undo(Times);
|
||||
Function UndoClear();
|
||||
Function Unprotect(Password);
|
||||
Function UpdateStyles();
|
||||
Function ViewCode();
|
||||
Function ViewPropertyBrowser();
|
||||
Function WebPagePreview();
|
||||
|
||||
property ActiveTheme read ReadActiveTheme;
|
||||
property ActiveThemeDisplayName read ReadActiveThemeDisplayName;
|
||||
property ActiveWindow read ReadActiveWindow; // TODO
|
||||
property ActiveWritingStyle read ReadActiveWritingStyle write WriteActiveWritingStyle;
|
||||
property Application read ReadApplication;
|
||||
property AttachedTemplate read ReadAttachedTemplate write WriteAttachedTemplate;
|
||||
property AutoFormatOverride read ReadAutoFormatOverride write WriteAutoFormatOverride;
|
||||
property AutoHyphenation read ReadAutoHyphenation write WriteAutoHyphenation;
|
||||
property AutoSaveOn read ReadAutoSaveOn write WriteAutoSaveOn;
|
||||
property Background read ReadBackground;
|
||||
property Bibliography read ReadBibliography;
|
||||
property Bookmarks read ReadBookmarks;
|
||||
property Broadcast read ReadBroadcast;
|
||||
property BuiltInTSDocxDocumentProperties read ReadBuiltInTSDocxDocumentProperties;
|
||||
property Characters read ReadCharacters;
|
||||
property ChartDataPointTrack read ReadChartDataPointTrack write WriteChartDataPointTrack;
|
||||
property ClickAndTypeParagraphStyle read ReadClickAndTypeParagraphStyle write WriteClickAndTypeParagraphStyle;
|
||||
property CoAuthoring read ReadCoAuthoring;
|
||||
property CodeName read ReadCodeName;
|
||||
property CommandBars read ReadCommandBars;
|
||||
property Comments read ReadComments;
|
||||
property Compatibility read ReadCompatibility write WriteCompatibility;
|
||||
property CompatibilityMode read ReadCompatibilityMode write WriteCompatibilityMode;
|
||||
property ConsecutiveHyphensLimit read ReadConsecutiveHyphensLimit write WriteConsecutiveHyphensLimit;
|
||||
property Container read ReadContainer;
|
||||
property Content read ReadContent;
|
||||
property ContentControls read ReadContentControls;
|
||||
property ContentTypeProperties read ReadContentTypeProperties;
|
||||
property Creator read ReadCreator;
|
||||
property CurrentRsid read ReadCurrentRsid;
|
||||
property CustomTSDocxDocumentProperties read ReadCustomTSDocxDocumentProperties;
|
||||
property CustomXMLParts read ReadCustomXMLParts;
|
||||
property DefaultTableStyle read ReadDefaultTableStyle;
|
||||
property DefaultTabStop read ReadDefaultTabStop write WriteDefaultTabStop;
|
||||
property DefaultTargetFrame read ReadDefaultTargetFrame write WriteDefaultTargetFrame;
|
||||
property DisableFeatures read ReadDisableFeatures write WriteDisableFeatures;
|
||||
property DisableFeaturesIntroducedAfter read ReadDisableFeaturesIntroducedAfter write WriteDisableFeaturesIntroducedAfter;
|
||||
property TSDocxDocumentInspectors read ReadTSDocxDocumentInspectors;
|
||||
property TSDocxDocumentLibraryVersions read ReadTSDocxDocumentLibraryVersions;
|
||||
property TSDocxDocumentTheme read ReadTSDocxDocumentTheme;
|
||||
property DoNotEmbedSystemFonts read ReadDoNotEmbedSystemFonts write WriteDoNotEmbedSystemFonts;
|
||||
property Email read ReadEmail;
|
||||
property EmbedLinguisticData read ReadEmbedLinguisticData write WriteEmbedLinguisticData;
|
||||
property EmbedTrueTypeFonts read ReadEmbedTrueTypeFonts write WriteEmbedTrueTypeFonts;
|
||||
property EncryptionProvider read ReadEncryptionProvider write WriteEncryptionProvider;
|
||||
property Endnotes read ReadEndnotes;
|
||||
property EnforceStyle read ReadEnforceStyle write WriteEnforceStyle;
|
||||
property Envelope read ReadEnvelope;
|
||||
property FarEastLineBreakLanguage read ReadFarEastLineBreakLanguage write WriteFarEastLineBreakLanguage;
|
||||
property FarEastLineBreakLevel read ReadFarEastLineBreakLevel write WriteFarEastLineBreakLevel;
|
||||
property Fields read ReadFields;
|
||||
property Final read ReadFinal write WriteFinal;
|
||||
property Footnotes read ReadFootnotes;
|
||||
property FormattingShowClear read ReadFormattingShowClear write WriteFormattingShowClear;
|
||||
property FormattingShowFilter read ReadFormattingShowFilter write WriteFormattingShowFilter;
|
||||
property FormattingShowFont read ReadFormattingShowFont write WriteFormattingShowFont;
|
||||
property FormattingShowNextLevel read ReadFormattingShowNextLevel write WriteFormattingShowNextLevel;
|
||||
property FormattingShowNumbering read ReadFormattingShowNumbering write WriteFormattingShowNumbering;
|
||||
property FormattingShowParagraph read ReadFormattingShowParagraph write WriteFormattingShowParagraph;
|
||||
property FormattingShowUserStyleName read ReadFormattingShowUserStyleName write WriteFormattingShowUserStyleName;
|
||||
property FormFields read ReadFormFields;
|
||||
property FormsDesign read ReadFormsDesign;
|
||||
property Frames read ReadFrames;
|
||||
property Frameset read ReadFrameset;
|
||||
property FullName read ReadFullName;
|
||||
property GrammarChecked read ReadGrammarChecked;
|
||||
property GrammaticalErrors read ReadGrammaticalErrors;
|
||||
property GridDistanceHorizontal read ReadGridDistanceHorizontal write WriteGridDistanceHorizontal;
|
||||
property GridDistanceVertical read ReadGridDistanceVertical write WriteGridDistanceVertical;
|
||||
property GridOriginFromMargin read ReadGridOriginFromMargin write WriteGridOriginFromMargin;
|
||||
property GridOriginHorizontal read ReadGridOriginHorizontal write WriteGridOriginHorizontal;
|
||||
property GridSpaceBetweenHorizontalLinesroperty read ReadGridSpaceBetweenHorizontalLinesroperty write WriteGridSpaceBetweenHorizontalLinesroperty;
|
||||
property GridSpaceBetweenVerticalLines read ReadGridSpaceBetweenVerticalLines write WriteGridSpaceBetweenVerticalLines;
|
||||
property HasPassword read ReadHasPassword;
|
||||
property HasVBProject read ReadHasVBProject;
|
||||
property HTMLDivisions read ReadHTMLDivisions;
|
||||
property Hyperlinks read ReadHyperlinks;
|
||||
property HyphenateCaps read ReadHyphenateCaps write WriteHyphenateCaps;
|
||||
property HyphenationZone read ReadHyphenationZone write WriteHyphenationZone;
|
||||
property Indexes read ReadIndexes;
|
||||
property InlineShapes read ReadInlineShapes;
|
||||
property IsInAutosave read ReadIsInAutosave;
|
||||
property IsMasterTSDocxDocument read ReadIsMasterTSDocxDocument;
|
||||
property IsSubdocument read ReadIsSubdocument;
|
||||
property JustificationMode read ReadJustificationMode write WriteJustificationMode;
|
||||
property KerningByAlgorithm read ReadKerningByAlgorithm write WriteKerningByAlgorithm;
|
||||
property Kind read ReadKind write WriteKind;
|
||||
property LanguageDetected read ReadLanguageDetected write WriteLanguageDetected;
|
||||
property ListParagraphs read ReadListParagraphs;
|
||||
property Lists read ReadLists;
|
||||
property ListTemplates read ReadListTemplates;
|
||||
property LockQuickStyleSet read ReadLockQuickStyleSet write WriteLockQuickStyleSet;
|
||||
property LockTheme read ReadLockTheme write WriteLockTheme;
|
||||
property MailEnvelope read ReadMailEnvelope;
|
||||
property MailMerge read ReadMailMerge;
|
||||
property Name read ReadName;
|
||||
property NoLineBreakAfter read ReadNoLineBreakAfter write WriteNoLineBreakAfter;
|
||||
property NoLineBreakBefore read ReadNoLineBreakBefore write WriteNoLineBreakBefore;
|
||||
property OMathBreakBin read ReadOMathBreakBin write WriteOMathBreakBin;
|
||||
property OMathBreakSub read ReadOMathBreakSub write WriteOMathBreakSub;
|
||||
property OMathFontName read ReadOMathFontName write WriteOMathFontName;
|
||||
property OMathIntSubSupLim read ReadOMathIntSubSupLim write WriteOMathIntSubSupLim;
|
||||
property OMathJc read ReadOMathJc write WriteOMathJc;
|
||||
property OMathLeftMargin read ReadOMathLeftMargin write WriteOMathLeftMargin;
|
||||
property OMathNarySupSubLim read ReadOMathNarySupSubLim write WriteOMathNarySupSubLim;
|
||||
property OMathNarySupSubLim read ReadOMathNarySupSubLim write WriteOMathNarySupSubLim;
|
||||
property OMathRightMargin read ReadOMathRightMargin write WriteOMathRightMargin;
|
||||
property OMaths read ReadOMaths;
|
||||
property OMathSmallFrac read ReadOMathSmallFrac write WriteOMathSmallFrac;
|
||||
property OMathWrap read ReadOMathWrap write WriteOMathWrap;
|
||||
property OpenEncoding read ReadOpenEncoding;
|
||||
property OptimizeForWord97 read ReadOptimizeForWord97 write WriteOptimizeForWord97;
|
||||
property OriginalTSDocxDocumentTitle read ReadOriginalTSDocxDocumentTitle;
|
||||
property PageSetup read ReadPageSetup;
|
||||
property Paragraphs read ReadParagraphs;
|
||||
property Parent read ReadParent;
|
||||
property Password write WritePassword;
|
||||
property PasswordEncryptionAlgorithm read ReadPasswordEncryptionAlgorithm;
|
||||
property PasswordEncryptionFileProperties read ReadPasswordEncryptionFileProperties;
|
||||
property PasswordEncryptionKeyLength read ReadPasswordEncryptionKeyLength;
|
||||
property PasswordEncryptionProvider read ReadPasswordEncryptionProvider;
|
||||
property Path read ReadPath;
|
||||
property Permission read ReadPermission;
|
||||
property PrintFormsData read ReadPrintFormsData write WritePrintFormsData;
|
||||
property PrintPostScriptOverText read ReadPrintPostScriptOverText write WritePrintPostScriptOverText;
|
||||
property PrintRevisions read ReadPrintRevisions write WritePrintRevisions;
|
||||
property ProtectionType read ReadProtectionType;
|
||||
property ReadabilityStatistics read ReadReadabilityStatistics;
|
||||
property ReadingLayoutSizeX read ReadReadingLayoutSizeX write WriteReadingLayoutSizeX;
|
||||
property ReadingLayoutSizeY read ReadReadingLayoutSizeY write WriteReadingLayoutSizeY;
|
||||
property ReadingModeLayoutFrozen read ReadReadingModeLayoutFrozen write WriteReadingModeLayoutFrozen;
|
||||
property ReadOnly read ReadReadOnly;
|
||||
property ReadOnlyRecommended read ReadReadOnlyRecommended write WriteReadOnlyRecommended;
|
||||
property RemoveDateAndTime read ReadRemoveDateAndTime write WriteRemoveDateAndTime;
|
||||
property RemovePersonalInformation read ReadRemovePersonalInformation write WriteRemovePersonalInformation;
|
||||
property Research read ReadResearch;
|
||||
property RevisedTSDocxDocumentTitle read ReadRevisedTSDocxDocumentTitle;
|
||||
property Revisions read ReadRevisions;
|
||||
property Saved read ReadSaved write WriteSaved;
|
||||
property SaveEncoding read ReadSaveEncoding write WriteSaveEncoding;
|
||||
property SaveFormat read ReadSaveFormat;
|
||||
property SaveFormsData read ReadSaveFormsData write WriteSaveFormsData;
|
||||
property SaveSubsetFonts read ReadSaveSubsetFonts write WriteSaveSubsetFonts;
|
||||
property Scripts read ReadScripts;
|
||||
property Sections read ReadSections;
|
||||
property SensitivityLabel read ReadSensitivityLabel;
|
||||
property Sentences read ReadSentences;
|
||||
property ServerPolicy read ReadServerPolicy;
|
||||
property Shapes read ReadShapes;
|
||||
property ShowGrammaticalErrors read ReadShowGrammaticalErrors write WriteShowGrammaticalErrors;
|
||||
property ShowSpellingErrors read ReadShowSpellingErrors write WriteShowSpellingErrors;
|
||||
property Signatures read ReadSignatures;
|
||||
property SmartTSDocxDocument read ReadSmartTSDocxDocument;
|
||||
property SnapToGrid read ReadSnapToGrid write WriteSnapToGrid;
|
||||
property SnapToShapes read ReadSnapToShapes write WriteSnapToShapes;
|
||||
property SpellingChecked read ReadSpellingChecked write WriteSpellingChecked;
|
||||
property SpellingErrors read ReadSpellingErrors;
|
||||
property StoryRanges read ReadStoryRanges;
|
||||
property Styles read ReadStyles;
|
||||
property StyleSheets read ReadStyleSheets;
|
||||
property StyleSortMethod read ReadStyleSortMethod write WriteStyleSortMethod;
|
||||
property Subdocuments read ReadSubdocuments;
|
||||
property Tables read ReadTables;
|
||||
property TablesOfAuthorities read ReadTablesOfAuthorities write WriteTablesOfAuthorities;
|
||||
property TablesOfAuthoritiesCategories read ReadTablesOfAuthoritiesCategories write WriteTablesOfAuthoritiesCategories;
|
||||
property TablesOfContents read ReadTablesOfContents write WriteTablesOfContents;
|
||||
property TablesOfFigures read ReadTablesOfFigures write WriteTablesOfFigures;
|
||||
property TextEncoding read ReadTextEncoding write WriteTextEncoding;
|
||||
property TextLineEnding read ReadTextLineEnding write WriteTextLineEnding;
|
||||
property TrackFormatting read ReadTrackFormatting write WriteTrackFormatting;
|
||||
property TrackMoves read ReadTrackMoves write WriteTrackMoves;
|
||||
property TrackRevisions read ReadTrackRevisions write WriteTrackRevisions;
|
||||
property Type read ReadType;
|
||||
property UpdateStylesOnOpen read ReadUpdateStylesOnOpen write WriteUpdateStylesOnOpen;
|
||||
property UseMathDefaults read ReadUseMathDefaults write WriteUseMathDefaults;
|
||||
property UserControl read ReadUserControl write WriteUserControl;
|
||||
property Variables read ReadVariables;
|
||||
property VBASigned read ReadVBASigned;
|
||||
property VBProject read ReadVBProject;
|
||||
property WebOptions read ReadWebOptions;
|
||||
property Windows read ReadWindows;
|
||||
property WordOpenXML read ReadWordOpenXML;
|
||||
property Words read ReadWords;
|
||||
property WritePassword write WriteWritePassword;
|
||||
property WriteReserved read ReadWriteReserved;
|
||||
property XMLSaveThroughXSLT read ReadXMLSaveThroughXSLT write WriteXMLSaveThroughXSLT;
|
||||
property XMLSchemaReferences read ReadXMLSchemaReferences;
|
||||
property XMLShowAdvancedErrors read ReadXMLShowAdvancedErrors write WriteXMLShowAdvancedErrors;
|
||||
property XMLUseXSLTWhenSaving read ReadXMLUseXSLTWhenSaving write WriteXMLUseXSLTWhenSaving;
|
||||
Function WriteXMLUseXSLTWhenSaving();
|
||||
Function ReadXMLUseXSLTWhenSaving();
|
||||
Function WriteXMLShowAdvancedErrors();
|
||||
Function ReadXMLShowAdvancedErrors();
|
||||
Function ReadXMLSchemaReferences();
|
||||
Function WriteXMLSaveThroughXSLT();
|
||||
Function ReadXMLSaveThroughXSLT();
|
||||
Function ReadWriteReserved();
|
||||
Function WriteWritePassword();
|
||||
Function ReadWords();
|
||||
Function ReadWordOpenXML();
|
||||
Function ReadWindows();
|
||||
Function ReadWebOptions();
|
||||
Function ReadVBProject();
|
||||
Function ReadVBASigned();
|
||||
Function ReadVariables();
|
||||
Function WriteUserControl();
|
||||
Function ReadUserControl();
|
||||
Function WriteUseMathDefaults();
|
||||
Function ReadUseMathDefaults();
|
||||
Function WriteUpdateStylesOnOpen();
|
||||
Function ReadUpdateStylesOnOpen();
|
||||
Function ReadType();
|
||||
Function WriteTrackRevisions();
|
||||
Function ReadTrackRevisions();
|
||||
Function WriteTrackMoves();
|
||||
Function ReadTrackMoves();
|
||||
Function WriteTrackFormatting();
|
||||
Function ReadTrackFormatting();
|
||||
Function WriteTextLineEnding();
|
||||
Function ReadTextLineEnding();
|
||||
Function WriteTextEncoding();
|
||||
Function ReadTextEncoding();
|
||||
Function WriteTablesOfFigures();
|
||||
Function ReadTablesOfFigures();
|
||||
Function WriteTablesOfContents();
|
||||
Function ReadTablesOfContents();
|
||||
Function WriteTablesOfAuthoritiesCategories();
|
||||
Function ReadTablesOfAuthoritiesCategories();
|
||||
Function WriteTablesOfAuthorities();
|
||||
Function ReadTablesOfAuthorities();
|
||||
Function ReadTables(index);
|
||||
Function ReadSubdocuments();
|
||||
Function WriteStyleSortMethod();
|
||||
Function ReadStyleSortMethod();
|
||||
Function ReadStyleSheets();
|
||||
Function ReadStyles();
|
||||
Function ReadStoryRanges();
|
||||
Function ReadSpellingErrors();
|
||||
Function WriteSpellingChecked();
|
||||
Function ReadSpellingChecked();
|
||||
Function WriteSnapToShapes();
|
||||
Function ReadSnapToShapes();
|
||||
Function WriteSnapToGrid();
|
||||
Function ReadSnapToGrid();
|
||||
Function ReadSmartTSDocxDocument();
|
||||
Function ReadSignatures();
|
||||
Function WriteShowSpellingErrors();
|
||||
Function ReadShowSpellingErrors();
|
||||
Function WriteShowGrammaticalErrors();
|
||||
Function ReadShowGrammaticalErrors();
|
||||
Function ReadShapes();
|
||||
Function ReadServerPolicy();
|
||||
Function ReadSentences();
|
||||
Function ReadSensitivityLabel();
|
||||
Function ReadSections();
|
||||
Function ReadScripts();
|
||||
Function WriteSaveSubsetFonts();
|
||||
Function ReadSaveSubsetFonts();
|
||||
Function WriteSaveFormsData();
|
||||
Function ReadSaveFormsData();
|
||||
Function ReadSaveFormat();
|
||||
Function WriteSaveEncoding();
|
||||
Function ReadSaveEncoding();
|
||||
Function WriteSaved();
|
||||
Function ReadSaved();
|
||||
Function ReadRevisions();
|
||||
Function ReadRevisedTSDocxDocumentTitle();
|
||||
Function ReadResearch();
|
||||
Function WriteRemovePersonalInformation();
|
||||
Function ReadRemovePersonalInformation();
|
||||
Function WriteRemoveDateAndTime();
|
||||
Function ReadRemoveDateAndTime();
|
||||
Function WriteReadOnlyRecommended();
|
||||
Function ReadReadOnlyRecommended();
|
||||
Function ReadReadOnly();
|
||||
Function WriteReadingModeLayoutFrozen();
|
||||
Function ReadReadingModeLayoutFrozen();
|
||||
Function WriteReadingLayoutSizeY();
|
||||
Function ReadReadingLayoutSizeY();
|
||||
Function WriteReadingLayoutSizeX();
|
||||
Function ReadReadingLayoutSizeX();
|
||||
Function ReadReadabilityStatistics();
|
||||
Function ReadProtectionType();
|
||||
Function WritePrintRevisions();
|
||||
Function ReadPrintRevisions();
|
||||
Function WritePrintPostScriptOverText();
|
||||
Function ReadPrintPostScriptOverText();
|
||||
Function WritePrintFormsData();
|
||||
Function ReadPrintFormsData();
|
||||
Function ReadPermission();
|
||||
Function ReadPath();
|
||||
Function ReadPasswordEncryptionProvider();
|
||||
Function ReadPasswordEncryptionKeyLength();
|
||||
Function ReadPasswordEncryptionFileProperties();
|
||||
Function ReadPasswordEncryptionAlgorithm();
|
||||
Function WritePassword(password);
|
||||
Function ReadParent();
|
||||
Function ReadParagraphs();
|
||||
Function ReadPageSetup();
|
||||
Function ReadOriginalTSDocxDocumentTitle();
|
||||
Function WriteOptimizeForWord97();
|
||||
Function ReadOptimizeForWord97();
|
||||
Function ReadOpenEncoding();
|
||||
Function WriteOMathWrap();
|
||||
Function ReadOMathWrap();
|
||||
Function WriteOMathSmallFrac();
|
||||
Function ReadOMathSmallFrac();
|
||||
Function ReadOMaths();
|
||||
Function WriteOMathRightMargin();
|
||||
Function ReadOMathRightMargin();
|
||||
Function WriteOMathNarySupSubLim();
|
||||
Function ReadOMathNarySupSubLim();
|
||||
Function WriteOMathLeftMargin();
|
||||
Function ReadOMathLeftMargin();
|
||||
Function WriteOMathJc();
|
||||
Function ReadOMathJc();
|
||||
Function WriteOMathIntSubSupLim();
|
||||
Function ReadOMathIntSubSupLim();
|
||||
Function WriteOMathFontName();
|
||||
Function ReadOMathFontName();
|
||||
Function WriteOMathBreakSub();
|
||||
Function ReadOMathBreakSub();
|
||||
Function WriteOMathBreakBin();
|
||||
Function ReadOMathBreakBin();
|
||||
Function WriteNoLineBreakBefore();
|
||||
Function ReadNoLineBreakBefore();
|
||||
Function WriteNoLineBreakAfter();
|
||||
Function ReadNoLineBreakAfter();
|
||||
Function ReadName();
|
||||
Function ReadMailEnvelope();
|
||||
Function ReadMailMerge();
|
||||
Function WriteLockTheme();
|
||||
Function ReadLockTheme();
|
||||
Function WriteLockQuickStyleSet();
|
||||
Function ReadLockQuickStyleSet();
|
||||
Function ReadListTemplates();
|
||||
Function ReadLists();
|
||||
Function ReadListParagraphs();
|
||||
Function WriteLanguageDetected();
|
||||
Function ReadLanguageDetected();
|
||||
Function WriteKind();
|
||||
Function ReadKind();
|
||||
Function WriteKerningByAlgorithm();
|
||||
Function ReadKerningByAlgorithm();
|
||||
Function WriteJustificationMode();
|
||||
Function ReadJustificationMode();
|
||||
Function ReadIsSubdocument();
|
||||
Function ReadIsMasterTSDocxDocument();
|
||||
Function ReadIsInAutosave();
|
||||
Function ReadInlineShapes();
|
||||
Function ReadIndexes();
|
||||
Function WriteHyphenationZone();
|
||||
Function ReadHyphenationZone();
|
||||
Function WriteHyphenateCaps();
|
||||
Function ReadHyphenateCaps();
|
||||
Function ReadHyperlinks();
|
||||
Function ReadHTMLDivisions();
|
||||
Function ReadHasVBProject();
|
||||
Function ReadHasPassword();
|
||||
Function WriteGridSpaceBetweenVerticalLines();
|
||||
Function ReadGridSpaceBetweenVerticalLines();
|
||||
Function WriteGridSpaceBetweenHorizontalLinesroperty();
|
||||
Function ReadGridSpaceBetweenHorizontalLinesroperty();
|
||||
Function WriteGridOriginVertical();
|
||||
Function ReadGridOriginVertical();
|
||||
Function WriteGridOriginHorizontal();
|
||||
Function ReadGridOriginHorizontal();
|
||||
Function WriteGridOriginFromMargin();
|
||||
Function ReadGridOriginFromMargin();
|
||||
Function WriteGridDistanceVertical();
|
||||
Function ReadGridDistanceVertical();
|
||||
Function WriteGridDistanceHorizontal();
|
||||
Function ReadGridDistanceHorizontal();
|
||||
Function ReadGrammaticalErrors();
|
||||
Function ReadGrammarChecked();
|
||||
Function ReadFullName();
|
||||
Function ReadFrameset();
|
||||
Function ReadFrames();
|
||||
Function ReadFormsDesign();
|
||||
Function ReadFormFields();
|
||||
Function WriteFormattingShowUserStyleName();
|
||||
Function ReadFormattingShowUserStyleName();
|
||||
Function WriteFormattingShowParagraph();
|
||||
Function ReadFormattingShowParagraph();
|
||||
Function WriteFormattingShowNumbering();
|
||||
Function ReadFormattingShowNumbering();
|
||||
Function WriteFormattingShowNextLevel();
|
||||
Function ReadFormattingShowNextLevel();
|
||||
Function WriteFormattingShowFont();
|
||||
Function ReadFormattingShowFont();
|
||||
Function WriteFormattingShowFilter();
|
||||
Function ReadFormattingShowFilter();
|
||||
Function WriteFormattingShowClear();
|
||||
Function ReadFormattingShowClear();
|
||||
Function ReadFootnotes();
|
||||
Function WriteFinal();
|
||||
Function ReadFinal();
|
||||
Function ReadFields();
|
||||
Function WriteFarEastLineBreakLevel();
|
||||
Function ReadFarEastLineBreakLevel();
|
||||
Function WriteFarEastLineBreakLanguage();
|
||||
Function ReadFarEastLineBreakLanguage();
|
||||
Function ReadEnvelope();
|
||||
Function WriteEnforceStyle();
|
||||
Function ReadEnforceStyle();
|
||||
Function ReadEndnotes();
|
||||
Function WriteEncryptionProvider();
|
||||
Function ReadEncryptionProvider();
|
||||
Function WriteEmbedTrueTypeFonts();
|
||||
Function ReadEmbedTrueTypeFonts();
|
||||
Function WriteEmbedLinguisticData();
|
||||
Function ReadEmbedLinguisticData();
|
||||
Function ReadEmail();
|
||||
Function WriteDoNotEmbedSystemFonts();
|
||||
Function ReadDoNotEmbedSystemFonts();
|
||||
Function ReadTSDocxDocumentTheme();
|
||||
Function ReadTSDocxDocumentLibraryVersions();
|
||||
Function ReadTSDocxDocumentInspectors();
|
||||
Function WriteDisableFeaturesIntroducedAfter();
|
||||
Function ReadDisableFeaturesIntroducedAfter();
|
||||
Function WriteDisableFeatures();
|
||||
Function ReadDisableFeatures();
|
||||
Function WriteDefaultTargetFrame();
|
||||
Function ReadDefaultTargetFrame();
|
||||
Function WriteDefaultTabStop();
|
||||
Function ReadDefaultTabStop();
|
||||
Function ReadDefaultTableStyle();
|
||||
Function ReadCustomXMLParts();
|
||||
Function ReadCustomTSDocxDocumentProperties();
|
||||
Function ReadCurrentRsid();
|
||||
Function ReadCreator();
|
||||
Function ReadContentTypeProperties();
|
||||
Function ReadContentControls();
|
||||
Function ReadContent();
|
||||
Function ReadContainer();
|
||||
Function WriteConsecutiveHyphensLimit();
|
||||
Function ReadConsecutiveHyphensLimit();
|
||||
Function WriteCompatibilityMode();
|
||||
Function ReadCompatibilityMode();
|
||||
Function WriteCompatibility();
|
||||
Function ReadCompatibility();
|
||||
Function ReadComments();
|
||||
Function ReadCommandBars();
|
||||
Function ReadCodeName();
|
||||
Function ReadCoAuthoring();
|
||||
Function WriteClickAndTypeParagraphStyle();
|
||||
Function ReadClickAndTypeParagraphStyle();
|
||||
Function WriteChartDataPointTrack();
|
||||
Function ReadChartDataPointTrack();
|
||||
Function ReadCharacters();
|
||||
Function ReadBuiltInTSDocxDocumentProperties();
|
||||
Function ReadBroadcast();
|
||||
Function ReadBookmarks();
|
||||
Function ReadBibliography();
|
||||
Function ReadBackground();
|
||||
Function WriteAutoSaveOn();
|
||||
Function ReadAutoSaveOn();
|
||||
Function WriteAutoHyphenation();
|
||||
Function ReadAutoHyphenation();
|
||||
Function WriteAutoFormatOverride();
|
||||
Function ReadAutoFormatOverride();
|
||||
Function WriteAttachedTemplate();
|
||||
Function ReadAttachedTemplate();
|
||||
Function ReadApplication();
|
||||
Function WriteActiveWritingStyle();
|
||||
Function ReadActiveWritingStyle();
|
||||
Function ReadActiveWindow();
|
||||
Function ReadActiveThemeDisplayName();
|
||||
Function ReadActiveTheme();
|
||||
|
||||
private
|
||||
tables_;
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxDocument.Create(application, docx, name, fullname);
|
||||
Begin
|
||||
application_ := application;
|
||||
docx_ := docx;
|
||||
file_name_ := name;
|
||||
full_name_ := fullname;
|
||||
collection_ := class(Collection).GetInstance('document');
|
||||
Init();
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.Init();
|
||||
Begin
|
||||
tables_ := new TSDocxTables(application_, docx_);
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxDocument.Activate();
|
||||
Begin
|
||||
collection_.SetActivation(file_name_);
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.Close(SaveChanges, OriginalFormat, RouteTSDocxDocument)
|
||||
Begin
|
||||
[err, msg] := docx_.Save();
|
||||
if not err then collection_.RemoveCollection(file_name_);
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.Save();
|
||||
Begin
|
||||
docx_.Save();
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.SaveAs2(FileName, FileFormat, LockComments, Password, AddToRecentFiles, WritePassword,
|
||||
ReadOnlyRecommended, EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
|
||||
SaveAsAOCELetter, Encoding, InsertLineBreaks, AllowSubstitutions, LineEnding,
|
||||
AddBiDiMarks, CompatibilityMode);
|
||||
Begin
|
||||
docx_.SetPassword(Password);
|
||||
docx_.SaveAs("", FileName);
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxDocument.ReadFullName();
|
||||
Begin
|
||||
return full_name_;
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.ReadName();
|
||||
Begin
|
||||
return file_name_;
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.WritePassword(passwd);
|
||||
Begin
|
||||
docx_.SetPassword(passwd);
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.ReadPath();
|
||||
Begin
|
||||
return ExtractFileDir(full_name_);
|
||||
End;
|
||||
|
||||
Function TSDocxDocument.ReadTables(index);
|
||||
Begin
|
||||
if ifnil(index) then return tables_;
|
||||
return tables_[index];
|
||||
End;
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
Type TSDocxDocuments = Class(TSVbaBase)
|
||||
|
||||
public
|
||||
Function Create(app, par, cre);
|
||||
Function Operator[](index);
|
||||
Function GetActivation();
|
||||
|
||||
private
|
||||
Function AddDocument(xlsx, name); // Completed
|
||||
|
||||
private
|
||||
collection_;
|
||||
|
||||
public
|
||||
Function Add(Template, NewTemplate, DocumentType, Visible); // Completed
|
||||
Function AddBlogDocument(ProviderID, PostURL, BlogName, PostID);
|
||||
Function CanCheckOut(FileName);
|
||||
Function CheckOut(FileName);
|
||||
Function Close(SaveChanges, OriginalFormat, RouteDocument);
|
||||
Function Item(Index); // Completed
|
||||
Function Open(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument,
|
||||
PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format,
|
||||
Encoding, Visible, OpenConflictDocument, OpenAndRepair, DocumentDirection, NoEncodingDialog); // Completed
|
||||
Function OpenNoRepairDialog(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles,
|
||||
PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument,
|
||||
WritePasswordTemplate, Format, Encoding, Visible, OpenAndRepair,
|
||||
DocumentDirection, NoEncodingDialog, XMLTransform);
|
||||
Function Save(NoPrompt, OriginalFormat); // Completed
|
||||
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
Function ReadCount(); // Completed
|
||||
Function ReadCreator();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxDocuments.Create(app, par, cre);
|
||||
Begin
|
||||
Class(TSVbaBase).Create(app, par, cre);
|
||||
collection_ := class(Collection).GetInstance('document');
|
||||
End;
|
||||
|
||||
Function TSDocxDocuments.AddDocument(docx, fullname);
|
||||
Begin
|
||||
name := ExtractFileName(fullname);
|
||||
collection_.AddCollection(new TSDocxDocument(application_, docx, name, fullname), name);
|
||||
End;
|
||||
|
||||
Function Operator TSDocxDocuments.[](index);
|
||||
Begin
|
||||
return collection_[index];
|
||||
End;
|
||||
|
||||
Function TSDocxDocuments.GetActivation();
|
||||
Begin
|
||||
return collection_.GetActivation();
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxDocuments.Add(Template, NewTemplate, DocumentType, Visible);
|
||||
Begin
|
||||
docx := new TSDocxFile();
|
||||
docx.NewFile();
|
||||
AddDocument(docx, collection_.CalNewName("文档"));
|
||||
End;
|
||||
|
||||
Function TSDocxDocuments.Item(index);
|
||||
Begin
|
||||
return self[index];
|
||||
End;
|
||||
|
||||
Function TSDocxDocuments.Open(FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument,
|
||||
PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Format,
|
||||
Encoding, Visible, OpenConflictDocument, OpenAndRepair, DocumentDirection, NoEncodingDialog);
|
||||
Begin
|
||||
docx := new TSDocxFile();
|
||||
[err, msg] := docx.OpenFile("", FileName, PasswordDocument);
|
||||
if err then return;
|
||||
AddDocument(docx, docx.FileName());
|
||||
End;
|
||||
|
||||
Function TSDocxDocuments.Save(NoPrompt, OriginalFormat);
|
||||
Begin
|
||||
num := self.Count;
|
||||
for i:=1 to num do
|
||||
self[i].Save();
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxDocuments.ReadCount();
|
||||
Begin
|
||||
return collection_.GetCount();
|
||||
End;
|
||||
|
||||
|
|
@ -0,0 +1,459 @@
|
|||
Type TSDocxEnumerations = Class
|
||||
|
||||
// WdSaveOptions enumeration
|
||||
Class Function wdDoNotSaveChanges();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdPromptToSaveChanges();
|
||||
Begin
|
||||
return -2;
|
||||
End;
|
||||
Class Function wdSaveChanges();
|
||||
Begin
|
||||
return -1;
|
||||
End;
|
||||
|
||||
// WdAutoFitBehavior enumeration
|
||||
Class Function wdAutoFitContent();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdAutoFitFixed();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdAutoFitWindow();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
|
||||
// WdDeleteCells enumeration
|
||||
Class Function wdDeleteCellsEntireColumn();
|
||||
Begin
|
||||
return 3;
|
||||
End;
|
||||
Class Function wdDeleteCellsEntireRow();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
Class Function wdDeleteCellsShiftLeft();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdDeleteCellsShiftUp();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
|
||||
// WdCellVerticalAlignment
|
||||
Class Function wdCellAlignVerticalBottom();
|
||||
Begin
|
||||
return 3;
|
||||
End;
|
||||
Class Function wdCellAlignVerticalCenter();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdCellAlignVerticalTop();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
|
||||
// WdTextureIndex
|
||||
Class Function wdTexture10Percent();
|
||||
Begin
|
||||
return 100;
|
||||
End;
|
||||
Class Function wdTexture12Pt5Percent();
|
||||
Begin
|
||||
return 125;
|
||||
End;
|
||||
Class Function wdTexture15Percent();
|
||||
Begin
|
||||
return 150;
|
||||
End;
|
||||
Class Function wdTexture17Pt5Percent();
|
||||
Begin
|
||||
return 175;
|
||||
End;
|
||||
Class Function wdTexture20Percent();
|
||||
Begin
|
||||
return 200;
|
||||
End;
|
||||
Class Function wdTexture22Pt5Percent();
|
||||
Begin
|
||||
return 225;
|
||||
End;
|
||||
Class Function wdTexture25Percent();
|
||||
Begin
|
||||
return 250;
|
||||
End;
|
||||
Class Function wdTexture27Pt5Percent();
|
||||
Begin
|
||||
return 275;
|
||||
End;
|
||||
Class Function wdTexture2Pt5Percent();
|
||||
Begin
|
||||
return 25;
|
||||
End;
|
||||
Class Function wdTexture30Percent();
|
||||
Begin
|
||||
return 300;
|
||||
End;
|
||||
Class Function wdTexture32Pt5Percent();
|
||||
Begin
|
||||
return 325;
|
||||
End;
|
||||
Class Function wdTexture35Percent();
|
||||
Begin
|
||||
return 350;
|
||||
End;
|
||||
Class Function wdTexture37Pt5Percent();
|
||||
Begin
|
||||
return 375;
|
||||
End;
|
||||
Class Function wdTexture40Percent();
|
||||
Begin
|
||||
return 400;
|
||||
End;
|
||||
Class Function wdTexture42Pt5Percent();
|
||||
Begin
|
||||
return 425;
|
||||
End;
|
||||
Class Function wdTexture45Percent();
|
||||
Begin
|
||||
return 450;
|
||||
End;
|
||||
Class Function wdTexture47Pt5Percent();
|
||||
Begin
|
||||
return 475;
|
||||
End;
|
||||
Class Function wdTexture50Percent();
|
||||
Begin
|
||||
return 500;
|
||||
End;
|
||||
Class Function wdTexture52Pt5Percent();
|
||||
Begin
|
||||
return 525;
|
||||
End;
|
||||
Class Function wdTexture55Percent();
|
||||
Begin
|
||||
return 550;
|
||||
End;
|
||||
Class Function wdTexture57Pt5Percent();
|
||||
Begin
|
||||
return 575;
|
||||
End;
|
||||
Class Function wdTexture5Percent();
|
||||
Begin
|
||||
return 50;
|
||||
End;
|
||||
Class Function wdTexture60Percent();
|
||||
Begin
|
||||
return 600;
|
||||
End;
|
||||
Class Function wdTexture62Pt5Percent();
|
||||
Begin
|
||||
return 625;
|
||||
End;
|
||||
Class Function wdTexture65Percent();
|
||||
Begin
|
||||
return 650;
|
||||
End;
|
||||
Class Function wdTexture67Pt5Percent();
|
||||
Begin
|
||||
return 675;
|
||||
End;
|
||||
Class Function wdTexture70Percent();
|
||||
Begin
|
||||
return 700;
|
||||
End;
|
||||
Class Function wdTexture72Pt5Percent();
|
||||
Begin
|
||||
return 725;
|
||||
End;
|
||||
Class Function wdTexture75Percent();
|
||||
Begin
|
||||
return 750;
|
||||
End;
|
||||
Class Function wdTexture77Pt5Percent();
|
||||
Begin
|
||||
return 775;
|
||||
End;
|
||||
Class Function wdTexture7Pt5Percent();
|
||||
Begin
|
||||
return 75;
|
||||
End;
|
||||
Class Function wdTexture80Percent();
|
||||
Begin
|
||||
return 800;
|
||||
End;
|
||||
Class Function wdTexture82Pt5Percent();
|
||||
Begin
|
||||
return 825;
|
||||
End;
|
||||
Class Function wdTexture85Percent();
|
||||
Begin
|
||||
return 850;
|
||||
End;
|
||||
Class Function wdTexture87Pt5Percent();
|
||||
Begin
|
||||
return 875;
|
||||
End;
|
||||
Class Function wdTexture90Percent();
|
||||
Begin
|
||||
return 900;
|
||||
End;
|
||||
Class Function wdTexture92Pt5Percent();
|
||||
Begin
|
||||
return 925;
|
||||
End;
|
||||
Class Function wdTexture95Percent();
|
||||
Begin
|
||||
return 950;
|
||||
End;
|
||||
Class Function wdTexture97Pt5Percent();
|
||||
Begin
|
||||
return 975;
|
||||
End;
|
||||
Class Function wdTextureCross();
|
||||
Begin
|
||||
return -11;
|
||||
End;
|
||||
Class Function wdTextureDarkCross();
|
||||
Begin
|
||||
return -5;
|
||||
End;
|
||||
Class Function wdTextureDarkDiagonalCross();
|
||||
Begin
|
||||
return -6;
|
||||
End;
|
||||
Class Function wdTextureDarkDiagonalDown();
|
||||
Begin
|
||||
return -3;
|
||||
End;
|
||||
Class Function wdTextureDarkDiagonalUp();
|
||||
Begin
|
||||
return -4;
|
||||
End;
|
||||
Class Function wdTextureDarkHorizontal();
|
||||
Begin
|
||||
return -1;
|
||||
End;
|
||||
Class Function wdTextureDarkVertical();
|
||||
Begin
|
||||
return -2;
|
||||
End;
|
||||
Class Function wdTextureDiagonalCross();
|
||||
Begin
|
||||
return -12;
|
||||
End;
|
||||
Class Function wdTextureDiagonalDown();
|
||||
Begin
|
||||
return -9;
|
||||
End;
|
||||
Class Function wdTextureDiagonalUp();
|
||||
Begin
|
||||
return -10;
|
||||
End;
|
||||
Class Function wdTextureHorizontal();
|
||||
Begin
|
||||
return -7;
|
||||
End;
|
||||
Class Function wdTextureNone();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdTextureSolid();
|
||||
Begin
|
||||
return 1000;
|
||||
End;
|
||||
Class Function wdTextureVertical();
|
||||
Begin
|
||||
return -8;
|
||||
End;
|
||||
|
||||
// WdRowHeightRule
|
||||
Class Function wdRowHeightAtLeast();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdRowHeightAuto();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdRowHeightExactly();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
|
||||
// WdBorderType
|
||||
Class Function wdBorderBottom();
|
||||
Begin
|
||||
return -3;
|
||||
End;
|
||||
Class Function wdBorderDiagonalDown();
|
||||
Begin
|
||||
return -7;
|
||||
End;
|
||||
Class Function wdBorderDiagonalUp();
|
||||
Begin
|
||||
return -8;
|
||||
End;
|
||||
Class Function wdBorderHorizontal();
|
||||
Begin
|
||||
return -5;
|
||||
End;
|
||||
Class Function wdBorderLeft();
|
||||
Begin
|
||||
return -2;
|
||||
End;
|
||||
Class Function wdBorderRight();
|
||||
Begin
|
||||
return -4;
|
||||
End;
|
||||
Class Function wdBorderTop();
|
||||
Begin
|
||||
return -1;
|
||||
End;
|
||||
Class Function wdBorderVertical();
|
||||
Begin
|
||||
return -6;
|
||||
End;
|
||||
|
||||
// WdLineStyle
|
||||
Class Function wdLineStyleDashDot();
|
||||
Begin
|
||||
return 5;
|
||||
End;
|
||||
Class Function wdLineStyleDashDotDot();
|
||||
Begin
|
||||
return 6;
|
||||
End;
|
||||
Class Function wdLineStyleDashDotStroked();
|
||||
Begin
|
||||
return 20;
|
||||
End;
|
||||
Class Function wdLineStyleDashLargeGap();
|
||||
Begin
|
||||
return 4;
|
||||
End;
|
||||
Class Function wdLineStyleDashSmallGap();
|
||||
Begin
|
||||
return 3;
|
||||
End;
|
||||
Class Function wdLineStyleDot();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
Class Function wdLineStyleDouble();
|
||||
Begin
|
||||
return 7;
|
||||
End;
|
||||
Class Function wdLineStyleDoubleWavy();
|
||||
Begin
|
||||
return 19;
|
||||
End;
|
||||
Class Function wdLineStyleEmboss3D();
|
||||
Begin
|
||||
return 21;
|
||||
End;
|
||||
Class Function wdLineStyleEngrave3D();
|
||||
Begin
|
||||
return 22;
|
||||
End;
|
||||
Class Function wdLineStyleInset();
|
||||
Begin
|
||||
return 24;
|
||||
End;
|
||||
Class Function wdLineStyleNone();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdLineStyleOutset();
|
||||
Begin
|
||||
return 23;
|
||||
End;
|
||||
Class Function wdLineStyleSingle();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdLineStyleSingleWavy();
|
||||
Begin
|
||||
return 18;
|
||||
End;
|
||||
Class Function wdLineStyleThickThinLargeGap();
|
||||
Begin
|
||||
return 16;
|
||||
End;
|
||||
Class Function wdLineStyleThickThinMedGap();
|
||||
Begin
|
||||
return 13;
|
||||
End;
|
||||
Class Function wdLineStyleThickThinSmallGap();
|
||||
Begin
|
||||
return 10;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickLargeGap();
|
||||
Begin
|
||||
return 15;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickMedGap();
|
||||
Begin
|
||||
return 12;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickSmallGap();
|
||||
Begin
|
||||
return 9;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickThinLargeGap();
|
||||
Begin
|
||||
return 17;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickThinMedGap();
|
||||
Begin
|
||||
return 14;
|
||||
End;
|
||||
Class Function wdLineStyleThinThickThinSmallGap();
|
||||
Begin
|
||||
return 11;
|
||||
End;
|
||||
Class Function wdLineStyleTriple();
|
||||
Begin
|
||||
return 8;
|
||||
End;
|
||||
|
||||
// WdRulerStyle
|
||||
Class Function wdAdjustFirstColumn();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
Class Function wdAdjustNone();
|
||||
Begin
|
||||
return 0;
|
||||
End;
|
||||
Class Function wdAdjustProportional();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdAdjustSameWidth();
|
||||
Begin
|
||||
return 3;
|
||||
End;
|
||||
|
||||
// WdPreferredWidthType
|
||||
Class Function wdPreferredWidthAuto();
|
||||
Begin
|
||||
return 1;
|
||||
End;
|
||||
Class Function wdPreferredWidthPercent();
|
||||
Begin
|
||||
return 2;
|
||||
End;
|
||||
Class Function wdPreferredWidthPoints();
|
||||
Begin
|
||||
return 3;
|
||||
End;
|
||||
|
||||
End;
|
||||
|
|
@ -0,0 +1,108 @@
|
|||
Type TSDocxRow = Class
|
||||
|
||||
public
|
||||
Function Create(application, table, row);
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
row_;
|
||||
|
||||
public
|
||||
Function ConvertToText(Separator, NestedTables);
|
||||
Function Delete();
|
||||
Function Select();
|
||||
Function SetHeight(RowHeight, HeightRule);
|
||||
Function SetLeftIndent(LeftIndent, RulerStyle);
|
||||
|
||||
property Alignment read ReadAlignment write WriteAlignment;
|
||||
property AllowBreakAcrossPages read ReadAllowBreakAcrossPages write WriteAllowBreakAcrossPages;
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property Cells read ReadCells;
|
||||
property Creator read ReadCreator;
|
||||
property HeadingFormat read ReadHeadingFormat write WriteHeadingFormat;
|
||||
property Height read ReadHeight write WriteHeight;
|
||||
property HeightRule read ReadHeightRule write WriteHeightRule;
|
||||
property ID read ReadID write WriteID;
|
||||
property Index read ReadIndex;
|
||||
property IsFirst read ReadIsFirst;
|
||||
property IsLast read ReadIsLast;
|
||||
property LeftIndent read ReadLeftIndent write WriteLeftIndent;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Next read ReadNext;
|
||||
property Parent read ReadParent;
|
||||
property Previous read ReadPrevious;
|
||||
property Range read ReadRange;
|
||||
property Shading read ReadShading;
|
||||
property SpaceBetweenColumns read ReadSpaceBetweenColumns write WriteSpaceBetweenColumns;
|
||||
Function WriteSpaceBetweenColumns();
|
||||
Function ReadSpaceBetweenColumns();
|
||||
Function ReadShading();
|
||||
Function ReadRange();
|
||||
Function ReadPrevious();
|
||||
Function ReadParent();
|
||||
Function ReadNext();
|
||||
Function ReadNestingLevel();
|
||||
Function WriteLeftIndent();
|
||||
Function ReadLeftIndent();
|
||||
Function ReadIsLast();
|
||||
Function ReadIsFirst();
|
||||
Function ReadIndex();
|
||||
Function WriteID();
|
||||
Function ReadID();
|
||||
Function WriteHeightRule();
|
||||
Function ReadHeightRule();
|
||||
Function WriteHeight();
|
||||
Function ReadHeight();
|
||||
Function WriteHeadingFormat();
|
||||
Function ReadHeadingFormat();
|
||||
Function ReadCreator();
|
||||
Function ReadCells();
|
||||
Function ReadBorders();
|
||||
Function ReadApplication();
|
||||
Function WriteAllowBreakAcrossPages();
|
||||
Function ReadAllowBreakAcrossPages();
|
||||
Function WriteAlignment();
|
||||
Function ReadAlignment();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxRow.Create(application, table, row);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
row_ := row;
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxRow.Delete();
|
||||
Begin
|
||||
table_.DeleteCell(row_, nil);
|
||||
End;
|
||||
|
||||
Function TSDocxRow.Select();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function TSDocxRow.SetHeight(RowHeight, HeightRule);
|
||||
Begin
|
||||
case HeightRule of
|
||||
class(TSDocxEnumerations).wdRowHeightAtLeast:
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdRowHeightAuto:
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdRowHeightExactly:
|
||||
begin
|
||||
end
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxRow.SetLeftIndent(LeftIndent, RulerStyle);
|
||||
Begin
|
||||
End;
|
||||
|
|
@ -0,0 +1,160 @@
|
|||
Type TSDocxRows = Class
|
||||
|
||||
public
|
||||
Function Create(application, table);
|
||||
Function Operator[](index);
|
||||
|
||||
private
|
||||
application_;
|
||||
table_;
|
||||
|
||||
public
|
||||
Function Add(BeforeRow);
|
||||
Function ConvertToText(Separator, NestedTables);
|
||||
Function Delete();
|
||||
Function DistributeHeight();
|
||||
Function Item(Index);
|
||||
Function Select();
|
||||
Function SetHeight(RowHeight, HeightRule);
|
||||
Function SetLeftIndent(LeftIndent, RulerStyle);
|
||||
|
||||
property Alignment read ReadAlignment write WriteAlignment;
|
||||
property AllowBreakAcrossPages read ReadAllowBreakAcrossPages write WriteAllowBreakAcrossPages;
|
||||
property AllowOverlap read ReadAllowOverlap write WriteAllowOverlap;
|
||||
property Application read ReadApplication;
|
||||
property Borders read ReadBorders;
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
property DistanceBottom read ReadDistanceBottom write WriteDistanceBottom;
|
||||
property DistanceLeft read ReadDistanceLeft write WriteDistanceLeft;
|
||||
property DistanceRight read ReadDistanceRight write WriteDistanceRight;
|
||||
property DistanceTop read ReadDistanceTop write WriteDistanceTop;
|
||||
property First read ReadFirst;
|
||||
property HeadingFormat read ReadHeadingFormat write WriteHeadingFormat;
|
||||
property Height read ReadHeight write WriteHeight;
|
||||
property HeightRule read ReadHeightRule write WriteHeightRule;
|
||||
property HorizontalPosition read ReadHorizontalPosition write WriteHorizontalPosition;
|
||||
property Last read ReadLast;
|
||||
property LeftIndent read ReadLeftIndent write WriteLeftIndent;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Parent read ReadParent;
|
||||
property RelativeHorizontalPosition read ReadRelativeHorizontalPosition write WriteRelativeHorizontalPosition;
|
||||
property RelativeVerticalPosition read ReadRelativeVerticalPosition write WriteRelativeVerticalPosition;
|
||||
property Shading read ReadShading;
|
||||
property SpaceBetweenColumns read ReadSpaceBetweenColumns;
|
||||
property TableDirection read ReadTableDirection write WriteTableDirection;
|
||||
property VerticalPosition read ReadVerticalPosition write WriteVerticalPosition;
|
||||
property WrapAroundText read ReadWrapAroundText write WriteWrapAroundText;
|
||||
Function WriteWrapAroundText(value);
|
||||
Function ReadWrapAroundText();
|
||||
Function WriteVerticalPosition();
|
||||
Function ReadVerticalPosition();
|
||||
Function WriteTableDirection();
|
||||
Function ReadTableDirection();
|
||||
Function ReadSpaceBetweenColumns();
|
||||
Function ReadShading();
|
||||
Function WriteRelativeVerticalPosition();
|
||||
Function ReadRelativeVerticalPosition();
|
||||
Function WriteRelativeHorizontalPosition();
|
||||
Function ReadRelativeHorizontalPosition();
|
||||
Function ReadParent();
|
||||
Function ReadNestingLevel();
|
||||
Function WriteLeftIndent();
|
||||
Function ReadLeftIndent();
|
||||
Function ReadLast();
|
||||
Function WriteHorizontalPosition();
|
||||
Function ReadHorizontalPosition();
|
||||
Function WriteHeightRule();
|
||||
Function ReadHeightRule();
|
||||
Function WriteHeight();
|
||||
Function ReadHeight();
|
||||
Function WriteHeadingFormat();
|
||||
Function ReadHeadingFormat();
|
||||
Function ReadFirst();
|
||||
Function WriteDistanceTop();
|
||||
Function ReadDistanceTop();
|
||||
Function WriteDistanceRight();
|
||||
Function ReadDistanceRight();
|
||||
Function WriteDistanceLeft();
|
||||
Function ReadDistanceLeft();
|
||||
Function WriteDistanceBottom();
|
||||
Function ReadDistanceBottom();
|
||||
Function ReadCreator();
|
||||
Function ReadCount();
|
||||
Function ReadBorders();
|
||||
Function ReadApplication();
|
||||
Function WriteAllowOverlap();
|
||||
Function ReadAllowOverlap();
|
||||
Function WriteAllowBreakAcrossPages();
|
||||
Function ReadAllowBreakAcrossPages();
|
||||
Function WriteAlignment();
|
||||
Function ReadAlignment();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxRows.Create(application, table);
|
||||
Begin
|
||||
application_ := application;
|
||||
table_ := table;
|
||||
End;
|
||||
|
||||
Function Operator TSDocxRows.[](index);
|
||||
Begin
|
||||
return new TSDocxRow(application_, table_, Index);
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxRows.Select();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function TSDocxRows.Item(Index);
|
||||
Begin
|
||||
return self[Index];
|
||||
End;
|
||||
|
||||
Function TSDocxRows.SetHeight(RowHeight, HeightRule);
|
||||
Begin
|
||||
case HeightRule of
|
||||
class(TSDocxEnumerations).wdRowHeightAtLeast:
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdRowHeightAuto:
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdRowHeightExactly:
|
||||
begin
|
||||
end
|
||||
end;
|
||||
End;
|
||||
|
||||
Function TSDocxRows.SetLeftIndent(LeftIndent, RulerStyle);
|
||||
Begin
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxRows.ReadWrapAroundText();
|
||||
Begin
|
||||
node := class(TSXml).GetNode(table_.Root(), "w:tblPr/w:tblpPr");
|
||||
return ifObj(node) ? -1 : 0;
|
||||
End;
|
||||
|
||||
Function TSDocxRows.WriteWrapAroundText(value);
|
||||
Begin
|
||||
if value then
|
||||
begin
|
||||
table_.tblPr.tblpPr.LeftFromText := 180;
|
||||
table_.tblPr.tblpPr.RightFromText := 180;
|
||||
table_.tblPr.tblpPr.VertAnchor := "text";
|
||||
table_.tblPr.tblpPr.tblpY := 1;
|
||||
table_.tblPr.Overlap := "never";
|
||||
table_.Apply();
|
||||
end
|
||||
else begin
|
||||
class(TSXml).RemoveNode(table_.Root(), "w:tblPr/w:tblpPr");
|
||||
class(TSXml).RemoveNode(table_.Root(), "w:tblPr/w:tblOverlap");
|
||||
end
|
||||
End;
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
Type TSDocxShading = Class
|
||||
|
||||
public
|
||||
Function Create(application, pr);
|
||||
|
||||
private
|
||||
application_;
|
||||
pr_; // xxPr对象,比如Cell: tr.tcPr,或Paragraph: p.pPr
|
||||
|
||||
public
|
||||
property Application read ReadApplication;
|
||||
property BackgroundPatternColor read ReadBackgroundPatternColor write WriteBackgroundPatternColor;
|
||||
property BackgroundPatternColorIndex read ReadBackgroundPatternColorIndex write WriteBackgroundPatternColorIndex;
|
||||
property Creator read ReadCreator;
|
||||
property ForegroundPatternColor read ReadForegroundPatternColor write WriteForegroundPatternColor;
|
||||
property ForegroundPatternColorIndex read ReadForegroundPatternColorIndex write WriteForegroundPatternColorIndex;
|
||||
property Parent read ReadParent;
|
||||
property Texture read ReadTexture write WriteTexture;
|
||||
Function WriteTexture(texture);
|
||||
Function ReadTexture();
|
||||
Function ReadParent();
|
||||
Function WriteForegroundPatternColorIndex();
|
||||
Function ReadForegroundPatternColorIndex();
|
||||
Function WriteForegroundPatternColor();
|
||||
Function ReadForegroundPatternColor();
|
||||
Function ReadCreator();
|
||||
Function WriteBackgroundPatternColorIndex();
|
||||
Function ReadBackgroundPatternColorIndex();
|
||||
Function WriteBackgroundPatternColor();
|
||||
Function ReadBackgroundPatternColor();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxShading.Create(application, pr);
|
||||
Begin
|
||||
application_ := application;
|
||||
pr_ := pr;
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxShading.WriteTexture(texture);
|
||||
Begin
|
||||
case texture of
|
||||
class(TSDocxEnumerations).wdTextureHorizontal():
|
||||
begin
|
||||
pr_.Shading.Val := "thinHorzStripe";
|
||||
pr_.Update();
|
||||
end
|
||||
end;
|
||||
End;
|
||||
Function TSDocxShading.ReadTexture();
|
||||
Begin
|
||||
End;
|
||||
|
|
@ -0,0 +1,197 @@
|
|||
Type TSDocxTable = Class
|
||||
|
||||
public
|
||||
Function Create(application, docx, table);
|
||||
|
||||
private
|
||||
application_;
|
||||
docx_;
|
||||
table_; // TOfficeObj('TTable') 对象
|
||||
|
||||
public
|
||||
Function ApplyStyleDirectFormatting(StyleName);
|
||||
Function AutoFitBehavior(Behavior);
|
||||
Function AutoFormat(Format, ApplyBorders, ApplyShading, ApplyFont, ApplyColor, ApplyHeadingRows, ApplyLastRow, ApplyFirstColumn, ApplyLastColumn, AutoFit);
|
||||
Function Cell(Row, Column);
|
||||
Function ConvertToText(Separator, NestedTables);
|
||||
Function Delete();
|
||||
Function Select();
|
||||
Function Sort(ExcludeHeader, FieldNumber, SortFieldType, SortOrder, FieldNumber2, SortFieldType2, SortOrder2, FieldNumber3, SortFieldType3, SortOrder3, CaseSensitive, BidiSort, IgnoreThe, IgnoreKashida, IgnoreDiacritics, IgnoreHe, LanguageID);
|
||||
Function SortAscending();
|
||||
Function SortDescending();
|
||||
Function Split(BeforeRow);
|
||||
Function UpdateAutoFormat();
|
||||
|
||||
property AllowAutoFit read ReadAllowAutoFit write WriteAllowAutoFit;
|
||||
property Application read ReadApplication;
|
||||
property ApplyStyleColumnBands read ReadApplyStyleColumnBands write WriteApplyStyleColumnBands;
|
||||
property ApplyStyleFirstColumn read ReadApplyStyleFirstColumn write WriteApplyStyleFirstColumn;
|
||||
property ApplyStyleHeadingRows read ReadApplyStyleHeadingRows write WriteApplyStyleHeadingRows;
|
||||
property ApplyStyleLastColumn read ReadApplyStyleLastColumn write WriteApplyStyleLastColumn;
|
||||
property ApplyStyleLastRow read ReadApplyStyleLastRow write WriteApplyStyleLastRow;
|
||||
property ApplyStyleRowBands read ReadApplyStyleRowBands write WriteApplyStyleRowBands;
|
||||
property AutoFormatType read ReadAutoFormatType;
|
||||
property Borders read ReadBorders;
|
||||
property BottomPadding read ReadBottomPadding write WriteBottomPadding;
|
||||
property Columns read ReadColumns;
|
||||
property Creator read ReadCreator;
|
||||
property Descr read ReadDescr write WriteDescr;
|
||||
property ID read ReadID write WriteID;
|
||||
property LeftPadding read ReadLeftPadding write WriteLeftPadding;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Parent read ReadParent;
|
||||
property PreferredWidth read ReadPreferredWidth write WritePreferredWidth;
|
||||
property PreferredWidthType read ReadPreferredWidthType write WritePreferredWidthType;
|
||||
property Range read ReadRange;
|
||||
property RightPadding read ReadRightPadding write WriteRightPadding;
|
||||
property Rows read ReadRows;
|
||||
property Shading read ReadShading;
|
||||
property Spacing read ReadSpacing write WriteSpacing;
|
||||
property Style read ReadStyle write WriteStyle;
|
||||
property TableDirection read ReadTableDirection write WriteTableDirection;
|
||||
property Tables read ReadTables;
|
||||
property Title read ReadTitle write WriteTitle;
|
||||
property TopPadding read ReadTopPadding write WriteTopPadding;
|
||||
property Uniform read ReadUniform;
|
||||
Function ReadUniform();
|
||||
Function WriteTopPadding();
|
||||
Function ReadTopPadding();
|
||||
Function WriteTitle();
|
||||
Function ReadTitle();
|
||||
Function ReadTables();
|
||||
Function WriteTableDirection();
|
||||
Function ReadTableDirection();
|
||||
Function WriteStyle();
|
||||
Function ReadStyle();
|
||||
Function WriteSpacing();
|
||||
Function ReadSpacing();
|
||||
Function ReadShading();
|
||||
Function ReadRows(index);
|
||||
Function WriteRightPadding();
|
||||
Function ReadRightPadding();
|
||||
Function ReadRange();
|
||||
Function WritePreferredWidthType(value);
|
||||
Function ReadPreferredWidthType();
|
||||
Function WritePreferredWidth(value);
|
||||
Function ReadPreferredWidth();
|
||||
Function ReadParent();
|
||||
Function ReadNestingLevel();
|
||||
Function WriteLeftPadding();
|
||||
Function ReadLeftPadding();
|
||||
Function WriteID();
|
||||
Function ReadID();
|
||||
Function WriteDescr();
|
||||
Function ReadDescr();
|
||||
Function ReadCreator();
|
||||
Function ReadColumns(index);
|
||||
Function WriteBottomPadding();
|
||||
Function ReadBottomPadding();
|
||||
Function ReadBorders(index);
|
||||
Function ReadAutoFormatType();
|
||||
Function WriteApplyStyleRowBands();
|
||||
Function ReadApplyStyleRowBands();
|
||||
Function WriteApplyStyleLastRow();
|
||||
Function ReadApplyStyleLastRow();
|
||||
Function WriteApplyStyleLastColumn();
|
||||
Function ReadApplyStyleLastColumn();
|
||||
Function WriteApplyStyleHeadingRows();
|
||||
Function ReadApplyStyleHeadingRows();
|
||||
Function WriteApplyStyleFirstColumn();
|
||||
Function ReadApplyStyleFirstColumn();
|
||||
Function WriteApplyStyleColumnBands();
|
||||
Function ReadApplyStyleColumnBands();
|
||||
Function ReadApplication();
|
||||
Function WriteAllowAutoFit();
|
||||
Function ReadAllowAutoFit();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxTable.Create(application, docx, table);
|
||||
Begin
|
||||
application_ := application;
|
||||
docx_ := docx;
|
||||
table_ := table;
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxTable.ApplyStyleDirectFormatting(StyleName);
|
||||
Begin
|
||||
table_.TblPr.StyleId := docx_.StyleObject().GetStyle(StyleName).Value('StyleId');
|
||||
table_.Apply();
|
||||
End;
|
||||
|
||||
Function TSDocxTable.AutoFitBehavior(Behavior);
|
||||
Begin
|
||||
// TODO : 这里应该使用递归去处理每个单元格
|
||||
// TODO : 等cell方法完善
|
||||
case Behavior of
|
||||
class(TSDocxEnumerations).wdAutoFitContent():
|
||||
begin
|
||||
table_.TblPr.WidthType := "auto";
|
||||
table_.TblPr.Width := 0;
|
||||
table_.TblApply();
|
||||
col := table_.Cols();
|
||||
row := table_.Rows();
|
||||
for i:=1 to row do
|
||||
begin
|
||||
for j:=1 to col do
|
||||
begin
|
||||
cell := table_.Cell(i, j);
|
||||
cell.TcPr.Type := "auto";
|
||||
cell.TcPr.Width := 0;
|
||||
cell.Apply();
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdAutoFitFixed():
|
||||
begin
|
||||
end
|
||||
|
||||
class(TSDocxEnumerations).wdAutoFitWindow():
|
||||
begin
|
||||
table_.TblPr.WidthType := "pct";
|
||||
table_.TblPr.Width := 5000;
|
||||
table_.Apply();
|
||||
end
|
||||
End;
|
||||
End;
|
||||
|
||||
Function TSDocxTable.Cell(Row, Column);
|
||||
Begin
|
||||
return new TSDocxCell(application_, table_, Row, Column);
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxTable.ReadBorders(index);
|
||||
Begin
|
||||
borders_obj := new TSDocxBordersTable(application_, table_);
|
||||
return ifnil(index) ? borders_obj : borders_obj[index];
|
||||
End;
|
||||
|
||||
Function TSDocxTable.ReadColumns(index);
|
||||
Begin
|
||||
columns_obj := new TSDocxColumns(application_, table_);
|
||||
return ifnil(index) ? columns_obj : columns_obj[index];
|
||||
End;
|
||||
|
||||
Function TSDocxTable.ReadRows(index);
|
||||
Begin
|
||||
rows_obj := new TSDocxRows(application_, table_);
|
||||
return ifnil(index) ? rows_obj : rows_obj[index];
|
||||
End;
|
||||
|
||||
Function TSDocxTable.WritePreferredWidthType(value);
|
||||
Begin
|
||||
End;
|
||||
Function TSDocxTable.ReadPreferredWidthType();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function TSDocxTable.WritePreferredWidth(value);
|
||||
Begin
|
||||
End;
|
||||
Function TSDocxTable.ReadPreferredWidth();
|
||||
Begin
|
||||
End;
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
Type TSDocxTables = Class
|
||||
|
||||
public
|
||||
Function Create(application, docx);
|
||||
Function Init();
|
||||
Function Operator[](index);
|
||||
|
||||
private
|
||||
application_;
|
||||
docx_;
|
||||
|
||||
public
|
||||
Function Add(Range, NumRows, NumColumns, DefaultTableBehavior, AutoFitBehavior);
|
||||
Function Item(Index);
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Count read ReadCount;
|
||||
property Creator read ReadCreator;
|
||||
property NestingLevel read ReadNestingLevel;
|
||||
property Parent read ReadParent;
|
||||
Function ReadParent();
|
||||
Function ReadNestingLevel();
|
||||
Function ReadCreator();
|
||||
Function ReadCount();
|
||||
Function ReadApplication();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSDocxTables.Create(application, docx);
|
||||
Begin
|
||||
application_ := application;
|
||||
docx_ := docx;
|
||||
Init();
|
||||
End;
|
||||
|
||||
Function TSDocxTables.Init();
|
||||
Begin
|
||||
End;
|
||||
|
||||
Function Operator TSDocxTables.[](index);
|
||||
Begin
|
||||
table := docx_.GetTable(index - 1);
|
||||
return table ? new TSDocxTable(application_, docx_, table) : nil;
|
||||
End;
|
||||
|
||||
// function
|
||||
Function TSDocxTables.Item(Index);
|
||||
Begin
|
||||
return self[Index];
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSDocxTables.ReadCount();
|
||||
Begin
|
||||
return docx_.TablesCount();
|
||||
End;
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
|
||||
TestDocuments();
|
||||
|
||||
|
||||
Function TestDocuments();
|
||||
Begin
|
||||
openpath := "D:/temp/vbatable.docx";
|
||||
savepath := "D:/temp/vba.docx";
|
||||
application := new TSDocxApplication();
|
||||
|
||||
application.Documents.Add;
|
||||
Documents := application.Documents;
|
||||
Documents.Open(FileName : openpath);
|
||||
Documents.Save();
|
||||
println("Documents.Count = {}", Documents.Count);
|
||||
application.Documents("vbatable.docx").Activate;
|
||||
println("ActiveDocument.Name = {}", application.ActiveDocument.Name);
|
||||
println("ActiveDocument.Tables.Count = {}", application.ActiveDocument.Tables.Count);
|
||||
|
||||
TestTableCell(application);
|
||||
|
||||
Documents[2].SaveAs2(FileName : savepath);
|
||||
println("savepath = {}", savepath);
|
||||
return;
|
||||
|
||||
|
||||
End;
|
||||
|
||||
Function TestTables(application);
|
||||
Begin
|
||||
ActiveDocument := application.ActiveDocument;
|
||||
// ActiveDocument.Tables(1).ApplyStyleDirectFormatting('样式1');
|
||||
End;
|
||||
|
||||
Function TestTableCell(application);
|
||||
Begin
|
||||
ActiveDocument := application.ActiveDocument;
|
||||
// tables := application.ActiveDocument.Tables;
|
||||
// tables[1].AutoFitBehavior(class(TSDocxEnumerations).wdAutoFitContent());
|
||||
// tables[1].Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
|
||||
// tables[1].Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireRow());
|
||||
// tables[1].Cell(3, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftLeft());
|
||||
// tables[1].Cell(1, 2).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
|
||||
// tables[1].Cell(5, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
|
||||
// tables2 := ActiveDocument.Tables(2);
|
||||
// tables2.Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
|
||||
// tables2.Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireRow());
|
||||
// tables2.Cell(3, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftLeft());
|
||||
// tables2.Cell(1, 2).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
|
||||
// tables2.Cell(5, 3).Delete(class(TSDocxEnumerations).wdDeleteCellsShiftUp());
|
||||
// ActiveDocument.Tables(1).Cell(Row: 2, Column: 2).Merge(MergeTo: tables[1].Cell(2, 4));
|
||||
// ActiveDocument.Tables(2).Cell(2, 2).Merge(ActiveDocument.Tables(2).Cell(3, 4));
|
||||
// ActiveDocument.Tables(2).Cell(2, 2).Width := 100;
|
||||
// println("ActiveDocument.Tables(2).Cell(2, 2).Width = {}", ActiveDocument.Tables(2).Cell(2, 2).Width);
|
||||
// ActiveDocument.Tables(2).Cell(2, 3).WordWrap := true;
|
||||
// println("ActiveDocument.Tables(2).Cell(2, 3).WordWrap = {}", ActiveDocument.Tables(2).Cell(2, 3).WordWrap);
|
||||
// ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalBottom();
|
||||
// ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalCenter();
|
||||
// ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment := class(TSDocxEnumerations).wdCellAlignVerticalTop();
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 1).VerticalAlignment);
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 2).VerticalAlignment);
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 3).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(1, 3).VerticalAlignment);
|
||||
// println("ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment = {}", ActiveDocument.Tables(2).Cell(2, 2).VerticalAlignment);
|
||||
// ActiveDocument.Tables(2).Cell(1, 1).TopPadding := 30;
|
||||
// ActiveDocument.Tables(2).Cell(1, 1).LeftPadding := 25;
|
||||
// ActiveDocument.Tables(2).Cell(1, 1).BottomPadding := 20;
|
||||
// ActiveDocument.Tables(2).Cell(1, 1).RightPadding := 15;
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 1).TopPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).TopPadding);
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 1).LeftPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).LeftPadding);
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 1).BottomPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).BottomPadding);
|
||||
// println("ActiveDocument.Tables(2).Cell(1, 1).RightPadding = {}", ActiveDocument.Tables(2).Cell(1, 1).RightPadding);
|
||||
// ActiveDocument.Tables(2).Cell(3, 3).Tables(1).AutoFitBehavior(class(TSDocxEnumerations).wdAutoFitContent());
|
||||
// ActiveDocument.Tables(2).Cell(3, 3).Tables(1).Cell(1, 1).Delete(class(TSDocxEnumerations).wdDeleteCellsEntireColumn());
|
||||
// ActiveDocument.Tables(1).Cell(1, 1).Shading.Texture := class(TSDocxEnumerations).wdTextureHorizontal();
|
||||
ActiveDocument.Tables(3).Cell(2,1).PreferredWidthType := class(TSDocxEnumerations).wdPreferredWidthAuto;
|
||||
ActiveDocument.Tables(3).Cell(2,2).PreferredWidth := 1000;
|
||||
println("ActiveDocument.Tables(3).Cell(2,2).PreferredWidth = {}", ActiveDocument.Tables(3).Cell(2,2).PreferredWidth);
|
||||
|
||||
End;
|
||||
|
||||
Function TestTableRows();
|
||||
Begin
|
||||
// ActiveDocument.Tables(1).Rows.WrapAroundText := true;
|
||||
// ActiveDocument.Tables(2).Rows.WrapAroundText := false;
|
||||
// println("Tables(1).Rows.WrapAroundText = {}", ActiveDocument.Tables(1).Rows.WrapAroundText);
|
||||
// println("Tables(2).Rows.WrapAroundText = {}", ActiveDocument.Tables(2).Rows.WrapAroundText);
|
||||
// ActiveDocument.Tables(1).Rows.WrapAroundText := false;
|
||||
// println("Tables(1).Rows.WrapAroundText = {}", ActiveDocument.Tables(1).Rows.WrapAroundText);
|
||||
End;
|
||||
|
||||
Function TestTableBorders();
|
||||
Begin
|
||||
// ActiveDocument.Tables(1).Borders(class(TSDocxEnumerations).wdBorderDiagonalUp).LineStyle := class(TSDocxEnumerations).wdLineStyleSingle;
|
||||
// ActiveDocument.Tables(1).Cell(1, 1).Borders(class(TSDocxEnumerations).wdBorderDiagonalDown).LineStyle := class(TSDocxEnumerations).wdLineStyleSingle;
|
||||
// ActiveDocument.Tables(1).Columns(1).SetWidth(100, class(TSDocxEnumerations).wdAdjustSameWidth());
|
||||
// ActiveDocument.Tables(3).Columns(2).PreferredWidthType := class(TSDocxEnumerations).wdPreferredWidthPercent;
|
||||
// ActiveDocument.Tables(3).Columns(2).PreferredWidth := 50;
|
||||
// println("ActiveDocument.Tables(3).Columns(2).PreferredWidth = {}", ActiveDocument.Tables(3).Columns(2).PreferredWidth);
|
||||
End;
|
||||
|
||||
|
||||
|
|
@ -1,26 +1,26 @@
|
|||
Type Collection = class
|
||||
Type Collection = Class
|
||||
|
||||
public
|
||||
Function Create();
|
||||
Function SetIgnoreCase(value);
|
||||
Function SetActivate(value);
|
||||
Function GetActivate();
|
||||
Function CalNewName(prefix);
|
||||
Function CompareFunction(index, data);
|
||||
|
||||
Function SetIgnoreCase(value);
|
||||
Function SetActivation(value);
|
||||
Function GetActivation();
|
||||
Function CalNewName(prefix);
|
||||
Function AddCollection(obj, name);
|
||||
Function RemoveCollection(index);
|
||||
Function Operator[](index);
|
||||
Function GetCount();
|
||||
|
||||
public
|
||||
class Function GetInstance(value);
|
||||
|
||||
private
|
||||
ignorecase_; // 忽略大小写
|
||||
container_; // 容器对象
|
||||
fp_; // 函数指针 -- 用来比较
|
||||
activate_; // 激活的对象
|
||||
activation_; // 激活的对象
|
||||
|
||||
public
|
||||
class Function GetInstance(value);
|
||||
|
||||
private
|
||||
static collection_;
|
||||
|
|
@ -40,14 +40,14 @@ Begin
|
|||
ignorecase_ := value;
|
||||
End;
|
||||
|
||||
Function Collection.SetActivate(value);
|
||||
Function Collection.SetActivation(value);
|
||||
Begin
|
||||
activate_ := self[value];
|
||||
activation_ := self[value];
|
||||
End;
|
||||
|
||||
Function Collection.GetActivate();
|
||||
Function Collection.GetActivation();
|
||||
Begin
|
||||
return activate_;
|
||||
return activation_;
|
||||
End;
|
||||
|
||||
Function Collection.CompareFunction(index, data);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,42 @@
|
|||
Type TSVbaBase = class
|
||||
|
||||
public
|
||||
Function Create(app, par, cre);
|
||||
|
||||
private
|
||||
application_;
|
||||
parent_;
|
||||
creator_;
|
||||
|
||||
property Application read ReadApplication;
|
||||
property Parent read ReadParent;
|
||||
property Creator read ReadCreator;
|
||||
Function ReadApplication();
|
||||
Function ReadParent();
|
||||
Function ReadCreator();
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function TSVbaBase.Create(app, par, cre);
|
||||
Begin
|
||||
application_ := app;
|
||||
parent_ := par;
|
||||
creator_ := cre;
|
||||
End;
|
||||
|
||||
// property
|
||||
Function TSVbaBase.ReadApplication();
|
||||
Begin
|
||||
return application_;
|
||||
End;
|
||||
|
||||
Function TSVbaBase.ReadParent();
|
||||
Begin
|
||||
return parent_;
|
||||
End;
|
||||
|
||||
Function TSVbaBase.ReadCreator();
|
||||
Begin
|
||||
return creator_;
|
||||
End;
|
||||
|
|
@ -0,0 +1,74 @@
|
|||
Type Collection = class
|
||||
|
||||
public
|
||||
|
||||
Function Create();
|
||||
Function AddCollection(obj, name);
|
||||
Function RemoveCollection(index);
|
||||
Function SetIgnoreCase(value);
|
||||
Function GetCount();
|
||||
Function CalNewName(prefix);
|
||||
Function Operator[](index);
|
||||
|
||||
private
|
||||
name_collection_;
|
||||
index_collection_;
|
||||
name_index_;
|
||||
ignorecase_; // 是否启用大小写无关
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function Collection.Create();
|
||||
Begin
|
||||
name_collection_ := array();
|
||||
index_collection_ := array();
|
||||
name_index_ := array();
|
||||
ignorecase_ := false;
|
||||
End;
|
||||
|
||||
Function Collection.AddCollection(obj, name);
|
||||
Begin
|
||||
name_collection_[ignorecase_ ? lowercase(name) : name] := obj;
|
||||
index := length(index_collection_) + 1;
|
||||
index_collection_[index] := obj;
|
||||
name_index_[index] := name;
|
||||
name_index_[name] := index;
|
||||
End;
|
||||
|
||||
Function Collection.RemoveCollection(index);
|
||||
Begin
|
||||
arr1 := array(index : nil);
|
||||
arr2 := array(name_index_[index] : nil);
|
||||
reindex(index_collection_, arr1);
|
||||
reindex(name_collection_, arr2);
|
||||
reindex(name_index_, arr1);
|
||||
reindex(name_index_, arr2);
|
||||
if ifnumber(index) then
|
||||
for k, v in index_collection_ do
|
||||
if k > index then reindex(index_collection_, array(k : k - 1));
|
||||
End;
|
||||
|
||||
Function Collection.SetIgnoreCase(value);
|
||||
Begin
|
||||
ignorecase_ := value;
|
||||
End;
|
||||
|
||||
Function Collection.GetCount();
|
||||
Begin
|
||||
return length(name_collection_);
|
||||
End;
|
||||
|
||||
Function Collection.CalNewName(prefix);
|
||||
Begin
|
||||
len := length(name_collection_) + 1;
|
||||
name := prefix $ len;
|
||||
while name in name_collection_ do
|
||||
name := prefix $ ++len;
|
||||
return name;
|
||||
End;
|
||||
|
||||
Function Operator Collection.[](index);
|
||||
Begin
|
||||
if ifnumber(index) then return index_collection_[index];
|
||||
return name_collection_[ignorecase_ ? lowercase(index) : index];
|
||||
End;
|
||||
|
|
@ -398,12 +398,12 @@ End;
|
|||
Function Workbook.ReadWorkSheets(index);
|
||||
Begin
|
||||
if ifnil(index) then return worksheets_;
|
||||
return worksheets_.worksheet(index);
|
||||
return worksheets_[index];
|
||||
End;
|
||||
|
||||
Function Workbook.ReadActiveSheet();
|
||||
Begin
|
||||
return worksheets_.GetCollection().GetActivate();
|
||||
return worksheets_.GetCollection().GetActivation();
|
||||
End;
|
||||
|
||||
Function Workbook.ReadFullName();
|
||||
|
|
|
|||
|
|
@ -4,6 +4,9 @@ public
|
|||
Function Create();
|
||||
Function Operator[](index);
|
||||
|
||||
private
|
||||
Function AddWorkbook(xlsx, name); // Completed
|
||||
|
||||
private
|
||||
collection_;
|
||||
|
||||
|
|
@ -30,9 +33,6 @@ public
|
|||
Function ReadCreator();
|
||||
Function ReadParent();
|
||||
|
||||
private
|
||||
Function AddWorkbook(xlsx, name); // Completed
|
||||
|
||||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
|
|
@ -41,6 +41,12 @@ Begin
|
|||
collection_ := class(Collection).GetInstance('workbook');
|
||||
End;
|
||||
|
||||
Function Workbooks.AddWorkbook(xlsx, fullname);
|
||||
Begin
|
||||
name := ExtractFileName(fullname);
|
||||
collection_.AddCollection(new Workbook(xlsx, name, fullname), name);
|
||||
End;
|
||||
|
||||
Function Operator Workbooks.[](index);
|
||||
Begin
|
||||
return collection_[index];
|
||||
|
|
@ -70,11 +76,6 @@ End;
|
|||
|
||||
Function Workbooks.ReadItem(index);
|
||||
Begin
|
||||
return collection_[index];
|
||||
return self[index];
|
||||
End;
|
||||
|
||||
Function Workbooks.AddWorkbook(xlsx, fullname);
|
||||
Begin
|
||||
name := ExtractFileName(fullname);
|
||||
collection_.AddCollection(new Workbook(xlsx, name, fullname), name);
|
||||
End;
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ End;
|
|||
|
||||
Function Worksheet.Activate();
|
||||
Begin
|
||||
collection_.SetActivate(sheet_name_);
|
||||
collection_.SetActivation(sheet_name_);
|
||||
return xlsx_.SetDefaultSheet(sheet_name_);
|
||||
End;
|
||||
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ Begin
|
|||
sheets := xlsx_.GetSheets();
|
||||
for k, v in sheets do
|
||||
collection_.AddCollection(new Worksheet(xlsx_, v, collection_), v);
|
||||
collection_.SetActivate(xlsx_.GetDefaultSheet());
|
||||
collection_.SetActivation(xlsx_.GetDefaultSheet());
|
||||
End;
|
||||
|
||||
Function Operator Worksheets.[](index);
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
Type Application = class
|
||||
Type XlsxApplication = class
|
||||
|
||||
public
|
||||
Function Create();
|
||||
Function Init();
|
||||
|
||||
public
|
||||
Property Workbooks read ReadWorkbooks; // Completed
|
||||
property Workbooks read ReadWorkbooks; // Completed
|
||||
Function ReadWorkbooks(index);
|
||||
|
||||
private
|
||||
|
|
@ -14,17 +14,17 @@ private
|
|||
End;
|
||||
|
||||
// ============== 实现 ================= //
|
||||
Function Application.Create();
|
||||
Function XlsxApplication.Create();
|
||||
Begin
|
||||
Init();
|
||||
End;
|
||||
|
||||
Function Application.Init();
|
||||
Function XlsxApplication.Init();
|
||||
Begin
|
||||
workbooks_ := new Workbooks();
|
||||
End;
|
||||
|
||||
Function Application.ReadWorkbooks(index)
|
||||
Function XlsxApplication.ReadWorkbooks(index)
|
||||
Begin
|
||||
if ifnil(index) then return workbooks_;
|
||||
return workbooks_[index];
|
||||
Loading…
Reference in New Issue