Document.h
1 #pragma once
2 // Copyright (c) 2001-2024 Aspose Pty Ltd. All Rights Reserved.
3 
4 // C# preprocessor directive: #if DEBUG
5 
6 // C# INACTIVE CODE:
7 // using Aspose.Pdf.Diagnostics;
8 
9 // C# preprocessor directive: #endif
10 
11 
12 // C# preprocessor directive: #if !NETCORE
13 
14 
15 // C# preprocessor directive: #endif
16 
17 
18 // C# preprocessor directive: #if __cplusplus
19 
20 
21 // C# preprocessor directive: #else
22 
23 
24 // C# preprocessor directive: #endif
25 
26 
27 // C# preprocessor directive: #if !CPLUSPLUS && !NET40
28 
29 // C# INACTIVE CODE:
30 // using System.Threading.Tasks;
31 // using Aspose.Html.IO;
32 // using Aspose.Pcl.Parser;
33 // using Aspose.Pdf.Engine.IO.ConvertStrategies.ConvertHelpers;
34 
35 // C# preprocessor directive: #endif
36 
37 
38 #include <system/reflection/assembly_type_registration.h>
39 #include <system/nullable.h>
40 #include <system/multicast_delegate.h>
41 #include <system/idisposable.h>
42 #include <system/guid.h>
43 #include <system/event.h>
44 #include <system/enum_helpers.h>
45 #include <system/details/pointer_collection_helpers.h>
46 #include <system/collections/ilist.h>
47 #include <system/array.h>
48 #include <cstdint>
49 
50 #include "Aspose.PDF.Cpp/Text/TextOptions/TextEditOptions.h"
51 #include "Aspose.PDF.Cpp/Security/CryptoAlgorithm.h"
52 #include "Aspose.PDF.Cpp/Optimization/OptimizationOptions.h"
53 #include "Aspose.PDF.Cpp/License/IVentureLicenseTarget.h"
54 #include "Aspose.PDF.Cpp/ISupportsMemoryCleanup.h"
55 #include "Aspose.PDF.Cpp/IO/ConvertStrategies/PdfFormat.h"
56 #include "Aspose.PDF.Cpp/InteractiveFeatures/Forms/Form.h"
57 #include "Aspose.PDF.Cpp/HtmlSaveOptions.h"
58 #include "Aspose.PDF.Cpp/CommonData/Text/Fonts/FontSubstitutions/IFontSubstitutionRegistrator.h"
59 #include "Aspose.PDF.Cpp/CommonData/IDocumentSecondaryStrategies.h"
60 #include "Aspose.PDF.Cpp/aspose_pdf_api_defs.h"
61 
62 namespace Aspose
63 {
64 namespace Pcl
65 {
66 namespace Parser
67 {
68 class PCLParser;
69 } // namespace Parser
70 } // namespace Pcl
71 namespace Pdf
72 {
73 namespace Annotations
74 {
75 class Annotation;
76 class AnnotationCollection;
77 class DocumentActionCollection;
78 class FdfReader;
79 class FitRExplicitDestination;
80 class GoToAction;
81 class IAppointment;
82 class LaunchAction;
83 class MarkupAnnotation;
84 class NamedDestination;
85 class PDF3DAnnotation;
86 class PDF3DArtwork;
87 class PDF3DCrossSection;
88 class PDF3DCrossSectionArray;
89 class PDF3DStream;
90 class PDF3DView;
91 class PDF3DViewArray;
92 class RedactionAnnotation;
93 class WidgetAnnotation;
94 class XYZExplicitDestination;
95 } // namespace Annotations
96 class ApsFragment;
97 class ApsFragmentCollection;
98 class ApsPageFilter;
99 class ApsToPdfConverter;
100 class ApsUsingConverter;
101 class Artifact;
102 class ArtifactCollection;
103 class Collection;
104 namespace Collections
105 {
106 template <typename, typename> class AsposeHashDictionary;
107 } // namespace Collections
108 class Color;
109 enum class ContentDisposition;
110 class ConversionPipeline;
111 enum class ConvertErrorAction;
112 enum class ConvertTransparencyAction;
113 class Copier;
115 namespace Devices
116 {
117 class DocumentDevice;
118 class ImageGenerator;
119 } // namespace Devices
120 enum class Direction;
121 class DocConverter;
122 class DocOutOfMemoryHandler;
123 class Document;
124 class DocumentExtensions;
125 class DocumentFactory;
126 class DocumentInfo;
127 namespace Drawing
128 {
129 class Shape;
130 } // namespace Drawing
132 namespace Engine
133 {
134 namespace Addressing
135 {
136 class IRegistrar;
137 } // namespace Addressing
138 namespace CommonData
139 {
140 class IDocumentSecondaryStrategiesDefaults;
141 namespace PageContent
142 {
143 class IResourceDictionary;
144 class ResourceDictionary;
145 } // namespace PageContent
146 namespace Text
147 {
148 namespace Encoding
149 {
150 namespace PdfFontEncoding
151 {
152 class SimpleFontEncodingBase;
153 enum class SimpleFontEncodingRules : uint8_t;
154 class SimpleFontEncodingStrategy;
155 } // namespace PdfFontEncoding
156 } // namespace Encoding
157 namespace Fonts
158 {
159 class CIDFont;
160 class FontFactory;
161 class PdfFont;
162 namespace Utilities
163 {
164 class DocumentCIDType2FontContentUpdater;
165 class DocumentFontsIterator;
166 class DocumentFontsSubsetter;
167 class DocumentFontsUnembedder;
168 template <typename> class FontsRemover;
169 class IDocumentFontSaveOptions;
170 class XObjectsProcessor;
171 } // namespace Utilities
172 } // namespace Fonts
173 namespace Segmenting
174 {
175 class PhysicalTextSegment;
176 class TextSegmentBuilder;
177 class TextSegmenter;
178 } // namespace Segmenting
179 } // namespace Text
180 } // namespace CommonData
181 namespace Data
182 {
183 class IPdfArray;
184 class IPdfDictionary;
185 class IPdfObject;
186 class IPdfPrimitive;
187 class ITrailerable;
188 namespace Types
189 {
190 class IPdfStreamAccessor;
191 } // namespace Types
192 } // namespace Data
193 namespace IO
194 {
195 namespace ConvertStrategies
196 {
197 namespace ConvertHelpers
198 {
199 class FontSharedObjectsUpdateManager;
200 class FontUtils;
201 class LowLevelFontSubstitutor;
202 } // namespace ConvertHelpers
203 namespace GlyphWidths
204 {
205 class TrueTypeGlyphWidthsProcessor;
206 } // namespace GlyphWidths
207 class PdfAConvertStrategy;
208 class PdfConvertStrategy;
209 class PdfUaConvertStrategy;
210 class PdfXConvertStrategy;
211 class TaggedPdfConvertStrategy;
212 class TransparentContentRemoval;
213 class VersionConvertStrategy;
214 } // namespace ConvertStrategies
215 namespace SaveStrategies
216 {
217 class SimpleSaveStrategy;
218 } // namespace SaveStrategies
219 } // namespace IO
220 class IPdfDocument;
221 class PdfDocument;
222 namespace Presentation
223 {
224 namespace APSImpl
225 {
226 class APSPresenter;
227 } // namespace APSImpl
228 namespace IndependentImpl
229 {
230 namespace ColorInitializerStrategies
231 {
232 class RgbColorConversionStrategy;
233 } // namespace ColorInitializerStrategies
234 } // namespace IndependentImpl
235 } // namespace Presentation
236 } // namespace Engine
237 class EpubConverter;
238 namespace Facades
239 {
240 class DocumentPrivilege;
241 class Form;
242 class FormEditor;
243 class LogicalStructureConcatenation;
244 class LogicalStructureCopier;
245 class PdfAnnotationEditor;
246 class PdfContentEditor;
247 class PdfConverter;
248 class PdfExtractor;
249 class PdfFileEditor;
250 class PdfFileInfo;
251 class PdfFileMend;
252 class PdfFileSignature;
253 class PdfFileStamp;
254 class PdfJavaScriptStripper;
255 class PdfPageEditor;
256 class PdfXmpMetadata;
257 } // namespace Facades
258 enum class Fixup;
259 class FlowConverter;
260 enum class FontSubsetStrategy : uint8_t;
261 class FormattedFragment;
262 namespace Forms
263 {
264 class ButtonField;
265 class CheckboxField;
266 class ComboBoxField;
267 class Field;
268 class ListBoxField;
269 class RadioButtonField;
270 class RadioButtonOptionField;
271 class RichTextBoxField;
272 class SignatureField;
273 class TextBoxField;
274 class XFA;
275 } // namespace Forms
276 class HeaderFooter;
277 class HtmlConverter;
278 class Id;
280 class ImageStamp;
281 namespace Interchange
282 {
283 class DocumentInterchange;
284 namespace Helpers
285 {
286 class MetadataHelper;
287 } // namespace Helpers
288 } // namespace Interchange
290 class Layer;
291 namespace LicenseManagement
292 {
293 class VentureLicense;
294 } // namespace LicenseManagement
295 class LoadOptions;
296 class Metadata;
297 class MobiXmlConverter;
299 namespace Optimization
300 {
301 class BrokenObjectReferencesScanner;
302 class ImageCompressor2;
303 class ResourceOptimizer;
304 class UnusedObjectsScanner;
305 } // namespace Optimization
306 class OutlineCollection;
307 class OutputIntents;
308 class Page;
309 class PageCollection;
310 class PageInfo;
311 class PageLabelCollection;
312 enum class PageLayout;
313 enum class PageMode;
314 namespace PageModel
315 {
316 class AnnotationElement;
317 class GraphicElement;
318 class ImageElement;
319 class TextElement;
320 } // namespace PageModel
321 class PageTreeBalancer;
322 class Paragraphs;
323 class PclConverter;
325 class PdfPageStamp;
326 class PdfToApsConverter;
327 class PdfToXmlSerializer;
328 enum class PdfVersion;
329 enum class Permissions;
330 class PptxExporter;
331 enum class PrintDuplex;
332 enum class PrintScaling;
333 class PsConverter;
334 class Resources;
335 enum class SaveFormat;
336 class SaveOptions;
337 class Stamp;
338 namespace Structure
339 {
340 class RootElement;
341 } // namespace Structure
342 class SvgConverter;
343 namespace Tagged
344 {
345 class ITaggedContent;
346 class TaggedContent;
347 class TaggedContext;
348 } // namespace Tagged
349 namespace Tests
350 {
351 namespace Annotations
352 {
353 class PdfActionTests;
354 } // namespace Annotations
355 namespace Collections
356 {
357 class OperatorCollectionTests;
358 } // namespace Collections
359 namespace Engine
360 {
361 namespace CommonData
362 {
363 namespace PageContent
364 {
365 namespace Operators
366 {
367 class CommonOperationTests;
368 } // namespace Operators
369 } // namespace PageContent
370 namespace Text
371 {
372 namespace Fonts
373 {
374 class FontSubstitutionRegistratorTests;
375 } // namespace Fonts
376 } // namespace Text
377 } // namespace CommonData
378 namespace IO
379 {
380 class PdfAConvertTests;
381 class PdfUaConvertTests;
382 class PdfUaGenerateTests;
383 class PdfXConvertTests;
384 class VersionsTests;
385 } // namespace IO
386 } // namespace Engine
387 namespace Facades
388 {
389 class DocumentTest;
390 class PdfFileEditorTests;
391 class PdfFileSecurityTests;
392 } // namespace Facades
393 namespace Layers
394 {
395 class LayersTests;
396 } // namespace Layers
397 namespace Lic
398 {
399 class MeteredPluginsTests;
400 } // namespace Lic
401 class MergePagesTests;
402 namespace OriginalKit
403 {
404 namespace New
405 {
406 class FunctionalTests_v4_8;
407 class RegressionTests_v4_4;
408 class RegressionTests_v4_5;
409 } // namespace New
410 } // namespace OriginalKit
411 class PageTreeBalancerTests;
412 class PdfFile_2_0Test;
413 namespace PDFUA
414 {
415 class PDFUA_CreatingTests;
416 } // namespace PDFUA
417 namespace Plugins
418 {
419 class FormEditorTests;
420 class PdfFormTests;
421 } // namespace Plugins
422 class RegressionTests_v10_0;
423 class RegressionTests_v10_2;
424 class RegressionTests_v10_3;
425 class RegressionTests_v10_4;
426 class RegressionTests_v10_5;
427 class RegressionTests_v10_8;
428 class RegressionTests_v10_9;
429 class RegressionTests_v11_1;
430 class RegressionTests_v11_4;
431 class RegressionTests_v11_5;
432 class RegressionTests_v11_6;
433 class RegressionTests_v11_7;
434 class RegressionTests_v11_8;
435 class RegressionTests_v11_9;
436 class RegressionTests_v16_11;
437 class RegressionTests_v16_12;
438 class RegressionTests_v17_10;
439 class RegressionTests_v17_11;
440 class RegressionTests_v17_12;
441 class RegressionTests_v17_2;
442 class RegressionTests_v17_4;
443 class RegressionTests_v17_9;
444 class RegressionTests_v18_11;
445 class RegressionTests_v18_2;
446 class RegressionTests_v18_3;
447 class RegressionTests_v18_5;
448 class RegressionTests_v18_7;
449 class RegressionTests_v18_9;
450 class RegressionTests_v19_1;
451 class RegressionTests_v19_10;
452 class RegressionTests_v19_12;
453 class RegressionTests_v19_2;
454 class RegressionTests_v19_4;
455 class RegressionTests_v19_5;
456 class RegressionTests_v19_6;
457 class RegressionTests_v19_7;
458 class RegressionTests_v19_8;
459 class RegressionTests_v19_9;
460 class RegressionTests_v20_01;
461 class RegressionTests_v20_04;
462 class RegressionTests_v20_05;
463 class RegressionTests_v20_06;
464 class RegressionTests_v20_07;
465 class RegressionTests_v20_08;
466 class RegressionTests_v20_10;
467 class RegressionTests_v20_11;
468 class RegressionTests_v21_2;
469 class RegressionTests_v21_7;
470 class RegressionTests_v21_8;
471 class RegressionTests_v22_07;
472 class RegressionTests_v22_08;
473 class RegressionTests_v22_11;
474 class RegressionTests_v23_07;
475 class RegressionTests_v23_08;
476 class RegressionTests_v23_09;
477 class RegressionTests_v23_10;
478 class RegressionTests_v23_11;
479 class RegressionTests_v23_12;
480 class RegressionTests_v24_02;
481 class RegressionTests_v24_06;
482 class RegressionTests_v6_1;
483 class RegressionTests_v6_7;
484 class RegressionTests_v6_8;
485 class RegressionTests_v6_9;
486 class RegressionTests_v7_0;
487 class RegressionTests_v7_1;
488 class RegressionTests_v7_2;
489 class RegressionTests_v7_3;
490 class RegressionTests_v7_4;
491 class RegressionTests_v7_5;
492 class RegressionTests_v7_6;
493 class RegressionTests_v7_7;
494 class RegressionTests_v7_8;
495 class RegressionTests_v8_1;
496 class RegressionTests_v8_3;
497 class RegressionTests_v8_4;
498 class RegressionTests_v8_5;
499 class RegressionTests_v8_6;
500 class RegressionTests_v8_7;
501 class RegressionTests_v8_8;
502 class RegressionTests_v8_9;
503 class RegressionTests_v9_0;
504 class RegressionTests_v9_1;
505 class RegressionTests_v9_2;
506 class RegressionTests_v9_3;
507 class RegressionTests_v9_4;
508 class RegressionTests_v9_5;
509 class RegressionTests_v9_6;
510 class RegressionTests_v9_8;
511 class RegressionTests_v9_9;
512 namespace Text
513 {
514 class TextFragmentAbsorberTests;
515 class TextFragmentTests;
516 class TextSegmentTests;
517 } // namespace Text
518 namespace Utils
519 {
520 class DocumentComparer;
521 } // namespace Utils
522 class XfaRendererTests;
523 } // namespace Tests
524 class TeXConverter;
525 namespace Text
526 {
527 class Font;
528 class FontAbsorber;
529 class IFontSubstitutionRegistrator;
530 class TextAbsorber;
531 class TextFragmentAbsorber;
532 } // namespace Text
533 class TextBoxFieldXfa;
534 class TeXToPdfConverter;
535 class TextStamp;
536 class UnifiedSaveOptions;
537 enum class UsageMode;
538 namespace Utils
539 {
540 class DictionaryEditor;
541 } // namespace Utils
542 namespace Vector
543 {
544 namespace Extraction
545 {
546 class ApsSvgRenderer;
547 } // namespace Extraction
548 } // namespace Vector
549 class XfaMerge;
550 class XForm;
551 class XFormCollection;
552 class XImage;
553 class XpsConverter;
554 } // namespace Pdf
555 namespace Rendering
556 {
557 class ApsPage;
558 } // namespace Rendering
559 namespace src
560 {
561 class TreeNamedDestinations;
562 } // namespace src
563 } // namespace Aspose
564 namespace Documentize
565 {
566 class Merger;
567 class OrganizerBaseOptions;
568 class PdfAConverter;
569 class PdfAOptionsBase;
570 class PdfExtractor;
571 enum class Plugin;
572 class Signature;
573 class Splitter;
574 namespace Tests
575 {
576 class MeteredPluginsTests;
577 class SignatureTests;
578 } // namespace Tests
579 class Timestamp;
580 } // namespace Documentize
581 namespace System
582 {
583 namespace Collections
584 {
585 namespace Generic
586 {
587 template <typename, typename> class Dictionary;
588 template <typename, typename> class IDictionary;
589 template <typename> class IEnumerable;
590 template <typename> class List;
591 } // namespace Generic
592 } // namespace Collections
593 namespace Drawing
594 {
595 class Image;
596 class RectangleF;
597 } // namespace Drawing
598 namespace IO
599 {
600 class MemoryStream;
601 class Stream;
602 } // namespace IO
603 namespace Web
604 {
605 class HttpResponse;
606 } // namespace Web
607 namespace Xml
608 {
609 class XmlReaderSettings;
610 class XmlTextWriter;
611 } // namespace Xml
612 } // namespace System
613 
614 namespace Aspose {
615 
616 namespace Pdf {
617 
621 class ASPOSE_PDF_SHARED_CLASS Document final : public System::IDisposable, public Aspose::Pdf::ISupportsMemoryCleanup, public Aspose::Pdf::LicenseManagement::IVentureLicenseTarget
622 {
623  typedef Document ThisType;
626  typedef Aspose::Pdf::LicenseManagement::IVentureLicenseTarget BaseType2;
627 
628  typedef ::System::BaseTypesInfo<BaseType, BaseType1, BaseType2> ThisTypeBaseTypesInfo;
629  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
630  ASSEMBLY_TYPE_DECL();
631 
633  friend class Aspose::Pdf::PdfToXmlSerializer;
634  friend class Aspose::Pdf::ApsFragment;
635  friend class Aspose::Pdf::ApsFragmentCollection;
636  friend class Aspose::Pdf::ApsFragmentCollection;
637  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::FontFactory;
638  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::Utilities::DocumentFontsIterator;
639  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::Utilities::DocumentFontsSubsetter;
640  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::Utilities::DocumentFontsUnembedder;
642  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::ConvertHelpers::LowLevelFontSubstitutor;
643  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::Utilities::XObjectsProcessor;
644  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::Utilities::DocumentCIDType2FontContentUpdater;
647  friend class Aspose::Pdf::Interchange::DocumentInterchange;
648  friend class Aspose::Pdf::Interchange::Helpers::MetadataHelper;
649  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::PdfUaConvertStrategy;
650  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::PdfConvertStrategy;
652  friend class Aspose::Pdf::Optimization::ImageCompressor2;
653  friend class Aspose::Pdf::Optimization::ResourceOptimizer;
654  friend class Aspose::Pdf::Optimization::UnusedObjectsScanner;
655  friend class Aspose::Pdf::PdfToApsConverter;
656  friend class Aspose::Pdf::ApsPageFilter;
657  friend class Aspose::Pdf::Engine::Presentation::IndependentImpl::ColorInitializerStrategies::RgbColorConversionStrategy;
668  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::ConvertHelpers::FontUtils;
669  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::ConvertHelpers::FontSharedObjectsUpdateManager;
670  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::GlyphWidths::TrueTypeGlyphWidthsProcessor;
671  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::PdfXConvertStrategy;
672  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::TransparentContentRemoval;
673  friend class Aspose::Pdf::PageModel::AnnotationElement;
674  friend class Aspose::Pdf::PageModel::GraphicElement;
675  friend class Aspose::Pdf::PageModel::ImageElement;
676  friend class Aspose::Pdf::PageModel::TextElement;
678  friend class Aspose::Pdf::Facades::LogicalStructureConcatenation;
679  friend class Aspose::Pdf::Engine::CommonData::PageContent::ResourceDictionary;
680  friend class Aspose::Pdf::Engine::CommonData::Text::Encoding::PdfFontEncoding::SimpleFontEncodingBase;
681  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::CIDFont;
682  friend class Aspose::Pdf::Engine::CommonData::Text::Fonts::PdfFont;
683  friend class Aspose::Pdf::Engine::CommonData::Text::Segmenting::PhysicalTextSegment;
684  friend class Aspose::Pdf::Engine::CommonData::Text::Segmenting::TextSegmentBuilder;
685  friend class Aspose::Pdf::Engine::CommonData::Text::Segmenting::TextSegmenter;
686  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::PdfAConvertStrategy;
687  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::TaggedPdfConvertStrategy;
688  friend class Aspose::Pdf::Engine::IO::ConvertStrategies::VersionConvertStrategy;
689  friend class Aspose::Pdf::Engine::IO::SaveStrategies::SimpleSaveStrategy;
690  friend class Aspose::Pdf::Engine::PdfDocument;
691  friend class Aspose::Pdf::Engine::Presentation::APSImpl::APSPresenter;
692  friend class Aspose::Pdf::Tagged::TaggedContent;
693  friend class Aspose::Pdf::Tagged::TaggedContext;
695  friend class Aspose::Pdf::MobiXmlConverter;
696  friend class Aspose::Pdf::ApsUsingConverter;
699  friend class Aspose::Pdf::HtmlConverter;
701  friend class Aspose::src::TreeNamedDestinations;
702  friend class Aspose::Pdf::Devices::ImageGenerator;
722  friend class Aspose::Pdf::Stamp;
741  friend class Aspose::Pdf::Page;
743  friend class Aspose::Pdf::PageCollection;
750  friend class Aspose::Pdf::TextBoxFieldXfa;
751  friend class Aspose::Pdf::XForm;
753  friend class Aspose::Pdf::XImage;
754  friend class Aspose::Pdf::DocOutOfMemoryHandler;
755  friend class Aspose::Pdf::DocConverter;
757  friend class Aspose::Pdf::ApsToPdfConverter;
758  friend class Aspose::Pdf::XpsConverter;
759  friend class Aspose::Pdf::XfaMerge;
760  friend class Aspose::Pdf::TeXConverter;
761  friend class Aspose::Pdf::TeXToPdfConverter;
762  friend class Aspose::Pdf::Artifact;
764  friend class Aspose::Pdf::EpubConverter;
765  friend class Aspose::Pdf::PclConverter;
766  friend class Aspose::Pdf::SvgConverter;
767  friend class Aspose::Pdf::PptxExporter;
768  friend class Documentize::PdfExtractor;
769  friend class Aspose::Pdf::PsConverter;
771  friend class Aspose::Pdf::Facades::LogicalStructureCopier;
773  friend class Aspose::Pdf::PageTreeBalancer;
774  friend class Documentize::Merger;
775  friend class Documentize::Splitter;
776  friend class Documentize::OrganizerBaseOptions;
778  friend class Documentize::PdfAConverter;
779  friend class Documentize::PdfAOptionsBase;
780  friend class Documentize::Signature;
781  friend class Aspose::Pdf::Vector::Extraction::ApsSvgRenderer;
782  friend class Aspose::Pdf::Layer;
783  friend class Aspose::Pdf::Optimization::BrokenObjectReferencesScanner;
784  friend class Documentize::Timestamp;
785  friend class Aspose::Pdf::FlowConverter;
786  friend class Aspose::Pdf::Tests::Collections::OperatorCollectionTests;
787  friend class Aspose::Pdf::Tests::Text::TextSegmentTests;
788  friend class Aspose::Pdf::Tests::Text::TextFragmentAbsorberTests;
789  friend class Aspose::Pdf::Tests::Text::TextFragmentTests;
790  friend class Aspose::Pdf::Tests::Engine::IO::VersionsTests;
791  friend class Aspose::Pdf::Tests::Facades::DocumentTest;
792  friend class Aspose::Pdf::Tests::Facades::PdfFileEditorTests;
793  friend class Aspose::Pdf::Tests::Engine::IO::PdfAConvertTests;
794  friend class Aspose::Pdf::Tests::Engine::IO::PdfXConvertTests;
795  friend class Aspose::Pdf::Tests::OriginalKit::New::FunctionalTests_v4_8;
796  friend class Aspose::Pdf::Tests::OriginalKit::New::RegressionTests_v4_4;
797  friend class Aspose::Pdf::Tests::OriginalKit::New::RegressionTests_v4_5;
798  friend class Aspose::Pdf::Tests::XfaRendererTests;
799  friend class Aspose::Pdf::Tests::Engine::CommonData::PageContent::Operators::CommonOperationTests;
800  friend class Aspose::Pdf::Tests::Annotations::PdfActionTests;
801  friend class Aspose::Pdf::Tests::RegressionTests_v6_1;
802  friend class Aspose::Pdf::Tests::RegressionTests_v7_0;
803  friend class Aspose::Pdf::Tests::RegressionTests_v7_6;
804  friend class Aspose::Pdf::Tests::RegressionTests_v8_3;
805  friend class Aspose::Pdf::Tests::RegressionTests_v8_4;
806  friend class Aspose::Pdf::Tests::RegressionTests_v8_6;
807  friend class Aspose::Pdf::Tests::RegressionTests_v8_8;
808  friend class Aspose::Pdf::Tests::RegressionTests_v8_9;
809  friend class Aspose::Pdf::Tests::RegressionTests_v9_0;
810  friend class Aspose::Pdf::Tests::RegressionTests_v9_1;
811  friend class Aspose::Pdf::Tests::RegressionTests_v9_2;
812  friend class Aspose::Pdf::Tests::RegressionTests_v9_4;
813  friend class Aspose::Pdf::Tests::RegressionTests_v9_6;
814  friend class Aspose::Pdf::Tests::RegressionTests_v9_9;
815  friend class Aspose::Pdf::Tests::RegressionTests_v10_0;
816  friend class Aspose::Pdf::Tests::RegressionTests_v10_5;
817  friend class Aspose::Pdf::Tests::RegressionTests_v10_3;
818  friend class Aspose::Pdf::Tests::RegressionTests_v11_1;
819  friend class Aspose::Pdf::Tests::RegressionTests_v11_4;
820  friend class Aspose::Pdf::Tests::RegressionTests_v11_7;
821  friend class Aspose::Pdf::Tests::RegressionTests_v11_9;
822  friend class Aspose::Pdf::Tests::RegressionTests_v11_6;
823  friend class Aspose::Pdf::Tests::RegressionTests_v16_11;
824  friend class Aspose::Pdf::Tests::RegressionTests_v16_12;
825  friend class Aspose::Pdf::Tests::RegressionTests_v17_2;
826  friend class Aspose::Pdf::Tests::RegressionTests_v17_4;
827  friend class Aspose::Pdf::Tests::RegressionTests_v17_9;
828  friend class Aspose::Pdf::Tests::RegressionTests_v18_2;
829  friend class Aspose::Pdf::Tests::RegressionTests_v18_3;
830  friend class Aspose::Pdf::Tests::RegressionTests_v18_5;
831  friend class Aspose::Pdf::Tests::RegressionTests_v18_7;
832  friend class Aspose::Pdf::Tests::RegressionTests_v18_9;
833  friend class Aspose::Pdf::Tests::RegressionTests_v19_2;
834  friend class Aspose::Pdf::Tests::RegressionTests_v19_6;
835  friend class Aspose::Pdf::Tests::RegressionTests_v19_7;
836  friend class Aspose::Pdf::Tests::RegressionTests_v19_8;
837  friend class Aspose::Pdf::Tests::RegressionTests_v19_9;
838  friend class Aspose::Pdf::Tests::RegressionTests_v19_10;
839  friend class Aspose::Pdf::Tests::RegressionTests_v22_08;
840  friend class Aspose::Pdf::Tests::Engine::CommonData::Text::Fonts::FontSubstitutionRegistratorTests;
841  friend class Aspose::Pdf::Tests::Engine::IO::PdfUaConvertTests;
842  friend class Aspose::Pdf::Tests::Engine::IO::PdfUaGenerateTests;
843  friend class Aspose::Pdf::Tests::PDFUA::PDFUA_CreatingTests;
844  friend class Aspose::Pdf::Tests::Utils::DocumentComparer;
845  friend class Documentize::Tests::MeteredPluginsTests;
846  friend class Documentize::Tests::SignatureTests;
847  friend class Aspose::Pdf::Tests::RegressionTests_v6_7;
848  friend class Aspose::Pdf::Tests::RegressionTests_v6_8;
849  friend class Aspose::Pdf::Tests::RegressionTests_v6_9;
850  friend class Aspose::Pdf::Tests::RegressionTests_v7_1;
851  friend class Aspose::Pdf::Tests::RegressionTests_v7_2;
852  friend class Aspose::Pdf::Tests::RegressionTests_v7_3;
853  friend class Aspose::Pdf::Tests::RegressionTests_v7_4;
854  friend class Aspose::Pdf::Tests::RegressionTests_v7_5;
855  friend class Aspose::Pdf::Tests::RegressionTests_v7_7;
856  friend class Aspose::Pdf::Tests::RegressionTests_v7_8;
857  friend class Aspose::Pdf::Tests::RegressionTests_v8_1;
858  friend class Aspose::Pdf::Tests::RegressionTests_v8_5;
859  friend class Aspose::Pdf::Tests::RegressionTests_v8_7;
860  friend class Aspose::Pdf::Tests::RegressionTests_v9_3;
861  friend class Aspose::Pdf::Tests::RegressionTests_v9_5;
862  friend class Aspose::Pdf::Tests::RegressionTests_v9_8;
863  friend class Aspose::Pdf::Tests::RegressionTests_v10_2;
864  friend class Aspose::Pdf::Tests::RegressionTests_v10_4;
865  friend class Aspose::Pdf::Tests::RegressionTests_v10_8;
866  friend class Aspose::Pdf::Tests::RegressionTests_v10_9;
867  friend class Aspose::Pdf::Tests::RegressionTests_v11_5;
868  friend class Aspose::Pdf::Tests::RegressionTests_v11_8;
869  friend class Aspose::Pdf::Tests::RegressionTests_v17_10;
870  friend class Aspose::Pdf::Tests::RegressionTests_v17_11;
871  friend class Aspose::Pdf::Tests::RegressionTests_v17_12;
872  friend class Aspose::Pdf::Tests::RegressionTests_v18_11;
873  friend class Aspose::Pdf::Tests::RegressionTests_v19_1;
874  friend class Aspose::Pdf::Tests::RegressionTests_v19_4;
875  friend class Aspose::Pdf::Tests::RegressionTests_v19_5;
876  friend class Aspose::Pdf::Tests::RegressionTests_v19_12;
877  friend class Aspose::Pdf::Tests::RegressionTests_v20_01;
878  friend class Aspose::Pdf::Tests::RegressionTests_v20_04;
879  friend class Aspose::Pdf::Tests::RegressionTests_v20_05;
880  friend class Aspose::Pdf::Tests::RegressionTests_v20_06;
881  friend class Aspose::Pdf::Tests::RegressionTests_v20_07;
882  friend class Aspose::Pdf::Tests::RegressionTests_v20_08;
883  friend class Aspose::Pdf::Tests::RegressionTests_v20_10;
884  friend class Aspose::Pdf::Tests::RegressionTests_v20_11;
885  friend class Aspose::Pdf::Tests::RegressionTests_v21_2;
886  friend class Aspose::Pdf::Tests::RegressionTests_v21_7;
887  friend class Aspose::Pdf::Tests::RegressionTests_v21_8;
888  friend class Aspose::Pdf::Tests::RegressionTests_v22_07;
889  friend class Aspose::Pdf::Tests::RegressionTests_v22_11;
890  friend class Aspose::Pdf::Tests::RegressionTests_v23_07;
891  friend class Aspose::Pdf::Tests::RegressionTests_v23_08;
892  friend class Aspose::Pdf::Tests::RegressionTests_v23_09;
893  friend class Aspose::Pdf::Tests::RegressionTests_v23_10;
894  friend class Aspose::Pdf::Tests::RegressionTests_v23_11;
895  friend class Aspose::Pdf::Tests::RegressionTests_v23_12;
896  friend class Aspose::Pdf::Tests::RegressionTests_v24_02;
897  friend class Aspose::Pdf::Tests::RegressionTests_v24_06;
898  friend class Aspose::Pdf::Tests::Facades::PdfFileSecurityTests;
899  friend class Aspose::Pdf::Tests::PdfFile_2_0Test;
900  friend class Aspose::Pdf::Tests::Plugins::PdfFormTests;
901  friend class Aspose::Pdf::Tests::Lic::MeteredPluginsTests;
902  friend class Aspose::Pdf::Tests::MergePagesTests;
903  friend class Aspose::Pdf::Tests::PageTreeBalancerTests;
904  friend class Aspose::Pdf::Tests::Plugins::FormEditorTests;
905  friend class Aspose::Pdf::Tests::Layers::LayersTests;
906 
907 public:
908 
914  using FontSubstitutionHandler = System::MulticastDelegate<void(System::SharedPtr<Text::Font>, System::SharedPtr<Text::Font>)>;
918  using CallBackGetHocr = System::MulticastDelegate<System::String(System::SharedPtr<System::Drawing::Image>)>;
922  using CallBackGetHocrWithPage = System::MulticastDelegate<System::String(System::SharedPtr<System::Drawing::Image>, System::SharedPtr<Page>)>;
923 
924 public:
925 
929  class ASPOSE_PDF_SHARED_CLASS IDocumentFontUtilities : public virtual System::Object
930  {
931  typedef IDocumentFontUtilities ThisType;
932  typedef System::Object BaseType;
933 
934  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
935  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
936 
937  public:
938 
943  virtual void SubsetFonts(FontSubsetStrategy subsetStrategy) = 0;
949 
950  };
951 
958  {
959  typedef OptimizationOptions ThisType;
961 
962  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
963  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
964 
965  public:
966 
971  static ASPOSE_PDF_SHARED_API System::SharedPtr<Document::OptimizationOptions> All();
972 
973  };
974 
978  class ASPOSE_PDF_SHARED_CLASS MergeOptions : public System::Object
979  {
980  typedef MergeOptions ThisType;
981  typedef System::Object BaseType;
982 
983  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
984  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
985 
986  public:
987 
992  ASPOSE_PDF_SHARED_API uint8_t get_MaximumNodesInLevel() const;
997  ASPOSE_PDF_SHARED_API void set_MaximumNodesInLevel(uint8_t value);
1003  ASPOSE_PDF_SHARED_API bool get_IsNeedPageTreeBalance() const;
1009  ASPOSE_PDF_SHARED_API void set_IsNeedPageTreeBalance(bool value);
1010 
1011  ASPOSE_PDF_SHARED_API MergeOptions();
1012 
1013  private:
1014 
1015  uint8_t _maximumNodesInLevel;
1016  bool _isNeedPageTreeBalance;
1017 
1018  };
1019 
1026  class ASPOSE_PDF_SHARED_CLASS RepairOptions final : public System::Object
1027  {
1028  typedef RepairOptions ThisType;
1029  typedef System::Object BaseType;
1030 
1031  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
1032  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
1033 
1034  public:
1035 
1040  ASPOSE_PDF_SHARED_API bool get_RestoreIndirectObjectGenerations() const;
1045  ASPOSE_PDF_SHARED_API void set_RestoreIndirectObjectGenerations(bool value);
1046 
1047  ASPOSE_PDF_SHARED_API RepairOptions();
1048 
1049  private:
1050 
1051  bool pr_RestoreIndirectObjectGenerations;
1052 
1053  };
1054 
1055 
1056 protected:
1057 
1058  template<typename T>
1060  {
1061  typedef CutByRestrictionWrapper<T> ThisType;
1062  typedef System::Object BaseType;
1063 
1064  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
1065  RTTI_INFO_TEMPLATE_CLASS(ThisType, ThisTypeBaseTypesInfo);
1066 
1068 
1069  public:
1070 
1072  {
1073  if (!get__IsLicensed() && !doc->get__IsObjectLicensed() && !get_Indivisible() && !list->get_IsReadOnly())
1074  {
1075  while (list->get_Count() > 4)
1076  {
1077  list->RemoveAt(list->get_Count() - 1);
1078  }
1079  }
1080  }
1081 
1082  void SetTemplateWeakPtr(uint32_t argument) override
1083  {
1084  switch (argument)
1085  {
1086  case 0:
1087  break;
1088 
1089  }
1090  }
1091 
1092  };
1093 
1094 
1095 private:
1096 
1097  class FontSubstitutionCallback : public Aspose::Pdf::Text::IFontSubstitutionCallback
1098  {
1099  typedef FontSubstitutionCallback ThisType;
1101 
1102  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
1103  RTTI_INFO_DECL();
1104 
1105  public:
1106 
1107  bool get_NotifyAboutFontSubstitutions() override;
1108  System::SharedPtr<Engine::Addressing::IRegistrar> get_Registrar() override;
1109 
1110  FontSubstitutionCallback(System::SharedPtr<Document> owner);
1111 
1112  void NotifyAboutSubstitution(System::SharedPtr<Text::Font> oldFont, System::SharedPtr<Text::Font> newFont) override;
1113 
1114  private:
1115 
1117 
1118  };
1119 
1120  class DocumentFontUtilities : public Aspose::Pdf::Document::IDocumentFontUtilities
1121  {
1122  typedef DocumentFontUtilities ThisType;
1124 
1125  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
1126  RTTI_INFO_DECL();
1127 
1128  public:
1129 
1130  DocumentFontUtilities(System::SharedPtr<Document> doc);
1131 
1135  void SubsetFonts(FontSubsetStrategy subsetStrategy) override;
1141 
1142  private:
1143 
1145 
1146  };
1147 
1148  class SecondaryStrategies : public Aspose::Pdf::Engine::CommonData::IDocumentSecondaryStrategies
1149  {
1150  typedef SecondaryStrategies ThisType;
1152 
1153  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
1154  RTTI_INFO_DECL();
1155 
1156  public:
1157 
1158  Engine::CommonData::Text::Encoding::PdfFontEncoding::SimpleFontEncodingRules get_SimpleFontEncodingRule() override;
1159  void set_SimpleFontEncodingRule(Engine::CommonData::Text::Encoding::PdfFontEncoding::SimpleFontEncodingRules value);
1160 
1161  SecondaryStrategies();
1162 
1163  private:
1164 
1167 
1168  };
1169 
1170 
1171 public:
1172 
1173  static const ASPOSE_PDF_SHARED_API uint8_t DefaultNodesNumInSubtrees;
1174 
1178  ASPOSE_PDF_SHARED_API System::SharedPtr<JavaScriptCollection> get_JavaScript();
1182  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::OutputIntents> get_OutputIntents();
1186  static ASPOSE_PDF_SHARED_API bool get_IsLicensed();
1191  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::PageInfo> get_PageInfo();
1196  ASPOSE_PDF_SHARED_API void set_PageInfo(System::SharedPtr<Aspose::Pdf::PageInfo> value);
1200  ASPOSE_PDF_SHARED_API bool get_EnableSignatureSanitization() const;
1204  ASPOSE_PDF_SHARED_API void set_EnableSignatureSanitization(bool value);
1208  ASPOSE_PDF_SHARED_API bool get_IsPdfaCompliant();
1212  ASPOSE_PDF_SHARED_API bool get_IsPdfUaCompliant();
1216  ASPOSE_PDF_SHARED_API bool get_IsXrefGapsAllowed();
1220  ASPOSE_PDF_SHARED_API void set_IsXrefGapsAllowed(bool value);
1224  ASPOSE_PDF_SHARED_API System::SharedPtr<NamedDestinationCollection> get_NamedDestinations();
1229  ASPOSE_PDF_SHARED_API System::SharedPtr<DestinationCollection> get_Destinations();
1233  ASPOSE_PDF_SHARED_API Aspose::Pdf::PdfFormat get_PdfFormat();
1244  ASPOSE_PDF_SHARED_API bool get_EmbedStandardFonts() const;
1255  ASPOSE_PDF_SHARED_API void set_EmbedStandardFonts(bool value);
1267  ASPOSE_PDF_SHARED_API bool get_DisableFontLicenseVerifications() const;
1279  ASPOSE_PDF_SHARED_API void set_DisableFontLicenseVerifications(bool value);
1283  ASPOSE_PDF_SHARED_API System::SharedPtr<Document::IDocumentFontUtilities> get_FontUtilities();
1287  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::Collection> get_Collection();
1291  ASPOSE_PDF_SHARED_API void set_Collection(System::SharedPtr<Aspose::Pdf::Collection> value);
1295  ASPOSE_PDF_SHARED_API System::String get_Version();
1301  ASPOSE_PDF_SHARED_API System::SharedPtr<Annotations::IAppointment> get_OpenAction();
1307  ASPOSE_PDF_SHARED_API void set_OpenAction(System::SharedPtr<Annotations::IAppointment> value);
1313  ASPOSE_PDF_SHARED_API bool get_HideToolBar();
1319  ASPOSE_PDF_SHARED_API void set_HideToolBar(bool value);
1325  ASPOSE_PDF_SHARED_API bool get_HideMenubar();
1331  ASPOSE_PDF_SHARED_API void set_HideMenubar(bool value);
1337  ASPOSE_PDF_SHARED_API bool get_HideWindowUI();
1343  ASPOSE_PDF_SHARED_API void set_HideWindowUI(bool value);
1349  ASPOSE_PDF_SHARED_API bool get_FitWindow();
1355  ASPOSE_PDF_SHARED_API void set_FitWindow(bool value);
1361  ASPOSE_PDF_SHARED_API bool get_CenterWindow();
1367  ASPOSE_PDF_SHARED_API void set_CenterWindow(bool value);
1373  ASPOSE_PDF_SHARED_API bool get_DisplayDocTitle();
1379  ASPOSE_PDF_SHARED_API void set_DisplayDocTitle(bool value);
1386  ASPOSE_PDF_SHARED_API System::SharedPtr<PageCollection> get_Pages();
1390  ASPOSE_PDF_SHARED_API System::SharedPtr<OutlineCollection> get_Outlines();
1396  ASPOSE_PDF_SHARED_API System::SharedPtr<Annotations::DocumentActionCollection> get_Actions();
1400  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::Forms::Form> get_Form();
1404  ASPOSE_PDF_SHARED_API System::SharedPtr<EmbeddedFileCollection> get_EmbeddedFiles();
1408  ASPOSE_PDF_SHARED_API Aspose::Pdf::Direction get_Direction();
1412  ASPOSE_PDF_SHARED_API void set_Direction(Aspose::Pdf::Direction value);
1416  ASPOSE_PDF_SHARED_API Aspose::Pdf::PageMode get_PageMode();
1420  ASPOSE_PDF_SHARED_API void set_PageMode(Aspose::Pdf::PageMode value);
1424  ASPOSE_PDF_SHARED_API Aspose::Pdf::PageMode get_NonFullScreenPageMode();
1428  ASPOSE_PDF_SHARED_API void set_NonFullScreenPageMode(Aspose::Pdf::PageMode value);
1432  ASPOSE_PDF_SHARED_API Aspose::Pdf::PageLayout get_PageLayout();
1436  ASPOSE_PDF_SHARED_API void set_PageLayout(Aspose::Pdf::PageLayout value);
1440  ASPOSE_PDF_SHARED_API PrintDuplex get_Duplex();
1444  ASPOSE_PDF_SHARED_API void set_Duplex(PrintDuplex value);
1448  ASPOSE_PDF_SHARED_API Aspose::Pdf::PrintScaling get_PrintScaling();
1452  ASPOSE_PDF_SHARED_API void set_PrintScaling(Aspose::Pdf::PrintScaling value);
1456  ASPOSE_PDF_SHARED_API bool get_PickTrayByPdfSize();
1460  ASPOSE_PDF_SHARED_API void set_PickTrayByPdfSize(bool value);
1464  ASPOSE_PDF_SHARED_API System::String get_FileName();
1468  ASPOSE_PDF_SHARED_API System::SharedPtr<DocumentInfo> get_Info();
1476  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::Metadata> get_Metadata();
1480  ASPOSE_PDF_SHARED_API System::SharedPtr<Structure::RootElement> get_LogicalStructure();
1484  ASPOSE_PDF_SHARED_API bool get_HandleSignatureChange() const;
1488  ASPOSE_PDF_SHARED_API void set_HandleSignatureChange(bool value);
1494  ASPOSE_PDF_SHARED_API System::Nullable<Aspose::Pdf::CryptoAlgorithm> get_CryptoAlgorithm();
1498  ASPOSE_PDF_SHARED_API bool get_IsLinearized();
1502  ASPOSE_PDF_SHARED_API void set_IsLinearized(bool value);
1506  ASPOSE_PDF_SHARED_API int32_t get_Permissions();
1510  ASPOSE_PDF_SHARED_API bool get_IsEncrypted();
1514  ASPOSE_PDF_SHARED_API System::SharedPtr<Aspose::Pdf::Id> get_Id();
1518  ASPOSE_PDF_SHARED_API System::SharedPtr<Color> get_Background();
1522  ASPOSE_PDF_SHARED_API void set_Background(System::SharedPtr<Color> value);
1529  ASPOSE_PDF_SHARED_API bool get_OptimizeSize();
1536  ASPOSE_PDF_SHARED_API void set_OptimizeSize(bool value);
1541  ASPOSE_PDF_SHARED_API bool get_AllowReusePageContent();
1546  ASPOSE_PDF_SHARED_API void set_AllowReusePageContent(bool value);
1555  ASPOSE_PDF_SHARED_API bool get_IgnoreCorruptedObjects();
1564  ASPOSE_PDF_SHARED_API void set_IgnoreCorruptedObjects(bool value);
1568  ASPOSE_PDF_SHARED_API System::SharedPtr<PageLabelCollection> get_PageLabels();
1573  ASPOSE_PDF_SHARED_API bool get_EnableObjectUnload();
1578  ASPOSE_PDF_SHARED_API void set_EnableObjectUnload(bool value);
1584  ASPOSE_PDF_SHARED_API System::SharedPtr<Tagged::ITaggedContent> get_TaggedContent();
1590  static ASPOSE_PDF_SHARED_API int32_t get_FileSizeLimitToMemoryLoading();
1596  static ASPOSE_PDF_SHARED_API void set_FileSizeLimitToMemoryLoading(int32_t value);
1597 
1602 
1606  ASPOSE_PDF_SHARED_API void RemovePdfaCompliance();
1610  ASPOSE_PDF_SHARED_API void RemovePdfUaCompliance();
1615  ASPOSE_PDF_SHARED_API void SetTitle(System::String title);
1616 
1621  ASPOSE_PDF_SHARED_API Document(System::SharedPtr<System::IO::Stream> input);
1627  ASPOSE_PDF_SHARED_API Document(System::SharedPtr<System::IO::Stream> input, bool isManagedStream);
1633  ASPOSE_PDF_SHARED_API Document(System::SharedPtr<System::IO::Stream> input, System::String password);
1640  ASPOSE_PDF_SHARED_API Document(System::SharedPtr<System::IO::Stream> input, System::String password, bool isManagedStream);
1645  ASPOSE_PDF_SHARED_API Document(System::String filename);
1651  ASPOSE_PDF_SHARED_API Document(System::String filename, bool isManagedStream);
1657  ASPOSE_PDF_SHARED_API Document(System::String filename, System::String password);
1664  ASPOSE_PDF_SHARED_API Document(System::String filename, System::String password, bool isManagedStream);
1668  ASPOSE_PDF_SHARED_API Document();
1669 
1673  ASPOSE_PDF_SHARED_API void ProcessParagraphs();
1678  ASPOSE_PDF_SHARED_API void Save(System::SharedPtr<System::IO::Stream> output);
1683  ASPOSE_PDF_SHARED_API void Save(System::String outputFileName);
1688  ASPOSE_PDF_SHARED_API void ExportAnnotationsToXfdf(System::String fileName);
1693  ASPOSE_PDF_SHARED_API void ExportAnnotationsToXfdf(System::SharedPtr<System::IO::Stream> stream);
1703  ASPOSE_PDF_SHARED_API void SendTo(System::SharedPtr<Devices::DocumentDevice> device, System::SharedPtr<System::IO::Stream> output);
1719  ASPOSE_PDF_SHARED_API void SendTo(System::SharedPtr<Devices::DocumentDevice> device, int32_t fromPage, int32_t toPage, System::SharedPtr<System::IO::Stream> output);
1729  ASPOSE_PDF_SHARED_API void SendTo(System::SharedPtr<Devices::DocumentDevice> device, System::String outputFileName);
1745  ASPOSE_PDF_SHARED_API void SendTo(System::SharedPtr<Devices::DocumentDevice> device, int32_t fromPage, int32_t toPage, System::String outputFileName);
1749  ASPOSE_PDF_SHARED_API void RemoveMetadata();
1754  ASPOSE_PDF_SHARED_API void ImportAnnotationsFromXfdf(System::String fileName);
1759  ASPOSE_PDF_SHARED_API void ImportAnnotationsFromXfdf(System::SharedPtr<System::IO::Stream> stream);
1766  ASPOSE_PDF_SHARED_API bool Validate(System::String outputLogFileName, Aspose::Pdf::PdfFormat format);
1775  ASPOSE_PDF_SHARED_API bool Convert(System::String outputLogFileName, Aspose::Pdf::PdfFormat format, ConvertErrorAction action, ConvertTransparencyAction transparencyAction);
1784  ASPOSE_PDF_SHARED_API bool Convert(System::SharedPtr<System::IO::Stream> outputLogStream, Aspose::Pdf::PdfFormat format, ConvertErrorAction action, ConvertTransparencyAction transparencyAction);
1792  ASPOSE_PDF_SHARED_API bool Convert(System::String outputLogFileName, Aspose::Pdf::PdfFormat format, ConvertErrorAction action);
1798  ASPOSE_PDF_SHARED_API bool Convert(System::SharedPtr<PdfFormatConversionOptions> options);
1804  ASPOSE_PDF_SHARED_API System::SharedPtr<System::IO::MemoryStream> ConvertPageToPNGMemoryStream(System::SharedPtr<Page> page);
1811  ASPOSE_PDF_SHARED_API bool Validate(System::SharedPtr<System::IO::Stream> outputLogStream, Aspose::Pdf::PdfFormat format);
1817  ASPOSE_PDF_SHARED_API bool Validate(System::SharedPtr<PdfFormatConversionOptions> options);
1824  ASPOSE_PDF_SHARED_API bool Convert(Document::CallBackGetHocrWithPage callback, bool flattenImages = false);
1831  ASPOSE_PDF_SHARED_API bool Convert(Document::CallBackGetHocr callback, bool flattenImages = false);
1839  ASPOSE_PDF_SHARED_API bool Convert(System::SharedPtr<System::IO::Stream> outputLogStream, Aspose::Pdf::PdfFormat format, ConvertErrorAction action);
1848  ASPOSE_PDF_SHARED_API bool Convert(Fixup fixup, System::SharedPtr<System::IO::Stream> outputLog, bool onlyValidation = false, System::ArrayPtr<System::SharedPtr<System::Object>> parameters = nullptr);
1857  ASPOSE_PDF_SHARED_API bool Convert(Fixup fixup, System::String outputLog, bool onlyValidation = false, System::ArrayPtr<System::SharedPtr<System::Object>> parameters = nullptr);
1865  ASPOSE_PDF_SHARED_API void LoadFrom(System::String filename, System::SharedPtr<LoadOptions> options);
1866 
1876  ASPOSE_PDF_SHARED_API Document(System::String filename, System::SharedPtr<LoadOptions> options);
1877 
1885  static ASPOSE_PDF_SHARED_API void Convert(System::String srcFileName, System::SharedPtr<LoadOptions> loadOptions, System::String dstFileName, System::SharedPtr<SaveOptions> saveOptions);
1893  static ASPOSE_PDF_SHARED_API void Convert(System::SharedPtr<System::IO::Stream> srcStream, System::SharedPtr<LoadOptions> loadOptions, System::String dstFileName, System::SharedPtr<SaveOptions> saveOptions);
1901  static ASPOSE_PDF_SHARED_API void Convert(System::String srcFileName, System::SharedPtr<LoadOptions> loadOptions, System::SharedPtr<System::IO::Stream> dstStream, System::SharedPtr<SaveOptions> saveOptions);
1909  static ASPOSE_PDF_SHARED_API void Convert(System::SharedPtr<System::IO::Stream> srcStream, System::SharedPtr<LoadOptions> loadOptions, System::SharedPtr<System::IO::Stream> dstStream, System::SharedPtr<SaveOptions> saveOptions);
1910 
1921 
1925  ASPOSE_PDF_SHARED_API void Flatten();
1930  ASPOSE_PDF_SHARED_API void Flatten(System::SharedPtr<Aspose::Pdf::Forms::Form::FlattenSettings> flattenSettings);
1934  ASPOSE_PDF_SHARED_API void FlattenTransparency();
1943  ASPOSE_PDF_SHARED_API void Encrypt(System::String userPassword, System::String ownerPassword, System::SharedPtr<Facades::DocumentPrivilege> privileges, Aspose::Pdf::CryptoAlgorithm cryptoAlgorithm, bool usePdf20);
1951  ASPOSE_PDF_SHARED_API void Encrypt(System::String userPassword, System::String ownerPassword, Aspose::Pdf::Permissions permissions, Aspose::Pdf::CryptoAlgorithm cryptoAlgorithm);
1960  ASPOSE_PDF_SHARED_API void Encrypt(System::String userPassword, System::String ownerPassword, Aspose::Pdf::Permissions permissions, Aspose::Pdf::CryptoAlgorithm cryptoAlgorithm, bool usePdf20);
1967  ASPOSE_PDF_SHARED_API void ChangePasswords(System::String ownerPassword, System::String newUserPassword, System::String newOwnerPassword);
1971  ASPOSE_PDF_SHARED_API void Decrypt();
1981  ASPOSE_PDF_SHARED_API void Optimize();
1992  ASPOSE_PDF_SHARED_API void Save();
1997  ASPOSE_PDF_SHARED_API void Save(System::SharedPtr<SaveOptions> options);
2003  ASPOSE_PDF_SHARED_API void Save(System::String outputFileName, SaveFormat format);
2010  ASPOSE_PDF_SHARED_API void Save(System::SharedPtr<System::IO::Stream> outputStream, SaveFormat format);
2016  ASPOSE_PDF_SHARED_API void Save(System::String outputFileName, System::SharedPtr<SaveOptions> options);
2023  ASPOSE_PDF_SHARED_API void Save(System::SharedPtr<System::IO::Stream> outputStream, System::SharedPtr<SaveOptions> options);
2031  ASPOSE_PDF_SHARED_API void Save(System::SharedPtr<System::Web::HttpResponse> response, System::String outputFileName, ContentDisposition disposition, System::SharedPtr<SaveOptions> options);
2035  ASPOSE_PDF_SHARED_API void Dispose() override;
2042  ASPOSE_PDF_SHARED_API void OptimizeResources();
2047  ASPOSE_PDF_SHARED_API void OptimizeResources(System::SharedPtr<Aspose::Pdf::Optimization::OptimizationOptions> strategy);
2053  ASPOSE_PDF_SHARED_API System::SharedPtr<System::Object> GetCatalogValue(System::String key);
2057  ASPOSE_PDF_SHARED_API void FreeMemory() override;
2062  ASPOSE_PDF_SHARED_API void SaveXml(System::String file);
2068  ASPOSE_PDF_SHARED_API System::SharedPtr<System::Object> GetObjectById(System::String id);
2073  ASPOSE_PDF_SHARED_API void BindXml(System::String file);
2081  ASPOSE_PDF_SHARED_API void Repair(System::SharedPtr<Document::RepairOptions> options = nullptr);
2087  ASPOSE_PDF_SHARED_API void BindXml(System::String xmlFile, System::String xslFile);
2093  ASPOSE_PDF_SHARED_API void BindXml(System::SharedPtr<System::IO::Stream> xmlStream, System::SharedPtr<System::IO::Stream> xslStream);
2105  ASPOSE_PDF_SHARED_API void BindXml(System::SharedPtr<System::IO::Stream> stream);
2110  ASPOSE_PDF_SHARED_API void GetXmpMetadata(System::SharedPtr<System::IO::Stream> stream);
2115  ASPOSE_PDF_SHARED_API void SetXmpMetadata(System::SharedPtr<System::IO::Stream> stream);
2121  ASPOSE_PDF_SHARED_API bool Check(bool doRepair);
2128  ASPOSE_PDF_SHARED_API void PageNodesToBalancedTree(uint8_t nodesNumInSubtrees = DefaultNodesNumInSubtrees);
2134  ASPOSE_PDF_SHARED_API void Merge(System::SharedPtr<Document::MergeOptions> mergeOptions, const System::ArrayPtr<System::SharedPtr<Document>>& documents);
2140  ASPOSE_PDF_SHARED_API void Merge(System::SharedPtr<Document::MergeOptions> mergeOptions, const System::ArrayPtr<System::String>& files);
2145  ASPOSE_PDF_SHARED_API void Merge(const System::ArrayPtr<System::SharedPtr<Document>>& documents);
2150  ASPOSE_PDF_SHARED_API void Merge(const System::ArrayPtr<System::String>& files);
2157  static ASPOSE_PDF_SHARED_API System::SharedPtr<Document> MergeDocuments(System::SharedPtr<Document::MergeOptions> mergeOptions, const System::ArrayPtr<System::String>& files);
2164  static ASPOSE_PDF_SHARED_API System::SharedPtr<Document> MergeDocuments(System::SharedPtr<Document::MergeOptions> mergeOptions, const System::ArrayPtr<System::SharedPtr<Document>>& files);
2170  static ASPOSE_PDF_SHARED_API System::SharedPtr<Document> MergeDocuments(const System::ArrayPtr<System::String>& files);
2176  static ASPOSE_PDF_SHARED_API System::SharedPtr<Document> MergeDocuments(const System::ArrayPtr<System::SharedPtr<Document>>& documents);
2180  static ASPOSE_PDF_SHARED_API void SetDefaultFileSizeLimitToMemoryLoading();
2187  ASPOSE_PDF_SHARED_API bool HasIncrementalUpdate();
2188 
2189 protected:
2190 
2193 
2197  System::Guid get_DocumentId() const;
2209  static bool get__IsLicensed();
2213  bool get__IsObjectLicensed();
2214  static bool get_Indivisible();
2215  bool get_IsParagraphsAdded() const;
2216  void set_IsParagraphsAdded(bool value);
2217  bool get_IsLayersAdded();
2218  Text::TextEditOptions::FontReplace get_FontReplaceBehavior() const;
2219  void set_FontReplaceBehavior(Text::TextEditOptions::FontReplace value);
2220 
2221  static int32_t& IndivisibleLevel();
2222 
2224 
2225  static bool get___Indivisible();
2226 
2228 
2229  bool get_NotifyAboutFontSubstitutions();
2230  System::SharedPtr<Text::IFontSubstitutionRegistrator> get_FontSubstitutionRegistrator() const;
2231 
2233 
2237 
2243 
2247  bool get_IsNotCheckMetadata() const;
2251  bool get_IsConvertMetadataAndCatalogOnly() const;
2255  void set_IsConvertMetadataAndCatalogOnly(bool value);
2256  int32_t get_ParentTreeNextKey();
2257  void set_ParentTreeNextKey(int32_t value);
2258  Aspose::Pdf::UsageMode get_UsageMode() const;
2262  System::SharedPtr<Copier> get_DefaultCopier();
2263  bool get_IsConverted() const;
2264 
2265  void ResetRestrictions();
2266  static uint64_t TransformRestrictionKey(uint64_t key);
2267  void SetPlugin(Documentize::Plugin plugin);
2268  static bool Restricted(System::SharedPtr<Engine::Data::ITrailerable> tr, int32_t index);
2269  static bool Restricted(System::SharedPtr<Document> doc, int32_t index);
2270  static void Restrict(System::SharedPtr<Engine::Data::ITrailerable> tr, int32_t index);
2271  static void Restrict(System::SharedPtr<Document> doc, int32_t index);
2272  static bool IsVentureLicenseValid(System::SharedPtr<LicenseManagement::VentureLicense> _ventureLicense);
2273  static bool Restricted(System::SharedPtr<LicenseManagement::VentureLicense> ventureLicense, int32_t index);
2274  static void StartOperation();
2275  static void EndOperation();
2286  System::Nullable<Aspose::Pdf::PdfFormat> GetPdfACompliance();
2287  void NotifyAboutSubstitution(System::SharedPtr<Aspose::Pdf::Text::Font> oldFont, System::SharedPtr<Aspose::Pdf::Text::Font> newFont);
2288  void SetSimpleFontEncodingRule(HtmlSaveOptions::FontEncodingRules rule);
2292  void InitInternalHyperlinksTargetsData(System::SharedPtr<UnifiedSaveOptions> options);
2293  void RegisterMetadata(System::SharedPtr<Aspose::Pdf::Metadata> metadata);
2294  static void UpdateMetadata(System::SharedPtr<Engine::PdfDocument> document, System::SharedPtr<Aspose::Pdf::Metadata> metadata);
2295  static void PreSave(System::SharedPtr<PageCollection> pages, System::SharedPtr<SaveOptions> saveOptions);
2296 
2301  Document(PdfVersion version);
2302 
2303  MEMBER_FUNCTION_MAKE_OBJECT_DECLARATION(Document, CODEPORTING_ARGS(PdfVersion version));
2307  void ProcessLayers();
2311  void AddLayers();
2312  void ValidateAnnotations();
2313  void UncompressObject(System::SharedPtr<Engine::Data::IPdfObject> obj);
2317  void UpdatePagesResources();
2321  void UpdateXFormResources();
2331  bool Convert(System::SharedPtr<System::Xml::XmlTextWriter> xml, Aspose::Pdf::PdfFormat format, bool onlyValidation, ConvertErrorAction action, ConvertTransparencyAction transparencyAction);
2340  bool Convert(System::SharedPtr<System::Xml::XmlTextWriter> xml, Aspose::Pdf::PdfFormat format, bool onlyValidation, ConvertErrorAction action);
2341  bool Convert(System::SharedPtr<PdfFormatConversionOptions> options, bool onlyValidation);
2342  bool Convert(Fixup fixup, System::SharedPtr<System::Xml::XmlTextWriter> outputLog, bool onlyValidation = false, System::ArrayPtr<System::SharedPtr<System::Object>> parameters = nullptr);
2347  bool ContainSignature();
2349  void FlattenA();
2350  void FlattenB();
2351  bool IsCertified();
2357  void UpdatePages();
2362  void SuppressUpdate();
2366  void ResumeUpdate();
2368  void ReleaseResourcesFor(System::SharedPtr<Engine::Data::IPdfObject> obj);
2376  void RegisterAfterImportAnnotation(System::SharedPtr<Annotations::Annotation> annotation);
2380  void AfterImport();
2382  bool Check(bool doRepair, System::SharedPtr<System::IO::Stream> log);
2387  void RemoveOptionalContentPropertyWithObject(int32_t objectId);
2392  void RemoveObject(System::SharedPtr<Engine::Data::IPdfObject> pdfObject);
2393  void cpp_keep_trailerable(System::SharedPtr<Engine::Data::ITrailerable> keep);
2394  void cpp_keep_text_segment_builder(System::SharedPtr<Engine::CommonData::Text::Segmenting::TextSegmentBuilder> builder);
2395  void cpp_keep_pcl_parser(System::SharedPtr<Aspose::Pcl::Parser::PCLParser> parser);
2396 
2397  virtual ASPOSE_PDF_SHARED_API ~Document();
2398 
2399 private:
2400 
2404  static const int32_t PdfAPartOne;
2408  static const int32_t PdfAPartTwo;
2412  static const int32_t PdfAPartThree;
2416  static const int32_t PdfAPartDefault;
2423  System::String fileName;
2425  System::SharedPtr<Copier> defualtCopier;
2427  Text::TextEditOptions::FontReplace fontReplaceBehavior;
2430  bool isLowMemoryMode;
2431  bool isNotCheckMetadata;
2432  bool isConvertMetadataAndCatalogOnly;
2433  bool isParagraphsAdded;
2434  bool isTransferInfo;
2438  System::SharedPtr<PageTreeBalancer> _pageTreeBalancer;
2439  bool _enableSignatureSanitization;
2440  bool _overrideMetadata;
2441  System::Guid _documentId;
2444  static uint64_t hashValue;
2446  Documentize::Plugin _usedByPlugin;
2448  bool pr_EmbedStandardFonts;
2449  bool pr_DisableFontLicenseVerifications;
2457  System::String _password;
2459  bool _isDisposed;
2460  int32_t _parentTreeNextKey;
2462  bool pr_HandleSignatureChange;
2466  Aspose::Pdf::UsageMode _usageMode;
2468  bool _isConverted;
2473 
2474  System::SharedPtr<Engine::Data::IPdfDictionary> provideViewerPreferencesEntry(bool createIfNotExists);
2475  System::SharedPtr<Engine::Data::IPdfDictionary> provideMarkingsEntry();
2476  static bool GetIsLicensed();
2477  void SetVentureLicense(System::SharedPtr<LicenseManagement::VentureLicense> license) override;
2478  System::SharedPtr<LicenseManagement::VentureLicense> GetVentureLicense() override;
2479  void RemoveMetadataItem(System::String nsPrefix, System::String name);
2480  System::SharedPtr<Text::IFontSubstitutionRegistrator> CreateFontSubstitutionRegistrator();
2481  static void SubstituteStandartFonts(System::SharedPtr<PageCollection> pages);
2482  static void SubstituteStandartFontsOnPage(System::SharedPtr<Page> Page);
2483  void Init();
2484  void AddInternalHyperlinkTarget(System::SharedPtr<Annotations::XYZExplicitDestination> destination);
2485  void AddInternalHyperlinkTarget(System::SharedPtr<Annotations::FitRExplicitDestination> destination);
2486  void Init(System::SharedPtr<System::IO::Stream> input, System::String password);
2487  void ReplaceNonSeekableStream(System::SharedPtr<System::IO::Stream>& input);
2488  void Init(System::String fileName, System::String password);
2489  void Init(System::SharedPtr<System::IO::Stream> input, System::String password, bool isManagedStream);
2490  static void SetEvaluationWarning(System::SharedPtr<PageCollection> pages);
2491  System::SharedPtr<Engine::Data::IPdfDictionary> GetOcPropertiesDictionary();
2492  System::SharedPtr<Engine::Data::IPdfArray> GetOptionalContentGroupsArray();
2497  void ProcessLinks();
2498  void CopyToOutlines(System::SharedPtr<Paragraphs> paragraphs);
2499  void InternalSaveDocument(System::SharedPtr<System::IO::Stream> output, System::SharedPtr<SaveOptions> saveOptions);
2501  void AfterSave(System::SharedPtr<System::IO::Stream> output);
2502  void InternalSave(System::String outputFileName);
2503  void AddConformance(bool result, Aspose::Pdf::PdfFormat format);
2504  void PreparePdfAConversion();
2518  void FinishPdfAConversion();
2519  void assertObject();
2520  void AssertSignedDocument();
2521  void LoadDocument(System::SharedPtr<System::IO::Stream> input, System::SharedPtr<LoadOptions> options, bool needDocumentInit);
2522  void InitDocument();
2523  void InitUsageMode(System::SharedPtr<LoadOptions> options);
2524  static Aspose::Pdf::UsageMode GetUsageModeForConversion(System::SharedPtr<LoadOptions> loadOptions, System::SharedPtr<SaveOptions> saveOptions);
2525  void FixAnnotations(System::SharedPtr<Page> page);
2526  void CallFormatEvent(System::String fieldName);
2527  void CallFormatEvents(System::String root, System::SharedPtr<Engine::Data::IPdfDictionary> field);
2528  void CallFormatEvents();
2530  void ApplyRedactions();
2532  static void ProcessExtGStates(System::SharedPtr<Engine::CommonData::PageContent::IResourceDictionary> resourceDict);
2533  void InternalSave(System::SharedPtr<SaveOptions> saveOptions);
2534  void InternalSave(System::String outputFileName, SaveFormat format);
2535  void InternalSave(System::SharedPtr<System::IO::Stream> outputStream, SaveFormat format);
2536  System::SharedPtr<SaveOptions> CreateSaveOptions(SaveFormat format);
2542  //[Obfuscation(Feature = "virtualization", Exclude = false)]
2543  void InternalSave(System::String outputFileName, System::SharedPtr<SaveOptions> options);
2544  void SaveFormats(System::String outputFileName, System::SharedPtr<SaveOptions> options);
2545  bool IsStreamSavableFormat(System::SharedPtr<SaveOptions> options);
2546  void InternalSave(System::SharedPtr<System::IO::Stream> outputStream, System::SharedPtr<SaveOptions> options);
2547  void Report(System::SharedPtr<System::IO::Stream> outputStream, System::SharedPtr<SaveOptions> options);
2549  void InternalSave(System::SharedPtr<System::Web::HttpResponse> response, System::String outputFileName, ContentDisposition disposition, System::SharedPtr<SaveOptions> options);
2555  static void SubstituteFontsWithDefaultFont(System::SharedPtr<Document> doc, System::String defaultFontName);
2560  static void RemoveUnusedFonts(System::SharedPtr<PageCollection> pages);
2564  void CheckForFontsDescriptors();
2568  void CheckQOperators();
2577  void CleanUpOrderArray(System::SharedPtr<Engine::Data::IPdfArray> orderArray, System::SharedPtr<Engine::Data::IPdfArray> subArray, int32_t index);
2578  bool IsDictionaryHasName(System::SharedPtr<Engine::Data::IPdfPrimitive> obj, System::String name);
2579 
2580  static struct __StaticConstructor__ { __StaticConstructor__(); } s_constructor__;
2581 
2582 };
2583 
2584 } // namespace Pdf
2585 } // namespace Aspose
2586 
2587 
MulticastDelegate< Args... > Event
Represents an event - a mechanism through which subscribers are notified about an occurence of intere...
Definition: event.h:14
Class PDF3DViewArray.
Definition: PDF3DViewArray.h:63
A class for accessing an object&#39;s dictionary.
Definition: DictionaryEditor.h:55
Abstract class representing markup annotation.
Definition: MarkupAnnotation.h:82
This class represents saving options for saving that uses unified conversion way (with unified intern...
Definition: UnifiedSaveOptions.h:108
Class PDF3DCrossSection.
Definition: PDF3DCrossSection.h:53
Reresents graphic stamp.
Definition: ImageStamp.h:45
String class used across the library. Is a substitute for C# System.String when translating code...
Definition: string.h:121
Represents a go-to action that changes the view to a specified destination (page, location...
Definition: GoToAction.h:42
System::MulticastDelegate< void(System::SharedPtr< Text::Font >, System::SharedPtr< Text::Font >)> FontSubstitutionHandler
Represents the method that will handle FontSubstitution event.
Definition: Document.h:914
Provides access to XMP metadata stream.
Definition: Metadata.h:66
Forward declaration.
Definition: boxed_value.h:23
Class representing Combobox field of the form.
Definition: ComboBoxField.h:63
An abstract class for various kinds of stamps which come as descendants.
Definition: Stamp.h:48
Definition: Document.h:564
Represents an absorber object of a text. Performs text extraction and provides access to the result v...
Definition: TextAbsorber.h:72
Represents document outline hierarchy.
Definition: OutlineCollection.h:50
CryptoAlgorithm
Represent type of cryptographic algorithm that used in encryption/decryption routines.
Definition: CryptoAlgorithm.h:13
Represents a class for adding texts and images on the pages of existing PDF document.
Definition: PdfFileMend.h:49
Represents a launch action that launches an application or opens or prints a document.
Definition: LaunchAction.h:37
Class representing Acro form object.
Definition: Form.h:115
FontEncodingRules
This enumeration defines rules which tune encoding logic
Definition: HtmlSaveOptions.h:273
Represents a layer within a PDF page.
Definition: Layer.h:44
Class representing form object.
Definition: Form.h:157
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:64
System::SharedPtr< ConversionPipeline > Pipeline
Definition: Document.h:2191
Class represents the collection of all destinations (a name tree mapping name strings to destinations...
Definition: NamedDestinationCollection.h:40
Class representing PDF document
Definition: Document.h:621
static bool get__IsLicensed()
Gets licensed state of the system. Returns true is system works in licensed mode and false otherwise...
Definition: Artifact.h:71
Represents abstract formatted fragment.
Definition: FormattedFragment.h:60
Represents the collection of OutputIntent.
Definition: OutputIntents.h:47
All sides borders.It has the same meaning when useing "Box" and will be replaced by "Box" one year la...
Represents signature form field.
Definition: SignatureField.h:83
Dummy class making it possible linking translated code with HttpResponse references, but not executing it. Contains no properly implemented members. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.
Definition: dummy_classes.h:51
FontReplace
Font replacement behavior.
Definition: TextEditOptions.h:82
Represents an absorber object of fonts. Performs search for fonts and provides access to search resul...
Definition: FontAbsorber.h:31
Class PDF3DArtwork.
Definition: PDF3DArtwork.h:58
System::SharedPtr< System::Collections::Generic::Dictionary< System::String, System::SharedPtr< Engine::CommonData::Text::Segmenting::TextSegmentBuilder > > > _commonXObjects
Definition: Document.h:2242
Represents the page information.
Definition: PageInfo.h:44
static void CutByRestriction(System::SharedPtr< Document > doc, System::SharedPtr< System::Collections::Generic::IList< T >> list)
Definition: Document.h:1071
Class represnets push button field.
Definition: ButtonField.h:74
This class represents collection of JavaScript.
Definition: JavaScriptCollection.h:55
Represents a Globally Unique IDentifier This type should be allocated on stack and passed to function...
Definition: guid.h:33
Class describes rich text editor component.
Definition: RichTextBoxField.h:64
PdfFormat
This class represents an pdf format.
Definition: PdfFormat.h:16
Class for adding stamps (watermark or background) to PDF files.
Definition: PdfFileStamp.h:56
Represents XML form regarding XML Forms Architecture (XFA).
Definition: XFA.h:83
Represents shape - the base graphics object.
Definition: Shape.h:60
Class representing embedded files collection.
Definition: EmbeddedFileCollection.h:98
Class PDF3DCrossSectionArray.
Definition: PDF3DCrossSectionArray.h:56
represents set of options for convert PDF document
Definition: PdfFormatConversionOptions.h:69
Represents an absorber object of text fragments. Performs text search and provides access to search r...
Definition: TextFragmentAbsorber.h:81
Class representing widget annotation.
Definition: WidgetAnnotation.h:88
Definition: signed_info.h:13
Purpose of this interface - to return different strategies which could be used if user sets special f...
Definition: IDocumentSecondaryStrategies.h:42
Class describes actions performed on some actions with document
Definition: DocumentActionCollection.h:37
Base class for acro form fields.
Definition: Field.h:126
This interface declares a callback mechanism to send notifications
Definition: IFontSubstitutionRegistrator.h:101
Represents a class to edit the PDF file&#39;s page, including rotating page, zooming page, moving position and changing page size.
Definition: PdfPageEditor.h:66
Represents a class to convert a pdf file&#39;s each page to images, supporting BMP, JPEG, PNG and TIFF now. Supported content in pdfs: pictures, form, comment.
Definition: PdfConverter.h:96
SaveOptions type hold level of abstraction on individual save options
Definition: SaveOptions.h:62
bool ReloadAfterLinearization
Definition: Document.h:2192
Class for removing all Java Script code.
Definition: PdfJavaScriptStripper.h:39
PageLayout
Descibes page layout.
Definition: PageLayout.h:20
Class represents artifact collection.
Definition: ArtifactCollection.h:52
Class representing page resources.
Definition: Resources.h:267
ConvertErrorAction
This class represents action for conversion errors.
Definition: ConvertErrorAction.h:11
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: SideBySidePdfComparer.h:24
Represents a text type.
Holds functionality to tune fonts
Definition: Document.h:929
Defines method that releases resources owned by the current object. Objects of this class should only...
Definition: idisposable.h:29
Represents an absorber object of image placement objects. Performs search of image usages and provide...
Definition: ImagePlacementAbsorber.h:79
Class represents item of RadioButton field.
Definition: RadioButtonOptionField.h:62
Represents file identifier structure.
Definition: Id.h:32
Class which describes document optimization algorithm. Instance of this class may be used as paramete...
Definition: OptimizationOptions.h:31
Class representing text box field.
Definition: TextBoxField.h:88
Class representing page of PDF document.
Definition: Page.h:384
Definition: AFRelationship.h:4
System::SharedPtr< Engine::CommonData::Text::Fonts::Utilities::IDocumentFontSaveOptions > FontSaveOptions
Definition: Document.h:2232
Represents a class for accessing meta information of PDF document.
Definition: PdfFileInfo.h:48
System::MulticastDelegate< System::String(System::SharedPtr< System::Drawing::Image >, System::SharedPtr< Page >)> CallBackGetHocrWithPage
The call back procedure for hocr recognize.
Definition: Document.h:922
Class PDF3DStream.
Definition: PDF3DStream.h:62
Subclass of System::SmartPtr which sets itself to weak mode at construction. Please note that this cl...
Definition: TextFragmentState.h:69
static const ASPOSE_PDF_SHARED_API uint8_t DefaultNodesNumInSubtrees
Definition: Document.h:1173
Class representing image X-Object.
Definition: XImage.h:178
Class represents ListBox field.
Definition: ListBoxField.h:54
Represents textual stamp.
Definition: TextStamp.h:69
Class representing radio button field.
Definition: RadioButtonField.h:75
Forward declaration of Dictionary class.
Definition: Artifact.h:77
Instead of being defined directly with the explicit syntax, a destination may be referred to indirect...
Definition: NamedDestination.h:45
Fixup
This enum represents an type of Fixup.
Definition: Fixup.h:11
Permissions
This enum represents user&#39;s permissions for a pdf.
Definition: Permissions.h:14
Represents class for color value which can be expressed in different color space. ...
Definition: Color.h:89
The interface defines ways to cleanup memory in case mass operations.
Definition: ISupportsMemoryCleanup.h:13
Represents meta information of PDF document.
Definition: DocumentInfo.h:43
Class PDF3DAnnotation. This class cannot be inherited.
Definition: PDF3DAnnotation.h:85
bool IsPdfAConversionMode
Definition: Document.h:2227
Class representing annotation collection.
Definition: AnnotationCollection.h:56
static bool get_Indivisible()
Represents options for repairing a PDF document.
Definition: Document.h:1026
PageMode
Class descibes used components of the document page.
Definition: PageMode.h:20
Direction
Text direction.
Definition: Direction.h:20
Class represents stamp which uses PDF page as stamp.
Definition: PdfPageStamp.h:47
List forward declaration.
Definition: Artifact.h:78
Class for extracting images and text from PDF document.
Definition: PdfExtractor.h:83
Represents a class to sign a pdf file with a certificate.
Definition: PdfFileSignature.h:64
Implements operations with PDF file: concatenation, splitting, extracting pages, making booklet...
Definition: PdfFileEditor.h:105
Represents the options to Merge methods.
Definition: Document.h:978
PrintDuplex
The paper handling option to use when printing the file from the print dialog..
Definition: PrintDuplex.h:20
Class PDF3DView.
Definition: PDF3DView.h:54
Represents Redact annotation.
Definition: RedactionAnnotation.h:61
static System::SharedPtr< System::Object > syncRoot
Definition: Document.h:2223
System::MulticastDelegate< System::String(System::SharedPtr< System::Drawing::Image >)> CallBackGetHocr
The call back procedure for hocr recognize.
Definition: Document.h:918
Class for manipulation with XMP metadata.
Definition: PdfXmpMetadata.h:55
ContentDisposition
MIME protocol Content-Disposition header.
Definition: ContentDisposition.h:11
Interface of object providing enumerator on contained elements.
Definition: Document.h:589
Collection of PDF document pages.
Definition: PageCollection.h:136
Root structure element.
Definition: Element.h:310
Class represents collection of XFormCollection.
Definition: XFormCollection.h:83
Class represeingting page label collection.
Definition: PageLabelCollection.h:41
Represents a class to edit PDF file&#39;s content.
Definition: PdfContentEditor.h:89
PrintScaling
The page scaling option that shall be selected when a print dialog is displayed for this document...
Definition: PrintScaling.h:16
Class represent XForm
Definition: XForm.h:199
Class represents the collection of all destinations (a name tree mapping name strings to destinations...
Definition: DestinationCollection.h:47
void SetTemplateWeakPtr(uint32_t argument) override
Set n&#39;th template argument a weak pointer (rather than shared). Allows switching pointers in containe...
Definition: Document.h:1082
Class representing annotation object.
Definition: Annotation.h:300
FontSubsetStrategy
enumerates strategies for font subsetting
Definition: FontSubsetStrategy.h:13
Class which performes reading of FDF format.
Definition: FdfReader.h:67
Represents a class for work with PDF document annotations (comments).
Definition: PdfAnnotationEditor.h:52
This class represents paragraph collection.
Definition: Paragraphs.h:36
Class representing checkbox field
Definition: CheckboxField.h:86
Interface for dictionary-alike containers. Objects of this class should only be allocated using Syste...
Definition: Document.h:588
Class which describes document optimization algorithm. Instance of this class may be used as paramete...
Definition: Document.h:957
System::SharedPtr< Engine::IPdfDocument > _engineDoc
Instance of IPdfDocument used to access to internal document structure.
Definition: Document.h:2241
Class represents PDF Artifact object.
Definition: Artifact.h:94
ConvertTransparencyAction
This class represents action for conversion of transparency.
Definition: ConvertTransparencyAction.h:11
Provides additional capabilities for the Document class.
Definition: DocumentExtensions.h:28
SaveFormat
Specifies format
Definition: SaveFormat.h:16
Class for editing forms (ading/deleting field etc)
Definition: FormEditor.h:73
Class which allows to create/load documents of different types.
Definition: DocumentFactory.h:37
Interface of indexed container of elements. Objects of this class should only be allocated using Syst...
Definition: Collection.h:42
LoadOptions type holds level of abstraction on individual load options
Definition: LoadOptions.h:190