@@ -139,6 +139,8 @@ public abstract class PdfAChecker {
139139
140140 private bool fullCheckMode = false ;
141141
142+ /// <summary>Creates a PdfAChecker with the required conformance level.</summary>
143+ /// <param name="conformanceLevel">the required conformance level</param>
142144 protected internal PdfAChecker ( PdfAConformanceLevel conformanceLevel ) {
143145 this . conformanceLevel = conformanceLevel ;
144146 }
@@ -417,57 +419,211 @@ public abstract void CheckColorSpace(PdfColorSpace colorSpace, PdfDictionary cur
417419 /// <returns>maximum allowed number of indirect objects</returns>
418420 protected internal abstract long GetMaxNumberOfIndirectObjects ( ) ;
419421
422+ /// <summary>Retrieve forbidden actions in conforming document.</summary>
423+ /// <returns>
424+ /// set of
425+ /// <see cref="iText.Kernel.Pdf.PdfName"/>
426+ /// with forbidden actions
427+ /// </returns>
420428 protected internal abstract ICollection < PdfName > GetForbiddenActions ( ) ;
421429
430+ /// <summary>Retrieve allowed actions in conforming document.</summary>
431+ /// <returns>
432+ /// set of
433+ /// <see cref="iText.Kernel.Pdf.PdfName"/>
434+ /// with allowed named actions
435+ /// </returns>
422436 protected internal abstract ICollection < PdfName > GetAllowedNamedActions ( ) ;
423437
438+ /// <summary>Checks if the action is allowed.</summary>
439+ /// <param name="action">to be checked</param>
424440 protected internal abstract void CheckAction ( PdfDictionary action ) ;
425441
442+ /// <summary>Verify the conformity of the annotation dictionary.</summary>
443+ /// <param name="annotDic">
444+ /// the annotation
445+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
446+ /// to be checked
447+ /// </param>
426448 protected internal abstract void CheckAnnotation ( PdfDictionary annotDic ) ;
427449
450+ /// <summary>Checks if entries in catalog dictionary are valid.</summary>
451+ /// <param name="catalogDict">
452+ /// the catalog
453+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
454+ /// to be checked
455+ /// </param>
428456 protected internal abstract void CheckCatalogValidEntries ( PdfDictionary catalogDict ) ;
429457
458+ /// <summary>Verify the conformity of used color spaces.</summary>
430459 protected internal abstract void CheckColorsUsages ( ) ;
431460
461+ /// <summary>Verify the conformity of the given image.</summary>
462+ /// <param name="image">the image to check</param>
463+ /// <param name="currentColorSpaces">
464+ /// the
465+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
466+ /// containing the color spaces used in the document
467+ /// </param>
432468 protected internal abstract void CheckImage ( PdfStream image , PdfDictionary currentColorSpaces ) ;
433469
470+ /// <summary>Verify the conformity of the file specification dictionary.</summary>
471+ /// <param name="fileSpec">
472+ /// the
473+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
474+ /// containing file specification to be checked
475+ /// </param>
434476 protected internal abstract void CheckFileSpec ( PdfDictionary fileSpec ) ;
435477
478+ /// <summary>Verify the conformity of the form dictionary.</summary>
479+ /// <param name="form">
480+ /// the form
481+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
482+ /// to be checked
483+ /// </param>
436484 protected internal abstract void CheckForm ( PdfDictionary form ) ;
437485
486+ /// <summary>Verify the conformity of the form XObject dictionary.</summary>
487+ /// <param name="form">
488+ /// the
489+ /// <see cref="iText.Kernel.Pdf.PdfStream"/>
490+ /// to check
491+ /// </param>
438492 protected internal abstract void CheckFormXObject ( PdfStream form ) ;
439493
494+ /// <summary>Performs a number of checks on the logical structure of the document.</summary>
495+ /// <param name="catalog">
496+ /// the catalog
497+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
498+ /// to check
499+ /// </param>
440500 protected internal abstract void CheckLogicalStructure ( PdfDictionary catalog ) ;
441501
502+ /// <summary>Performs a number of checks on the metadata of the document.</summary>
503+ /// <param name="catalog">
504+ /// the catalog
505+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
506+ /// to check
507+ /// </param>
442508 protected internal abstract void CheckMetaData ( PdfDictionary catalog ) ;
443509
510+ /// <summary>Verify the conformity of the non-symbolic TrueType font.</summary>
511+ /// <param name="trueTypeFont">
512+ /// the
513+ /// <see cref="iText.Kernel.Font.PdfTrueTypeFont"/>
514+ /// to check
515+ /// </param>
444516 protected internal abstract void CheckNonSymbolicTrueTypeFont ( PdfTrueTypeFont trueTypeFont ) ;
445517
518+ /// <summary>Verify the conformity of the output intents array in the catalog dictionary.</summary>
519+ /// <param name="catalog">
520+ /// the
521+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
522+ /// to check
523+ /// </param>
446524 protected internal abstract void CheckOutputIntents ( PdfDictionary catalog ) ;
447525
526+ /// <summary>Verify the conformity of the page dictionary.</summary>
527+ /// <param name="page">
528+ /// the
529+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
530+ /// to check
531+ /// </param>
532+ /// <param name="pageResources">the page's resources dictionary</param>
448533 protected internal abstract void CheckPageObject ( PdfDictionary page , PdfDictionary pageResources ) ;
449534
535+ /// <summary>Checks the allowable size of the page.</summary>
536+ /// <param name="page">
537+ /// the
538+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
539+ /// of page which size being checked
540+ /// </param>
450541 protected internal abstract void CheckPageSize ( PdfDictionary page ) ;
451542
543+ /// <summary>Verify the conformity of the PDF array.</summary>
544+ /// <param name="array">
545+ /// the
546+ /// <see cref="iText.Kernel.Pdf.PdfArray"/>
547+ /// to check
548+ /// </param>
452549 protected internal abstract void CheckPdfArray ( PdfArray array ) ;
453550
551+ /// <summary>Verify the conformity of the PDF dictionary.</summary>
552+ /// <param name="dictionary">
553+ /// the
554+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
555+ /// to check
556+ /// </param>
454557 protected internal abstract void CheckPdfDictionary ( PdfDictionary dictionary ) ;
455558
559+ /// <summary>Verify the conformity of the PDF name.</summary>
560+ /// <param name="name">
561+ /// the
562+ /// <see cref="iText.Kernel.Pdf.PdfName"/>
563+ /// to check
564+ /// </param>
456565 protected internal abstract void CheckPdfName ( PdfName name ) ;
457566
567+ /// <summary>Verify the conformity of the PDF number.</summary>
568+ /// <param name="number">
569+ /// the
570+ /// <see cref="iText.Kernel.Pdf.PdfNumber"/>
571+ /// to check
572+ /// </param>
458573 protected internal abstract void CheckPdfNumber ( PdfNumber number ) ;
459574
575+ /// <summary>Verify the conformity of the PDF stream.</summary>
576+ /// <param name="stream">
577+ /// the
578+ /// <see cref="iText.Kernel.Pdf.PdfStream"/>
579+ /// to check
580+ /// </param>
460581 protected internal abstract void CheckPdfStream ( PdfStream stream ) ;
461582
583+ /// <summary>Verify the conformity of the PDF string.</summary>
584+ /// <param name="string">
585+ /// the
586+ /// <see cref="iText.Kernel.Pdf.PdfString"/>
587+ /// to check
588+ /// </param>
462589 protected internal abstract void CheckPdfString ( PdfString @string ) ;
463590
591+ /// <summary>Verify the conformity of the symbolic TrueType font.</summary>
592+ /// <param name="trueTypeFont">
593+ /// the
594+ /// <see cref="iText.Kernel.Font.PdfTrueTypeFont"/>
595+ /// to check
596+ /// </param>
464597 protected internal abstract void CheckSymbolicTrueTypeFont ( PdfTrueTypeFont trueTypeFont ) ;
465598
599+ /// <summary>Verify the conformity of the trailer dictionary.</summary>
600+ /// <param name="trailer">
601+ /// the
602+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
603+ /// of trailer to check
604+ /// </param>
466605 protected internal abstract void CheckTrailer ( PdfDictionary trailer ) ;
467606
607+ /// <summary>Verify the conformity of the page transparency.</summary>
608+ /// <param name="pageDict">
609+ /// the
610+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
611+ /// contains contents for transparency to be checked
612+ /// </param>
613+ /// <param name="pageResources">
614+ /// the
615+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
616+ /// contains resources for transparency to be checked
617+ /// </param>
468618 protected internal abstract void CheckPageTransparency ( PdfDictionary pageDict , PdfDictionary pageResources
469619 ) ;
470620
621+ /// <summary>Verify the conformity of the resources dictionary.</summary>
622+ /// <param name="resources">
623+ /// the
624+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
625+ /// to be checked
626+ /// </param>
471627 protected internal virtual void CheckResources ( PdfDictionary resources ) {
472628 if ( resources == null ) {
473629 return ;
@@ -515,10 +671,21 @@ protected internal virtual void CheckResources(PdfDictionary resources) {
515671 }
516672 }
517673
674+ /// <summary>Checks if the specified flag is set.</summary>
675+ /// <param name="flags">a set of flags specifying various characteristics of the PDF object</param>
676+ /// <param name="flag">to be checked</param>
677+ /// <returns>true if the specified flag is set</returns>
518678 protected internal static bool CheckFlag ( int flags , int flag ) {
519679 return ( flags & flag ) != 0 ;
520680 }
521681
682+ /// <summary>Checks conformance level of PDF/A standard.</summary>
683+ /// <param name="conformanceLevel">
684+ /// the
685+ /// <see cref="iText.Kernel.Pdf.PdfAConformanceLevel"/>
686+ /// to be checked
687+ /// </param>
688+ /// <returns>true if the specified conformanceLevel is <c>a</c> for PDF/A-1, PDF/A-2 or PDF/A-3</returns>
522689 protected internal static bool CheckStructure ( PdfAConformanceLevel conformanceLevel ) {
523690 return conformanceLevel == PdfAConformanceLevel . PDF_A_1A || conformanceLevel == PdfAConformanceLevel . PDF_A_2A
524691 || conformanceLevel == PdfAConformanceLevel . PDF_A_3A ;
@@ -543,6 +710,13 @@ protected internal static bool IsContainsTransparencyGroup(PdfDictionary diction
543710 . Group ) . GetAsName ( PdfName . S ) ) ;
544711 }
545712
713+ /// <summary>Checks whether the specified dictionary was already checked.</summary>
714+ /// <param name="dictionary">
715+ /// the
716+ /// <see cref="iText.Kernel.Pdf.PdfDictionary"/>
717+ /// to check
718+ /// </param>
719+ /// <returns>true if the specified dictionary was checked</returns>
546720 protected internal virtual bool IsAlreadyChecked ( PdfDictionary dictionary ) {
547721 if ( checkedObjects . Contains ( dictionary ) ) {
548722 return true ;
0 commit comments