Document.h
1 // Copyright 2001-2020 Aspose Pty Ltd. All Rights Reserved.
3 //
4 // This file is part of Aspose.Words. The source code in this file
5 // is only intended as a supplement to the documentation, and is provided
6 // "as is", without warranty of any kind, either expressed or implied.
9 #pragma once
10 
11 #include <system/io/stream.h>
12 #include <system/io/memory_stream.h>
13 #include <system/dummy_classes.h>
14 #include <system/date_time.h>
15 #include <system/collections/ilist.h>
16 #include <system/collections/idictionary.h>
17 #include <system/collections/dictionary.h>
18 #include <mutex>
19 #include <memory>
20 #include <drawing/size_f.h>
21 #include <drawing/graphics.h>
22 
23 #include "Aspose.Words.Cpp/Model/Saving/OoxmlCompliance.h"
24 #include "Aspose.Words.Cpp/Model/Formatting/ISectionAttrSource.h"
25 #include "Aspose.Words.Cpp/Model/Drawing/Watermark/IWatermarkProvider.h"
26 #include "Aspose.Words.Cpp/Model/Document/RevisionsView.h"
27 #include "Aspose.Words.Cpp/Model/Document/ProtectionType.h"
28 #include "Aspose.Words.Cpp/Model/Document/LoadFormat.h"
29 #include "Aspose.Words.Cpp/Model/Document/DocumentBase.h"
30 
31 namespace Aspose { namespace Words { namespace Saving { class SaveOutputParameters; } } }
32 namespace Aspose { namespace Words { namespace Rendering { class PageInfo; } } }
33 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace Diagram { class DmlDiagramRenderingHelper; } } } } }
34 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Math { class MathContext; } } } }
35 namespace Aspose { namespace Words { class Watermark; } }
36 namespace Aspose { namespace Words { namespace Drawing { namespace Core { namespace Dml { class DmlNodeCustomizer; } } } } }
37 namespace Aspose { namespace Words { namespace Fields { class AutoTextEntryExtractor; } } }
38 namespace Aspose { namespace Words { namespace Fields { class FieldIncludeTextUpdater; } } }
39 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Math { class MathTextElement; } } } }
40 namespace Aspose { namespace Words { namespace Comparison { class ComparerNodeUtil; } } }
41 namespace Aspose { namespace Words { namespace Comparison { class FormattingComparer; } } }
42 namespace Aspose { namespace Words { namespace Themes { class ThemeColorUpdater; } } }
43 namespace Aspose { namespace Words { namespace RW { namespace Dml { namespace Writer { class DmlShapeValidator; } } } } }
44 namespace Aspose { namespace Words { namespace Fields { class ToaEntryExtractor; } } }
45 namespace Aspose { namespace Words { namespace Validation { class CustomXmlValidator; } } }
46 namespace Aspose { namespace Words { namespace RW { namespace Html { class HtmlFontNameResolver; } } } }
47 namespace Aspose { namespace Words { namespace RW { class RtfThemeWriter; } } }
48 namespace Aspose { namespace Words { namespace RW { namespace Svg { namespace Reader { class SvgToEmfConverter; } } } } }
49 namespace Aspose { namespace Words { namespace Validation { namespace VmlToDml { class VmlShapeToDmlShapeConverter; } } } }
50 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class OpenXmlDocumentReader; } } } } }
51 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxReaderFactory; } } } } }
52 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Reader { class WmlEquationXmlConverter; } } } } }
53 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Css { namespace New { class DocumentFormatter; } } } } } }
54 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Css { namespace New { class StyleFormatterHtmlRules; } } } } } }
55 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlIFrameWriter; } } } } }
56 namespace Aspose { namespace Words { namespace RW { namespace Mhtml { namespace Reader { class MhtmlReader; } } } } }
57 namespace Aspose { namespace Words { namespace Fonts { class EmbeddedFontCollector; } } }
58 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxDocumentReader; } } } } }
59 namespace Aspose { namespace Words { namespace MailMerging { class MailMergeRegion; } } }
60 namespace Aspose { namespace Words { class PlainTextDocument; } }
61 namespace Aspose { namespace Words { namespace Revisions { class RevisionUtil; } } }
62 namespace Aspose { namespace Words { namespace Saving { class PclSaveOptions; } } }
63 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtChartToDmlConverter; } } } } }
64 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { class DmlPictureRenderer; } } } }
65 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Dml { namespace ShapeEffects { class DmlShapeEffectsRenderer; } } } } }
66 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class BackgroundShapeApsBuilder; } } } }
67 namespace Aspose { namespace Words { namespace Layout { namespace Core { class SpanFieldContextMainText; } } } }
68 namespace Aspose { namespace Words { namespace Layout { namespace Core { class DocumentLayout; } } } }
69 namespace Aspose { namespace Words { namespace Layout { class LayoutCollector; } } }
70 namespace Aspose { namespace Words { namespace Layout { class LayoutEnumerator; } } }
71 namespace Aspose { namespace Words { class DigitalSignatureUtil; } }
72 namespace Aspose { namespace Words { class OoxmlComplianceInfo; } }
73 namespace Aspose { namespace Words { class RangeDocumentBuilder; } }
74 namespace Aspose { namespace Words { class XmlNamespace; } }
75 namespace Aspose { namespace Words { namespace Fields { class FieldIndexAndTablesUtil; } } }
76 namespace Aspose { namespace Words { namespace Fields { class IndexEntryPageNumberInfo; } } }
77 namespace Aspose { namespace Words { namespace Fonts { class DocumentFontProvider; } } }
78 namespace Aspose { namespace Words { namespace Markup { class SdtContentUpdater; } } }
79 namespace Aspose { namespace Words { namespace Saving { class PsSaveOptions; } } }
80 namespace Aspose { namespace Words { namespace Saving { class HtmlFixedSaveOptions; } } }
81 namespace Aspose { namespace Words { namespace Validation { namespace DmlToVml { class DmlUtil; } } } }
82 namespace Aspose { namespace Words { namespace RW { namespace Html { class HtmlShapeLayout; } } } }
83 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Reader { class HtmlFramesetReader; } } } } }
84 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Reader { class HtmlVmlShapeReaderContext; } } } } }
85 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlFramesetWriter; } } } } }
86 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlStylesheet; } } } } }
87 namespace Aspose { namespace Words { namespace Saving { class MetafileRenderingOptions; } } }
88 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxAltChunkReader; } } } } }
89 namespace Aspose { namespace Words { namespace Drawing { namespace Core { class ImageDataCore; } } } }
90 namespace Aspose { namespace Words { namespace Drawing { namespace Core { class ImageDataUtil; } } } }
91 namespace Aspose { namespace Words { namespace Fields { class FieldFileName; } } }
92 namespace Aspose { namespace Words { namespace Fields { class FieldDate; } } }
93 namespace Aspose { namespace Words { namespace Fields { class FieldPageRef; } } }
94 namespace Aspose { namespace Words { namespace Fields { class FieldTime; } } }
95 namespace Aspose { namespace Words { namespace Fields { class FieldToc; } } }
96 namespace Aspose { namespace Words { namespace Fields { class FieldXE; } } }
97 namespace Aspose { namespace Words { namespace Fields { class ExternalActionUpdateLayout; } } }
98 namespace Aspose { namespace Words { namespace Markup { class SdtContentHelper; } } }
99 namespace Aspose { namespace Words { namespace Layout { class AttributeConverter; } } }
100 namespace Aspose { namespace Words { namespace Layout { class LayoutOptionsCore; } } }
101 namespace Aspose { namespace Words { namespace Layout { namespace PreAps { class LayoutSpanPicture; } } } }
102 namespace Aspose { namespace Words { namespace BuildingBlocks { class GlossaryDocument; } } }
103 namespace Aspose { namespace Words { namespace Fields { class FieldUpdater; } } }
104 namespace Aspose { namespace Words { namespace Saving { class SvgSaveOptions; } } }
105 namespace Aspose { namespace Words { namespace Validation { class ListValidator; } } }
106 namespace Aspose { namespace Words { namespace Saving { class XamlFixedSaveOptions; } } }
107 namespace Aspose { namespace Words { namespace Saving { class PdfSaveOptions; } } }
108 namespace Aspose { namespace Words { namespace Saving { class XpsSaveOptions; } } }
109 namespace Aspose { namespace Words { namespace Themes { class Theme; } } }
110 namespace Aspose { namespace Words { class DocumentBuilder; } }
111 namespace Aspose { namespace Words { namespace Validation { class DocumentPostLoader; } } }
112 namespace Aspose { namespace Words { namespace Validation { class DocumentValidator; } } }
113 namespace Aspose { namespace Words { class SaveInfo; } }
114 namespace Aspose { namespace Words { namespace Drawing { class Shape; } } }
115 namespace Aspose { namespace Words { namespace ApsBuilder { class LayoutApsBuilder; } } }
116 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class DmlShapeApsBuilder; } } } }
117 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class ShapeApsBuilder; } } } }
118 namespace Aspose { namespace Words { namespace RW { class FixedPageWriterBase; } } }
119 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Writer { class HtmlCoreWriter; } } } } }
120 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtOleWriter; } } } } }
121 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlEquationXmlWriter; } } } } }
122 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxCustomizationsReader; } } } } }
123 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxThemeReader; } } } } }
124 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxVbaReader; } } } } }
125 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxCustomizationsWriter; } } } } }
126 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxVbaWriter; } } } } }
127 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Customizations { class TcgReader; } } } } }
128 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Customizations { class TcgWriter; } } } } }
129 namespace Aspose { namespace Words { namespace RW { namespace Nrx { namespace Writer { class NrxFramesetWriter; } } } } }
130 namespace Aspose { namespace Words { namespace Fields { class FieldNumListLabelUpdater; } } }
131 namespace Aspose { namespace Words { namespace Fields { class FieldNumUtil; } } }
132 namespace Aspose { namespace Words { class NodeImporter; } }
133 namespace Aspose { namespace Words { class StyleCollection; } }
134 namespace Aspose { namespace Words { namespace TableLayout { class ParagraphMeasurer; } } }
135 namespace Aspose { namespace Words { class Run; } }
136 namespace Aspose { namespace Words { namespace Rendering { class AsposeWordsPrintDocument; } } }
137 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxDocumentWriterBase; } } } } }
138 namespace Aspose { namespace Words { namespace RW { namespace Imaging { namespace Writer { class ImagingWriter; } } } } }
139 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtBinaryObjectReader; } } } } }
140 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtImageWriter; } } } } }
141 namespace Aspose { namespace Words { namespace RW { namespace Svg { namespace Writer { class SvgWriter; } } } } }
142 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfLochHichDbchGroupWriter; } } } } }
143 namespace Aspose { namespace Words { namespace RW { namespace Txt { namespace Reader { class TxtReader; } } } } }
144 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Reader { class OdtSettingsReader; } } } } }
145 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtFieldWriter; } } } } }
146 namespace Aspose { namespace Words { class WordUtil; } }
147 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxReader; } } } } }
148 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Reader { class DocxWebSettingsReader; } } } } }
149 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxDocumentWriter; } } } } }
150 namespace Aspose { namespace Words { namespace RW { namespace Docx { namespace Writer { class DocxWriter; } } } } }
151 namespace Aspose { namespace Words { namespace RW { namespace Doc { class DocPrFiler; } } } }
152 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Reader { class DocReader; } } } } }
153 namespace Aspose { namespace Words { namespace RW { namespace Doc { namespace Writer { class DocWriter; } } } } }
154 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Reader { class HtmlListReader; } } } } }
155 namespace Aspose { namespace Words { namespace RW { namespace Html { namespace Reader { class HtmlReader; } } } } }
156 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtTextPropertiesWriter; } } } } }
157 namespace Aspose { namespace Words { namespace RW { namespace Odt { namespace Writer { class OdtSettingsWriter; } } } } }
158 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfModelBuilder; } } } } }
159 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfReader; } } } } }
160 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfReaderContext; } } } } }
161 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Reader { class RtfRunPrReader; } } } } }
162 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfRunPrWriter; } } } } }
163 namespace Aspose { namespace Words { namespace RW { namespace Rtf { namespace Writer { class RtfWriterContext; } } } } }
164 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Reader { class WmlReader; } } } } }
165 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlFontsWriter; } } } } }
166 namespace Aspose { namespace Words { namespace RW { namespace Wml { namespace Writer { class WmlWriter; } } } } }
167 namespace Aspose { namespace Words { namespace RW { namespace Xaml { namespace Writer { class XamlRunWriter; } } } } }
168 namespace Aspose { namespace Words { namespace RW { namespace Xaml { namespace Writer { class XamlWriter; } } } } }
169 namespace Aspose { namespace Words { enum class VbaDocumentEvents; } }
170 namespace Aspose { namespace Words { namespace Properties { class BuiltInDocumentProperties; } } }
171 namespace Aspose { namespace Words { namespace WebExtensions { class TaskPaneCollection; } } }
172 namespace Aspose { namespace Words { namespace Properties { class CustomDocumentProperties; } } }
173 namespace Aspose { namespace Words { namespace MailMerging { class MailMerge; } } }
174 namespace Aspose { namespace Words { namespace Settings { class DocumentProtection; } } }
175 namespace Aspose { namespace Words { class SectionCollection; } }
176 namespace Aspose { namespace Words { class Section; } }
177 namespace Aspose { namespace Words { namespace Settings { class ViewOptions; } } }
178 namespace Aspose { namespace Words { namespace Settings { class WriteProtection; } } }
179 namespace Aspose { namespace Words { namespace Settings { class CompatibilityOptions; } } }
180 namespace Aspose { namespace Words { namespace Settings { class MailMergeSettings; } } }
181 namespace Aspose { namespace Words { namespace Settings { class HyphenationOptions; } } }
182 namespace Aspose { namespace Words { namespace Markup { class CustomXmlPartCollection; } } }
183 namespace Aspose { namespace Words { namespace Markup { class CustomPartCollection; } } }
184 namespace Aspose { namespace Words { class AllocatedCommand; } }
185 namespace Aspose { namespace Words { class KeyMap; } }
186 namespace Aspose { namespace Words { class VariableCollection; } }
187 namespace Aspose { namespace Words { class DigitalSignatureCollection; } }
188 namespace Aspose { namespace Words { namespace Fonts { class FontSettings; } } }
189 namespace Aspose { namespace Words { namespace Frames { class FrameSet; } } }
190 namespace Aspose { namespace Words { namespace RW { namespace Doc { class RouteSlip; } } } }
191 namespace Aspose { namespace Words { class XmlNamespaceCollection; } }
192 namespace Aspose { namespace Words { class XmlSchemaReferenceCollection; } }
193 namespace Aspose { namespace Words { namespace Revisions { class EditSession; } } }
194 namespace Aspose { namespace Words { namespace Licensing { class VentureLicense; } } }
195 namespace Aspose { namespace Words { namespace Layout { namespace PreAps { class PageLayout; } } } }
196 namespace Aspose { namespace Words { namespace Drawing { class ShapeBase; } } }
197 namespace Aspose { namespace Words { namespace ApsBuilder { namespace Shapes { class CanvasInfo; } } } }
198 namespace Aspose { namespace Collections { template<typename> class StringToObjDictionary; } }
199 namespace Aspose { namespace Words { class RevisionCollection; } }
200 namespace Aspose { namespace Words { namespace Layout { class LayoutOptions; } } }
201 namespace Aspose { namespace Words { class FootnoteOptions; } }
202 namespace Aspose { namespace Words { class EndnoteOptions; } }
203 namespace Aspose { namespace Words { namespace Fields { class FieldOptions; } } }
204 namespace Aspose { namespace Words { class VbaProject; } }
205 namespace Aspose { namespace Words { namespace Fields { class FieldStart; } } }
206 namespace Aspose { namespace Words { namespace Fields { class FieldNumListLabel; } } }
207 namespace Aspose { namespace Words { class LoadOptions; } }
208 namespace Aspose { namespace Words { class Node; } }
209 namespace Aspose { namespace Words { class INodeCloningListener; } }
210 namespace Aspose { namespace Words { class DocumentVisitor; } }
211 namespace Aspose { namespace Words { enum class VisitorAction; } }
212 namespace Aspose { namespace Words { class ImportFormatOptions; } }
213 namespace Aspose { namespace Words { namespace Saving { class SaveOptions; } } }
214 namespace Aspose { namespace Words { class CleanupOptions; } }
215 namespace Aspose { namespace Words { class CompareOptions; } }
216 namespace Aspose { namespace Words { namespace Loading { class IResourceLoadingCallback; } } }
217 namespace Aspose { namespace Words { namespace Layout { namespace Core { class BookletSignature; } } } }
218 namespace Aspose { namespace Rendering { namespace Aps { class ApsPage; } } }
219 namespace Aspose { namespace Words { namespace Rendering { class ThumbnailGeneratingOptions; } } }
220 namespace Aspose { namespace Ss { class MemoryStorage; } }
221 
222 namespace Aspose {
223 
224 namespace Words {
225 
269 class Document : public Aspose::Words::DocumentBase, public Aspose::Words::ISectionAttrSource, public Aspose::Words::IWatermarkProvider
270 {
271  typedef Document ThisType;
273  typedef Aspose::Words::ISectionAttrSource BaseType1;
274  typedef Aspose::Words::IWatermarkProvider BaseType2;
275 
276  typedef ::System::BaseTypesInfo<BaseType, BaseType1, BaseType2> ThisTypeBaseTypesInfo;
277  ASPOSE_WORDS_SHARED_RTTI_INFO_DECL();
278 
279  FRIEND_FUNCTION_System_MakeObject;
280  friend class Aspose::Words::ApsBuilder::Dml::Diagram::DmlDiagramRenderingHelper;
281  friend class Aspose::Words::ApsBuilder::Math::MathContext;
282  friend class Aspose::Words::Watermark;
283  friend class Aspose::Words::Drawing::Core::Dml::DmlNodeCustomizer;
284  friend class Aspose::Words::Fields::AutoTextEntryExtractor;
285  friend class Aspose::Words::Fields::FieldIncludeTextUpdater;
286  friend class Aspose::Words::ApsBuilder::Math::MathTextElement;
287  friend class Aspose::Words::Comparison::ComparerNodeUtil;
288  friend class Aspose::Words::Comparison::FormattingComparer;
289  friend class Aspose::Words::Themes::ThemeColorUpdater;
290  friend class Aspose::Words::RW::Dml::Writer::DmlShapeValidator;
291  friend class Aspose::Words::Fields::ToaEntryExtractor;
292  friend class Aspose::Words::Validation::CustomXmlValidator;
293  friend class Aspose::Words::RW::Html::HtmlFontNameResolver;
294  friend class Aspose::Words::RW::RtfThemeWriter;
295  friend class Aspose::Words::RW::Svg::Reader::SvgToEmfConverter;
296  friend class Aspose::Words::Validation::VmlToDml::VmlShapeToDmlShapeConverter;
297  friend class Aspose::Words::RW::Docx::Reader::OpenXmlDocumentReader;
298  friend class Aspose::Words::RW::Docx::Reader::DocxReaderFactory;
299  friend class Aspose::Words::RW::Wml::Reader::WmlEquationXmlConverter;
300  friend class Aspose::Words::RW::Html::Css::New::DocumentFormatter;
301  friend class Aspose::Words::RW::Html::Css::New::StyleFormatterHtmlRules;
302  friend class Aspose::Words::RW::Html::Writer::HtmlIFrameWriter;
303  friend class Aspose::Words::RW::Mhtml::Reader::MhtmlReader;
304  friend class Aspose::Words::Fonts::EmbeddedFontCollector;
305  friend class Aspose::Words::RW::Docx::Reader::DocxDocumentReader;
306  friend class Aspose::Words::MailMerging::MailMergeRegion;
308  friend class Aspose::Words::Revisions::RevisionUtil;
310  friend class Aspose::Words::RW::Odt::Reader::OdtChartToDmlConverter;
311  friend class Aspose::Words::ApsBuilder::Dml::DmlPictureRenderer;
312  friend class Aspose::Words::ApsBuilder::Dml::ShapeEffects::DmlShapeEffectsRenderer;
313  friend class Aspose::Words::ApsBuilder::Shapes::BackgroundShapeApsBuilder;
314  friend class Aspose::Words::Layout::Core::SpanFieldContextMainText;
315  friend class Aspose::Words::Layout::Core::DocumentLayout;
319  friend class Aspose::Words::OoxmlComplianceInfo;
320  friend class Aspose::Words::RangeDocumentBuilder;
321  friend class Aspose::Words::XmlNamespace;
322  friend class Aspose::Words::Fields::FieldIndexAndTablesUtil;
323  friend class Aspose::Words::Fields::IndexEntryPageNumberInfo;
324  friend class Aspose::Words::Fonts::DocumentFontProvider;
325  friend class Aspose::Words::Markup::SdtContentUpdater;
328  friend class Aspose::Words::Validation::DmlToVml::DmlUtil;
329  friend class Aspose::Words::RW::Html::HtmlShapeLayout;
330  friend class Aspose::Words::RW::Html::Reader::HtmlFramesetReader;
331  friend class Aspose::Words::RW::Html::Reader::HtmlVmlShapeReaderContext;
332  friend class Aspose::Words::RW::Html::Writer::HtmlFramesetWriter;
333  friend class Aspose::Words::RW::Html::Writer::HtmlStylesheet;
335  friend class Aspose::Words::RW::Docx::Reader::DocxAltChunkReader;
336  friend class Aspose::Words::Drawing::Core::ImageDataCore;
337  friend class Aspose::Words::Drawing::Core::ImageDataUtil;
342  friend class Aspose::Words::Fields::FieldToc;
343  friend class Aspose::Words::Fields::FieldXE;
344  friend class Aspose::Words::Fields::ExternalActionUpdateLayout;
345  friend class Aspose::Words::Markup::SdtContentHelper;
346  friend class Aspose::Words::Layout::AttributeConverter;
347  friend class Aspose::Words::Layout::LayoutOptionsCore;
348  friend class Aspose::Words::Layout::PreAps::LayoutSpanPicture;
350  friend class Aspose::Words::DocumentBase;
351  friend class Aspose::Words::Fields::FieldUpdater;
353  friend class Aspose::Words::Validation::ListValidator;
357  friend class Aspose::Words::Themes::Theme;
358  friend class Aspose::Words::DocumentBuilder;
359  friend class Aspose::Words::Validation::DocumentPostLoader;
360  friend class Aspose::Words::Validation::DocumentValidator;
361  friend class Aspose::Words::SaveInfo;
362  friend class Aspose::Words::Drawing::Shape;
363  friend class Aspose::Words::ApsBuilder::LayoutApsBuilder;
364  friend class Aspose::Words::ApsBuilder::Shapes::DmlShapeApsBuilder;
365  friend class Aspose::Words::ApsBuilder::Shapes::ShapeApsBuilder;
366  friend class Aspose::Words::RW::FixedPageWriterBase;
367  friend class Aspose::Words::RW::Html::Writer::HtmlCoreWriter;
368  friend class Aspose::Words::RW::Odt::Writer::OdtOleWriter;
369  friend class Aspose::Words::RW::Wml::Writer::WmlEquationXmlWriter;
370  friend class Aspose::Words::RW::Docx::Reader::DocxCustomizationsReader;
371  friend class Aspose::Words::RW::Docx::Reader::DocxThemeReader;
372  friend class Aspose::Words::RW::Docx::Reader::DocxVbaReader;
373  friend class Aspose::Words::RW::Docx::Writer::DocxCustomizationsWriter;
374  friend class Aspose::Words::RW::Docx::Writer::DocxVbaWriter;
375  friend class Aspose::Words::RW::Doc::Customizations::TcgReader;
376  friend class Aspose::Words::RW::Doc::Customizations::TcgWriter;
377  friend class Aspose::Words::RW::Nrx::Writer::NrxFramesetWriter;
378  friend class Aspose::Words::Fields::FieldNumListLabelUpdater;
379  friend class Aspose::Words::Fields::FieldNumUtil;
380  friend class Aspose::Words::NodeImporter;
381  friend class Aspose::Words::StyleCollection;
382  friend class Aspose::Words::TableLayout::ParagraphMeasurer;
383  friend class Aspose::Words::Run;
384  friend class Aspose::Words::Rendering::AsposeWordsPrintDocument;
385  friend class Aspose::Words::RW::Docx::Writer::DocxDocumentWriterBase;
386  friend class Aspose::Words::RW::Imaging::Writer::ImagingWriter;
387  friend class Aspose::Words::RW::Odt::Reader::OdtBinaryObjectReader;
388  friend class Aspose::Words::RW::Odt::Writer::OdtImageWriter;
389  friend class Aspose::Words::RW::Svg::Writer::SvgWriter;
390  friend class Aspose::Words::RW::Rtf::Writer::RtfLochHichDbchGroupWriter;
391  friend class Aspose::Words::RW::Txt::Reader::TxtReader;
392  friend class Aspose::Words::RW::Odt::Reader::OdtSettingsReader;
393  friend class Aspose::Words::RW::Odt::Writer::OdtFieldWriter;
394  friend class Aspose::Words::WordUtil;
395  friend class Aspose::Words::RW::Docx::Reader::DocxReader;
396  friend class Aspose::Words::RW::Docx::Reader::DocxWebSettingsReader;
397  friend class Aspose::Words::RW::Docx::Writer::DocxDocumentWriter;
398  friend class Aspose::Words::RW::Docx::Writer::DocxWriter;
399  friend class Aspose::Words::RW::Doc::DocPrFiler;
400  friend class Aspose::Words::RW::Doc::Reader::DocReader;
401  friend class Aspose::Words::RW::Doc::Writer::DocWriter;
402  friend class Aspose::Words::RW::Html::Reader::HtmlListReader;
403  friend class Aspose::Words::RW::Html::Reader::HtmlReader;
404  friend class Aspose::Words::RW::Odt::Writer::OdtTextPropertiesWriter;
405  friend class Aspose::Words::RW::Odt::Writer::OdtSettingsWriter;
406  friend class Aspose::Words::RW::Rtf::Reader::RtfModelBuilder;
407  friend class Aspose::Words::RW::Rtf::Reader::RtfReader;
408  friend class Aspose::Words::RW::Rtf::Reader::RtfReaderContext;
409  friend class Aspose::Words::RW::Rtf::Reader::RtfRunPrReader;
410  friend class Aspose::Words::RW::Rtf::Writer::RtfRunPrWriter;
411  friend class Aspose::Words::RW::Rtf::Writer::RtfWriterContext;
412  friend class Aspose::Words::RW::Wml::Reader::WmlReader;
413  friend class Aspose::Words::RW::Wml::Writer::WmlFontsWriter;
414  friend class Aspose::Words::RW::Wml::Writer::WmlWriter;
415  friend class Aspose::Words::RW::Xaml::Writer::XamlRunWriter;
416  friend class Aspose::Words::RW::Xaml::Writer::XamlWriter;
417 
418 public:
419  using Aspose::Words::DocumentBase::Clone;
420 
421 public:
422 
431  ASPOSE_WORDS_SHARED_API System::String get_AttachedTemplate();
432 
434  ASPOSE_WORDS_SHARED_API void set_AttachedTemplate(System::String value);
435 
440  ASPOSE_WORDS_SHARED_API bool get_AutomaticallyUpdateStyles();
441 
443  ASPOSE_WORDS_SHARED_API void set_AutomaticallyUpdateStyles(bool value);
444 
448  ASPOSE_WORDS_SHARED_API bool get_ShadeFormData();
449 
453  ASPOSE_WORDS_SHARED_API void set_ShadeFormData(bool value);
454 
465  ASPOSE_WORDS_SHARED_API bool get_TrackRevisions();
466 
468  ASPOSE_WORDS_SHARED_API void set_TrackRevisions(bool value);
469 
473  ASPOSE_WORDS_SHARED_API bool get_ShowGrammaticalErrors();
474 
478  ASPOSE_WORDS_SHARED_API void set_ShowGrammaticalErrors(bool value);
479 
483  ASPOSE_WORDS_SHARED_API bool get_ShowSpellingErrors();
484 
488  ASPOSE_WORDS_SHARED_API void set_ShowSpellingErrors(bool value);
489 
493  virtual ASPOSE_WORDS_SHARED_API Aspose::Words::NodeType get_NodeType() const;
494 
499 
504 
509 
514 
531 
536 
544 
552 
557 
562 
568 
580 
583 
588 
595  ASPOSE_WORDS_SHARED_API bool get_HasRevisions();
596 
603  ASPOSE_WORDS_SHARED_API bool get_HasMacros();
604 
609 
620  ASPOSE_WORDS_SHARED_API int32_t get_VersionsCount();
621 
629  ASPOSE_WORDS_SHARED_API double get_DefaultTabStop();
630 
632  ASPOSE_WORDS_SHARED_API void set_DefaultTabStop(double value);
633 
638 
648 
651 
665 
668 
673 
685 
688 
695  ASPOSE_WORDS_SHARED_API System::String get_OriginalFileName() const;
696 
703  ASPOSE_WORDS_SHARED_API Aspose::Words::LoadFormat get_OriginalLoadFormat() const;
704 
714 
726 
736 
739 
746  ASPOSE_WORDS_SHARED_API int32_t get_PageCount();
747 
756 
761 
768  ASPOSE_WORDS_SHARED_API Aspose::Words::RevisionsView get_RevisionsView() const;
769 
771  ASPOSE_WORDS_SHARED_API void set_RevisionsView(Aspose::Words::RevisionsView value);
772 
777 
782 
787 
792  ASPOSE_WORDS_SHARED_API bool get_RemovePersonalInformation();
793 
795  ASPOSE_WORDS_SHARED_API void set_RemovePersonalInformation(bool value);
796 
801 
806 
815  ASPOSE_WORDS_SHARED_API Document();
816 
827  ASPOSE_WORDS_SHARED_API Document(System::String fileName);
828 
842  ASPOSE_WORDS_SHARED_API Document(System::String fileName, System::SharedPtr<Aspose::Words::LoadOptions> loadOptions);
843 
862  ASPOSE_WORDS_SHARED_API Document(System::SharedPtr<System::IO::Stream> stream);
863 
884 
890 
904  virtual ASPOSE_WORDS_SHARED_API bool Accept(System::SharedPtr<Aspose::Words::DocumentVisitor> visitor);
905 
911  ASPOSE_WORDS_SHARED_API void AppendDocument(System::SharedPtr<Aspose::Words::Document> srcDoc, Aspose::Words::ImportFormatMode importFormatMode);
912 
920 
928 
937 
946 
954 
963 
967  ASPOSE_WORDS_SHARED_API void EnsureMinimum();
968 
973  ASPOSE_WORDS_SHARED_API void AcceptAllRevisions();
974 
989  ASPOSE_WORDS_SHARED_API void Protect(Aspose::Words::ProtectionType type);
990 
1003  ASPOSE_WORDS_SHARED_API void Protect(Aspose::Words::ProtectionType type, System::String password);
1004 
1013  ASPOSE_WORDS_SHARED_API void Unprotect();
1014 
1025  ASPOSE_WORDS_SHARED_API bool Unprotect(System::String password);
1026 
1039  ASPOSE_WORDS_SHARED_API void UpdateWordCount();
1040 
1048  ASPOSE_WORDS_SHARED_API void UpdateWordCount(bool updateLinesCount);
1049 
1060  ASPOSE_WORDS_SHARED_API void UpdateTableLayout();
1061 
1071  ASPOSE_WORDS_SHARED_API void UpdateListLabels();
1072 
1079  ASPOSE_WORDS_SHARED_API void RemoveMacros();
1080 
1096  ASPOSE_WORDS_SHARED_API void UpdateFields();
1097 
1105  ASPOSE_WORDS_SHARED_API void UnlinkFields();
1106 
1115  ASPOSE_WORDS_SHARED_API void NormalizeFieldTypes();
1116 
1130  ASPOSE_WORDS_SHARED_API int32_t JoinRunsWithSameFormatting();
1131 
1151  ASPOSE_WORDS_SHARED_API void ExpandTableStylesToDirectFormatting();
1152 
1156  ASPOSE_WORDS_SHARED_API void Cleanup();
1157 
1161  ASPOSE_WORDS_SHARED_API void Cleanup(System::SharedPtr<Aspose::Words::CleanupOptions> options);
1162 
1166  ASPOSE_WORDS_SHARED_API void RemoveExternalSchemaReferences();
1167 
1184  ASPOSE_WORDS_SHARED_API void StartTrackRevisions(System::String author, System::DateTime dateTime);
1185 
1201  ASPOSE_WORDS_SHARED_API void StartTrackRevisions(System::String author);
1202 
1207  ASPOSE_WORDS_SHARED_API void StopTrackRevisions();
1208 
1219  ASPOSE_WORDS_SHARED_API void Compare(System::SharedPtr<Aspose::Words::Document> document, System::String author, System::DateTime dateTime);
1220 
1226 
1235  ASPOSE_WORDS_SHARED_API void CopyStylesFromTemplate(System::String template_);
1236 
1246 
1259  ASPOSE_WORDS_SHARED_API void UpdatePageLayout();
1260 
1270  ASPOSE_WORDS_SHARED_API System::Drawing::SizeF RenderToScale(int32_t pageIndex, System::SharedPtr<System::Drawing::Graphics> graphics, float x, float y, float scale);
1271 
1281  ASPOSE_WORDS_SHARED_API float RenderToSize(int32_t pageIndex, System::SharedPtr<System::Drawing::Graphics> graphics, float x, float y, float width, float height);
1282  ASPOSE_WORDS_SHARED_API void Add(System::SharedPtr<Aspose::Words::Drawing::Shape> watermark);
1284 
1288  ASPOSE_WORDS_SHARED_API void Remove();
1289 
1294  ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Rendering::PageInfo> GetPageInfo(int32_t pageIndex);
1295 
1305 
1309  ASPOSE_WORDS_SHARED_API void UpdateThumbnail();
1310  ASPOSE_WORDS_SHARED_API System::SharedPtr<System::Object> GetDirectSectionAttr(int32_t key);
1311  ASPOSE_WORDS_SHARED_API System::SharedPtr<System::Object> FetchInheritedSectionAttr(int32_t key);
1312  ASPOSE_WORDS_SHARED_API System::SharedPtr<System::Object> FetchSectionAttr(int32_t key);
1313  ASPOSE_WORDS_SHARED_API void SetSectionAttr(int32_t key, System::SharedPtr<System::Object> value);
1314  ASPOSE_WORDS_SHARED_API void ClearSectionAttrs();
1315 
1316 protected:
1317 
1319  bool get_HasCustomizations();
1320  bool get_HasAttachedToolbars();
1321  bool get_HasAllocatedCommands();
1322  bool get_HasKeyMaps();
1323  System::ArrayPtr<uint8_t> get_DropdownStrings() const;
1324  void set_DropdownStrings(System::ArrayPtr<uint8_t> value);
1325  System::SharedPtr<System::IO::MemoryStream> get_CompObj() const;
1326  void set_CompObj(System::SharedPtr<System::IO::MemoryStream> value);
1327  System::ArrayPtr<uint8_t> get_MsoEnvelope() const;
1328  void set_MsoEnvelope(System::ArrayPtr<uint8_t> value);
1329  System::ArrayPtr<uint8_t> get_AttachedToolbars() const;
1330  void set_AttachedToolbars(System::ArrayPtr<uint8_t> value);
1335  Aspose::Words::VbaDocumentEvents get_VbaDocumentEvents() const;
1336  void set_VbaDocumentEvents(Aspose::Words::VbaDocumentEvents value);
1337  System::String get_BaseUri() const;
1338  void set_BaseUri(System::String value);
1339  System::String get_SavedFileName() const;
1340  System::SharedPtr<Aspose::Words::Fonts::FontSettings> get_EffectiveFontSettings();
1341  virtual ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Fonts::DocumentFontProvider> get_FontProvider();
1343  void set_FrameSet(System::SharedPtr<Aspose::Words::Frames::FrameSet> value);
1345  void set_RouteSlip(System::SharedPtr<Aspose::Words::RW::Doc::RouteSlip> value);
1351  void set_VentureLicense(System::SharedPtr<Aspose::Words::Licensing::VentureLicense> value);
1352  virtual ASPOSE_WORDS_SHARED_API bool get_IsTrackRevisionsEnabled();
1353  System::SharedPtr<Aspose::Words::OoxmlComplianceInfo> get_ComplianceInfo() const;
1354  void set_ComplianceInfo(System::SharedPtr<Aspose::Words::OoxmlComplianceInfo> value);
1355  bool get_HasPageLayout();
1360  System::DateTime get_CurrentDateTimeCache();
1361 
1362  static const int32_t VbaSignaturePrefixLength;
1363  int64_t FixedPageFormatStoringMilliseconds;
1364 
1366 
1367  virtual ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Themes::Theme> GetThemeInternal();
1368  void SetThemeInternal(System::SharedPtr<Aspose::Words::Themes::Theme> theme);
1369  int32_t GetNextTocEntryBookmarkIndex();
1370  virtual ASPOSE_WORDS_SHARED_API System::SharedPtr<Aspose::Words::Node> Clone(bool isCloneChildren, System::SharedPtr<Aspose::Words::INodeCloningListener> cloningListener);
1371  virtual ASPOSE_WORDS_SHARED_API Aspose::Words::VisitorAction AcceptStart(System::SharedPtr<Aspose::Words::DocumentVisitor> visitor);
1372  virtual ASPOSE_WORDS_SHARED_API Aspose::Words::VisitorAction AcceptEnd(System::SharedPtr<Aspose::Words::DocumentVisitor> visitor);
1373  virtual ASPOSE_WORDS_SHARED_API void WriteDocToHttResponse(System::SharedPtr<System::Web::HttpResponse> response, System::ArrayPtr<uint8_t> docData, int32_t dataLength, System::String headerName, System::String headerValue);
1374  System::String MapFileName(System::String fileName);
1375  virtual ASPOSE_WORDS_SHARED_API bool CanInsert(System::SharedPtr<Aspose::Words::Node> newChild);
1378  void LoadBlank();
1379  virtual ASPOSE_WORDS_SHARED_API void SuspendTrackRevisions();
1380  virtual ASPOSE_WORDS_SHARED_API void ResumeTrackRevisions();
1384  void InvalidateLayoutDocument();
1385  System::Drawing::SizeF RenderBookletSignatureToScale(System::SharedPtr<Aspose::Words::Layout::Core::BookletSignature> bookletSignature, System::Drawing::SizeF bookletPageSize, int32_t paperTray, System::SharedPtr<System::Drawing::Graphics> graphics, float x, float y, float scale);
1386  float RenderBookletSignatureToSize(System::SharedPtr<Aspose::Words::Layout::Core::BookletSignature> bookletSignature, System::Drawing::SizeF bookletPageSize, int32_t paperTray, System::SharedPtr<System::Drawing::Graphics> graphics, float x, float y, float width, float height);
1387  System::SharedPtr<Aspose::Rendering::Aps::ApsPage> LayoutPageToAps(int32_t pageIndex);
1391  void CheckPageIndexAndCount(int32_t pageIndex, int32_t pageCount);
1392  void ReadVbaProject(System::SharedPtr<Aspose::Ss::MemoryStorage> storage, System::ArrayPtr<uint8_t> signature);
1395  void ClearFieldNumListLabels();
1396 
1397  virtual ASPOSE_WORDS_SHARED_API ~Document();
1398 
1399  ASPOSE_WORDS_SHARED_API System::Object::shared_members_type GetSharedMembers() override;
1400 
1401 private:
1402 
1403  static System::ArrayPtr<char16_t>& gDirectoryDelimiters();
1404 
1413  System::ArrayPtr<uint8_t> mDropdownStrings;
1415  System::ArrayPtr<uint8_t> mMsoEnvelope;
1416  System::ArrayPtr<uint8_t> mAttachedToolbars;
1419  Aspose::Words::VbaDocumentEvents mVbaDocumentEvents;
1421  System::String mOriginalFileName;
1422  System::String mSavedFileName;
1423  Aspose::Words::LoadFormat mOriginalLoadFormat;
1424  System::String mBaseUri;
1437  int32_t mTocEntryBookmarkIndex;
1441  bool mTrackRevisionsEnabled;
1442  int32_t mIsTrackRevisionsLockCount;
1444  System::DateTime mCurrentDateTimeCache;
1447  Aspose::Words::RevisionsView mRevisionsView;
1450 
1451  static void __StaticConstructor__();
1452 
1453  void ResolveSdtXmlMapping();
1455  void SetupLoadWarningCallback(System::SharedPtr<Aspose::Words::LoadOptions> loadOptions);
1456  void AutoUpdateTrackRevisions();
1459  void UpdateFieldsBeforeSave();
1460  void SetLocaleDefaultsForNewDocument();
1461  void RemoveSectionUnlock(Aspose::Words::ProtectionType type);
1462  ThisType* CppMemberwiseClone() const override { return new ThisType(*this); }
1463 
1464 };
1465 
1466 }
1467 }
void UpdateListLabels()
Updates list labels for all list items in the document.
System::SharedPtr< Aspose::Words::Fields::FieldOptions > get_FieldOptions()
Gets a FieldOptions object that represents options to control field handling in the document.
Specifies a list of persisted task pane objects.
Definition: TaskPaneCollection.h:26
void set_ShadeFormData(bool value)
Specifies whether to turn on the gray shading on form fields.
@ Doc
Microsoft Word 95 or Word 97 - 2003 Document.
Allows to extract plain-text representation of the document's content.
Definition: PlaintextDocument.h:31
void set_ShowGrammaticalErrors(bool value)
Specifies whether to display grammar errors in this document.
@ Shape
A drawing object, such as an OfficeArt shape, image or an OLE object.
bool get_HasRevisions()
Returns true if the document has any tracked changes.
Can be used to specify additional options when saving a document into the Pdf format.
Definition: PdfSaveOptions.h:44
System::Details::SharedMembersType shared_members_type
void UpdateTableLayout()
Updates widths of cells and tables in the document according to their preferred widths and content....
@ Odt
ODF Text Document.
System::String get_AttachedTemplate()
Gets or sets the full path of the template attached to the document.
System::SharedPtr< Aspose::Words::Drawing::Shape > Get()
void set_AutomaticallyUpdateStyles(bool value)
Setter for Aspose::Words::Document::get_AutomaticallyUpdateStyles.
void AcceptAllRevisions()
Accepts all tracked changes in the document.
void set_RemovePersonalInformation(bool value)
Setter for Aspose::Words::Document::get_RemovePersonalInformation.
Represents the root element for a glossary document within a Word document. A glossary document is a ...
Definition: GlossaryDocument.h:55
@ Html
Implements the XE field.
Definition: FieldXE.h:43
double get_DefaultTabStop()
Gets or sets the interval (in points) between the default tab stops.
OoxmlCompliance
Allows to specify which OOXML specification will be used when saving in the DOCX format.
Definition: OoxmlCompliance.h:25
@ Shapes
Module that renders ordinary shapes.
void set_RevisionsView(Aspose::Words::RevisionsView value)
Setter for Aspose::Words::Document::get_RevisionsView.
Can be used to specify additional options when saving a document into the Ps format.
Definition: PsSaveOptions.h:28
@ Nrx
Common modules that are shared between DOCX/WML reader/writer modules.
Can be used to specify additional options when saving a document into the Svg format.
Definition: SvgSaveOptions.h:33
void set_DefaultTabStop(double value)
Setter for Aspose::Words::Document::get_DefaultTabStop.
Represents information about a particular document page.
Definition: PageInfo.h:42
System::SharedPtr< Aspose::Words::Saving::SaveOutputParameters > Save(System::String fileName)
Saves the document to a file. Automatically determines the save format from the extension.
@ Dml
Drawing Markup Language is used to define the shape.
void UpdateThumbnail(System::SharedPtr< Aspose::Words::Rendering::ThumbnailGeneratingOptions > options)
Updates Thumbnail of the document according to the specified options.
System::SharedPtr< Aspose::Words::EndnoteOptions > get_EndnoteOptions()
Provides options that control numbering and positioning of endnotes in this document.
Can be used to specify additional options when saving a document into the HtmlFixed format.
Definition: HtmlFixedSaveOptions.h:35
Provides methods for signing document.
Definition: DigitalSignatureUtil.h:43
Represents a Word document.
Definition: Document.h:270
@ FieldTime
Specifies the TIME field.
System::SharedPtr< Aspose::Words::VbaProject > get_VbaProject() const
Gets a VbaProject.
void ExpandTableStylesToDirectFormatting()
Converts formatting specified in table styles into direct formatting on tables in the document.
void Unprotect()
Removes protection from the document regardless of the password.
void NormalizeFieldTypes()
Changes field type values FieldType of FieldStart, FieldSeparator, FieldEnd in the whole document so ...
void StartTrackRevisions(System::String author, System::DateTime dateTime)
Starts automatically marking all further changes you make to the document programmatically as revisio...
void set_VbaProject(System::SharedPtr< Aspose::Words::VbaProject > value)
Sets a VbaProject.
void set_PackageCustomParts(System::SharedPtr< Aspose::Words::Markup::CustomPartCollection > value)
Setter for Aspose::Words::Document::get_PackageCustomParts.
System::SharedPtr< Aspose::Words::Markup::CustomXmlPartCollection > get_CustomXmlParts() const
Gets or sets the collection of Custom XML Data Storage Parts.
void Cleanup(System::SharedPtr< Aspose::Words::CleanupOptions > options)
Cleans unused styles and lists from the document depending on given CleanupOptions.
System::SharedPtr< Aspose::Words::FootnoteOptions > get_FootnoteOptions()
Provides options that control numbering and positioning of footnotes in this document.
System::SharedPtr< Aspose::Words::Settings::HyphenationOptions > get_HyphenationOptions()
Provides access to document hyphenation options.
Implements the TIME field.
Definition: FieldTime.h:32
Aspose::Words::LoadFormat get_OriginalLoadFormat() const
Gets the format of the original document that was loaded into this object.
@ Rtf
RTF format.
Document(System::String fileName, System::SharedPtr< Aspose::Words::LoadOptions > loadOptions)
Opens an existing document from a file. Allows to specify additional options such as an encryption pa...
bool get_RemovePersonalInformation()
Gets or sets a flag indicating that Microsoft Word will remove all user information from comments,...
bool get_TrackRevisions()
True if changes are tracked when this document is edited in Microsoft Word.
Enumerates page layout entities of a document.
Definition: LayoutEnumerator.h:41
System::SharedPtr< Aspose::Words::DigitalSignatureCollection > get_DigitalSignatures() const
Gets the collection of digital signatures for this document and their validation results.
Aspose::Words::ProtectionType get_ProtectionType()
Gets the currently active document protection type.
System::SharedPtr< Aspose::Words::RevisionCollection > get_Revisions()
Gets a collection of revisions (tracked changes) that exist in this document.
Aspose::Words::RevisionsView get_RevisionsView() const
Gets or sets a value indicating whether to work with the original or revised version of a document.
A collection of Style objects that represent both the built-in and user-defined styles in a document.
Definition: StyleCollection.h:124
Can be used to specify additional options when saving a document into the Pcl format.
Definition: PclSaveOptions.h:31
@ Svg
Saves the document in the Svg (Scalable Vector Graphics) format.
System::SharedPtr< Aspose::Words::Settings::WriteProtection > get_WriteProtection()
Provides access to the document write protection options.
System::SharedPtr< Aspose::Words::SectionCollection > get_Sections()
Returns a collection that represents all sections in the document.
@ Words
System::SharedPtr< Aspose::Words::VariableCollection > get_Variables()
Returns the collection of variables added to a document or template.
SaveFormat
Indicates the format in which the document is saved.
Definition: SaveFormat.h:28
void set_MailMergeSettings(System::SharedPtr< Aspose::Words::Settings::MailMergeSettings > value)
Setter for Aspose::Words::Document::get_MailMergeSettings.
void set_GlossaryDocument(System::SharedPtr< Aspose::Words::BuildingBlocks::GlossaryDocument > value)
Setter for Aspose::Words::Document::get_GlossaryDocument.
void set_CustomXmlParts(System::SharedPtr< Aspose::Words::Markup::CustomXmlPartCollection > value)
Setter for Aspose::Words::Document::get_CustomXmlParts.
Provides the abstract base class for a main document and a glossary document of a Word document.
Definition: DocumentBase.h:211
Allows to efficiently perform repeated import of nodes from one document to another.
Definition: NodeImporter.h:91
System::SharedPtr< Aspose::Words::MailMerging::MailMerge > get_MailMerge()
Returns a MailMerge object that represents the mail merge functionality for the document.
System::SharedPtr< Aspose::Words::Rendering::PageInfo > GetPageInfo(int32_t pageIndex)
Gets the page size, orientation and other information about a page that might be useful for printing ...
Represents class to work with document watermark.
Definition: Watermark.h:34
void EnsureMinimum()
If the document contains no sections, creates one section with one paragraph.
void set_FontSettings(System::SharedPtr< Aspose::Words::Fonts::FontSettings > value)
Setter for Aspose::Words::Document::get_FontSettings.
System::SharedPtr< Aspose::Words::Settings::CompatibilityOptions > get_CompatibilityOptions()
Provides access to document compatibility options (that is, the user preferences entered on the Compa...
void Remove()
Removes itself from the parent.
Can be used to specify additional options when saving a document into the Xps format.
Definition: XpsSaveOptions.h:28
void Compare(System::SharedPtr< Aspose::Words::Document > document, System::String author, System::DateTime dateTime)
Compares this document with another document producing changes as number of edit and format revisions...
Aspose::Words::Saving::OoxmlCompliance get_Compliance()
Gets the OOXML compliance version determined from the loaded document content. Makes sense only for O...
Can be used to specify additional options when saving a document into the XamlFixed format.
Definition: XamlFixedSaveOptions.h:31
@ New
Other document is used as a base during comparison.
void UpdateThumbnail()
Updates Thumbnail of the document using default options.
System::SharedPtr< Aspose::Words::Saving::SaveOutputParameters > Save(System::SharedPtr< System::IO::Stream > stream, System::SharedPtr< Aspose::Words::Saving::SaveOptions > saveOptions)
Saves the document to a stream using the specified save options.
int32_t get_PageCount()
Gets the number of pages in the document as calculated by the most recent page layout operation.
System::SharedPtr< Aspose::Words::Markup::CustomPartCollection > get_PackageCustomParts() const
Gets or sets the collection of custom parts (arbitrary content) that are linked to the OOXML package ...
void UpdatePageLayout()
Rebuilds the page layout of the document.
This class allows to compute page numbers of document nodes.
Definition: LayoutCollector.h:44
Implements the FILENAME field.
Definition: FieldFileName.h:41
System::SharedPtr< Aspose::Words::Saving::SaveOutputParameters > Save(System::String fileName, System::SharedPtr< Aspose::Words::Saving::SaveOptions > saveOptions)
Saves the document to a file using the specified save options.
System::SharedPtr< Aspose::Words::Properties::BuiltInDocumentProperties > get_BuiltInDocumentProperties() const
Returns a collection that represents all the built-in document properties of the document.
System::String get_OriginalFileName() const
Gets the original file name of the document.
void AppendDocument(System::SharedPtr< Aspose::Words::Document > srcDoc, Aspose::Words::ImportFormatMode importFormatMode, System::SharedPtr< Aspose::Words::ImportFormatOptions > importFormatOptions)
Appends the specified document to the end of this document.
System::SharedPtr< Aspose::Words::Section > get_FirstSection()
Gets the first section in the document.
Document(System::String fileName)
Opens an existing document from a file. Automatically detects the file format.
void Add(System::SharedPtr< Aspose::Words::Drawing::Shape > watermark)
System::SharedPtr< Aspose::Words::Saving::SaveOutputParameters > Save(System::SharedPtr< System::IO::Stream > stream, Aspose::Words::SaveFormat saveFormat)
Saves the document to a stream using the specified format.
void set_TrackRevisions(bool value)
Setter for Aspose::Words::Document::get_TrackRevisions.
void Compare(System::SharedPtr< Aspose::Words::Document > document, System::String author, System::DateTime dateTime, System::SharedPtr< Aspose::Words::CompareOptions > options)
Compares this document with another document producing changes as a number of edit and format revisio...
bool Unprotect(System::String password)
Removes protection from the document if a correct password is specified.
bool get_ShowSpellingErrors()
Specifies whether to display spelling errors in this document.
void set_AttachedTemplate(System::String value)
Setter for Aspose::Words::Document::get_AttachedTemplate.
void set_ShowSpellingErrors(bool value)
Specifies whether to display spelling errors in this document.
Represents an object in the drawing layer, such as an AutoShape, textbox, freeform,...
Definition: Shape.h:145
bool get_HasMacros()
Returns true if the document has a VBA project (macros).
void Protect(Aspose::Words::ProtectionType type)
Protects the document from changes without changing the existing password or assigns a random passwor...
void CopyStylesFromTemplate(System::SharedPtr< Aspose::Words::Document > template_)
Copies styles from the specified template to a document.
Provides methods to insert text, images and other content, specify font, paragraph and section format...
Definition: DocumentBuilder.h:130
Implements the TOC field.
Definition: FieldToc.h:57
void RemoveMacros()
Removes all macros (the VBA project) as well as toolbars and command customizations from the document...
ProtectionType
Protection type for a document.
Definition: ProtectionType.h:23
Implements the DATE field.
Definition: FieldDate.h:35
System::SharedPtr< Aspose::Words::Settings::ViewOptions > get_ViewOptions()
Provides options to control how the document is displayed in Microsoft Word.
void CopyStylesFromTemplate(System::String template_)
Copies styles from the specified template to a document.
@ Xaml
Module that reads/writes Xaml files.
System::SharedPtr< Aspose::Words::Properties::CustomDocumentProperties > get_CustomDocumentProperties()
Returns a collection that represents all the custom document properties of the document.
@ Docx
Office Open XML WordprocessingML Document (macro-free).
System::SharedPtr< Aspose::Words::BuildingBlocks::GlossaryDocument > get_GlossaryDocument() const
Gets or sets the glossary document within this document or template. A glossary document is a storage...
A collection of Section objects in the document.
Definition: SectionCollection.h:35
NodeType
Specifies the type of a Word document node.
Definition: NodeType.h:23
CompareOptions
System::SharedPtr< Aspose::Words::Themes::Theme > get_Theme()
Gets the Theme object for this document.
@ FieldStart
A special character that designates the start of a Word field.
@ FieldPageRef
Specifies the PAGEREF field.
System::SharedPtr< Aspose::Words::Watermark > get_Watermark()
Provides access to the document watermark.
float RenderToSize(int32_t pageIndex, System::SharedPtr< System::Drawing::Graphics > graphics, float x, float y, float width, float height)
Renders a document page into a Graphics object to a specified size.
Allows to specify additional metafile rendering options.
Definition: MetafileRenderingOptions.h:41
ImportFormatMode
Specifies how formatting is merged when importing content from another document.
Definition: ImportFormatMode.h:64
@ PageLayout
The document shall be opened in a view that displays the document as it will print.
void AppendDocument(System::SharedPtr< Aspose::Words::Document > srcDoc, Aspose::Words::ImportFormatMode importFormatMode)
Appends the specified document to the end of this document.
virtual Aspose::Words::NodeType get_NodeType() const
Returns NodeType.Document.
@ Node
Implements the PAGEREF field.
Definition: FieldPageRef.h:41
void RemoveExternalSchemaReferences()
Removes external XML schema references from this document.
@ FieldDate
Specifies the DATE field.
@ GlossaryDocument
A glossary document within the main document.
System::SharedPtr< Aspose::Words::Document > Clone()
Performs a deep copy of the Document.
@ Layout
Module that builds a document layout.
virtual bool Accept(System::SharedPtr< Aspose::Words::DocumentVisitor > visitor)
Accepts a visitor.
Document(System::SharedPtr< System::IO::Stream > stream, System::SharedPtr< Aspose::Words::LoadOptions > loadOptions)
Opens an existing document from a stream. Allows to specify additional options such as an encryption ...
System::SharedPtr< Aspose::Words::Layout::LayoutOptions > get_LayoutOptions() const
Gets a LayoutOptions object that represents options to control the layout process of this document.
System::SharedPtr< Aspose::Words::Fonts::FontSettings > get_FontSettings() const
Gets or sets document font settings.
RevisionsView
Allows to specify whether to work with the original or revised version of a document.
Definition: RevisionsView.h:23
System::SharedPtr< Aspose::Words::Section > get_LastSection()
Gets the last section in the document.
@ Run
A run of text.
void UnlinkFields()
Unlinks fields in the whole document.
Document()
Creates a blank Word document.
System::Drawing::SizeF RenderToScale(int32_t pageIndex, System::SharedPtr< System::Drawing::Graphics > graphics, float x, float y, float scale)
Renders a document page into a Graphics object to a specified scale.
Document(System::SharedPtr< System::IO::Stream > stream)
Opens an existing document from a stream. Automatically detects the file format.
System::SharedPtr< Aspose::Words::Saving::SaveOutputParameters > Save(System::String fileName, Aspose::Words::SaveFormat saveFormat)
Saves the document to a file in the specified format.
void StopTrackRevisions()
Stops automatic marking of document changes as revisions.
bool get_AutomaticallyUpdateStyles()
Gets or sets a flag indicating whether the styles in the document are updated to match the styles in ...
void Protect(Aspose::Words::ProtectionType type, System::String password)
Protects the document from changes and optionally sets a protection password.
Represents document Theme, and provides access to main theme parts including MajorFonts,...
Definition: Theme.h:61
VisitorAction
Allows the visitor to control the enumeration of nodes.
Definition: VisitorAction.h:23
Represents a run of characters with the same font formatting.
Definition: Run.h:79
LoadFormat
Indicates the format of the document that is to be loaded.
Definition: LoadFormat.h:24
bool get_ShadeFormData()
Specifies whether to turn on the gray shading on form fields.
int32_t JoinRunsWithSameFormatting()
Joins runs with same formatting in all paragraphs of the document.
bool get_ShowGrammaticalErrors()
Specifies whether to display grammar errors in this document.
void StartTrackRevisions(System::String author)
Starts automatically marking all further changes you make to the document programmatically as revisio...
void UpdateFields()
Updates the values of fields in the whole document.
int32_t get_VersionsCount()
Gets the number of document versions that was stored in the DOC document.
Implement this interface if you want to control how Aspose.Words loads external resource when importi...
Definition: IResourceLoadingCallback.h:31
void Cleanup()
Cleans unused styles and lists from the document.
System::SharedPtr< Aspose::Words::WebExtensions::TaskPaneCollection > get_WebExtensionTaskPanes() const
Returns a collection that represents a list of task pane add-ins.
System::SharedPtr< Aspose::Words::Settings::MailMergeSettings > get_MailMergeSettings()
Gets or sets the object that contains all of the mail merge information for a document.
void UpdateWordCount()
Updates word count properties of the document.
@ Mhtml
MHTML (Web archive) format.
@ FieldFileName
Specifies the FILENAME field.
void UpdateWordCount(bool updateLinesCount)
Updates word count properties of the document, optionally updates Lines property.