Class KeepSolidObjectsAlgorithm

Class KeepSolidObjectsAlgorithm

Το όνομα: Aspose.Note.Saving Συγκέντρωση: Aspose.Note.dll (25.4.0)

Μεταφέρετε το πλήρες αντικείμενο στην επόμενη σελίδα σε περίπτωση που δεν ταιριάζει στην αρχική σελίδα.

public class KeepSolidObjectsAlgorithm : PageSplittingAlgorithm
   {
      private readonly double _minimumSpaceBetweenPages;
      private readonly double _maximumSpaceBetweenPages;
      public KeepSolidObjectsAlgorithm(double minimumSpaceBetweenPages, double maximumSpaceBetweenPages)
      {
         _minimumSpaceBetweenPages = minimumSpaceBetweenPages;
         _maximumSpaceBetweenPages = maximumSpaceBetweenPages;
      }
      protected override void AddPageBreak(Document document, PageLayout pageLayout, float pageNumber, bool isLastPageInSection)
      {
         double spaceBefore = FindSpaceBefore(document, pageLayout);
         if (IsSufficientSpaceForNextPage(spaceBefore))
            return;
         AddSpaceBetweenPages(document, pageNumber);
      }
      private bool IsSufficientSpaceForNextPage(double spaceBefore)
      {
         double sufficientSpace = _minimumSpaceBetweenPages;
         if (sufficientSpace > spaceBefore)
            sufficientSpace = spaceBefore;
         if (sufficientSpace >= _maximumSpaceBetweenPages)
            return true;
         return false;
      }
      private void AddSpaceBetweenPages(Document document, float pageNumber)
      {
         double spaceToAdd = FindNextPageStartPosition(document, pageNumber + 1) - GetLastContentEndPosition(document, pageNumber);
         if (spaceToAdd > 0.0)
            AddSpace(document, spaceToAdd);
      }
      private void AddSpace(Document document, double spaceToAdd)
      {
      }
   }

Inheritance

object PageSplittingAlgorithm KeepSolidObjectsAlgorithm

Κληρονομημένα μέλη

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Examples

Δείχνει πώς να αποθηκεύσετε το σημειωματάριο σε μορφή pdf με καθορισμένες επιλογές.

string dataDir = RunExamples.GetDataDir_NoteBook();
   var notebook = new Notebook(dataDir + "Notizbuch �ffnen.onetoc2");
   var notebookSaveOptions = new NotebookPdfSaveOptions();
   var documentSaveOptions = notebookSaveOptions.DocumentSaveOptions;
   documentSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm();
   dataDir += "ConvertToPDF_out.pdf";
   notebook.Save(dataDir, notebookSaveOptions);

Δείχνει πώς να στείλετε ένα έγγραφο σε έναν εκτυπωτή χρησιμοποιώντας ένα προεπιλεγμένο διάλογο Windows με καθορισμένες επιλογές.

string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
   var document = new Aspose.Note.Document(dataDir + "Aspose.one");
   var printerSettings = new PrinterSettings()
   {
      FromPage = 0,
      ToPage = 10
   };
   printerSettings.DefaultPageSettings.Landscape = true;
   printerSettings.DefaultPageSettings.Margins = new System.Drawing.Printing.Margins(50, 50, 150, 50);
   document.Print(new PrintOptions()
   {
      PrinterSettings = printerSettings,
      Resolution = 1200,
      PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(),
      DocumentName = "Test.one"
   });

Όταν οι μακροχρόνιες σελίδες του OneNote αποθηκεύονται σε μορφή pdf, χωρίζονται μεταξύ σελίδων.Το παράδειγμα δείχνει πώς να ρυθμίσετε τη λογική διαίρεσης των αντικειμένων που βρίσκονται στις διακοπές της σελίδας.

string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
   Document doc = new Document(dataDir + "Aspose.one");
   var pdfSaveOptions = new PdfSaveOptions();
   pdfSaveOptions.PageSplittingAlgorithm = new AlwaysSplitObjectsAlgorithm();
   pdfSaveOptions.PageSplittingAlgorithm = new KeepPartAndCloneSolidObjectToNextPageAlgorithm();
   pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm();
   float heightLimitOfClonedPart = 500;
   pdfSaveOptions.PageSplittingAlgorithm = new KeepPartAndCloneSolidObjectToNextPageAlgorithm(heightLimitOfClonedPart);
   pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(heightLimitOfClonedPart);
   pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(100);
   pdfSaveOptions.PageSplittingAlgorithm = new KeepSolidObjectsAlgorithm(400);
   dataDir += "UsingKeepSOlidObjectsAlgorithm_out.pdf";
   doc.Save(dataDir);

Constructors

Ετικέτες Αλγόριθμος ()

Ξεκινά μια νέα περίπτωση της κατηγορίας Aspose.Note.Saving.KeepSolidObjectsAlgorithm χρησιμοποιώντας το προεπιλεγμένο όριο ύψους κλωνοποιημένου μέρους.

public KeepSolidObjectsAlgorithm()
   {
   }

Ετικέτες Αλγορίθμος (Float)

Αρχίζει μια νέα περίπτωση της κατηγορίας Aspose.Note.Saving.KeepSolidObjectsAlgorithm χρησιμοποιώντας ένα συγκεκριμένο όριο ύψους κλωνοποιημένου μέρους.

public KeepSolidObjectsAlgorithm(float heightLimitOfClonedPart)
   {
   }

Parameters

heightLimitOfClonedPart float

Το μέγιστο ύψος του κλωνοποιημένου μέρους.

Fields

DefaultHeightLimitOfClonedPart

Το προεπιλεγμένο μέγεθος του κλωνοποιημένου μέρους.

public const float DefaultHeightLimitOfClonedPart = 200;

Αξία πεδίου

float

Properties

HeightLimitOfClonedPart

Αποκτά το όριο ύψους του κλωνοποιημένου μέρους.

public float HeightLimitOfClonedPart
   {
      get;
   }

Αξία ιδιοκτησίας

float

 Ελληνικά