Работа со страницами проекта

Aspose.Tasks for .NET может получить общее количество страниц в проекте. GetPageCount метод, предоставляемый Aspose.Tasks.Visualization namespace возвращает общее количество страниц в проекте с опцией их отображения на основе Timescale.Days, Timescale.Months или Timescale.ThirdsOfMonths.

Получение количества страниц в проекте

Класс Project предоставляет GetPageCount method.

Вы можете указать разные timescales:

Чтобы сохранить проект в PDF:

  1. Загрузите файл Microsoft Project.
  2. Получите общее количество страниц проекта с помощью метода GetPageCount с необязательными настройками timescale.

Программный пример: Получение количества страниц в проекте

Ниже приведён код, показывающий, как этого добиться с использованием C#.

1Project project = new Project("New Project.mpp");
2
3// Get number of pages,  Timescale.Months, Timescale.ThirdsOfMonths
4int iPages = project.GetPageCount();
5iPages = project.GetPageCount(Timescale.Months);
6iPages = project.GetPageCount(Timescale.ThirdsOfMonths);

Получение количества страниц для различных представлений

Aspose.Tasks for .NET поддерживает отображение Resource Usage, Resource Sheet, и Task Usage представлений в PDF. Вы также можете вычислить количество страниц для каждого представления отдельно. Этот пример кода демонстрирует генерацию представления использования проекта и получение количества страниц в сгенерированном выводе.

Пример: Получение количества страниц для представлений (C#)

1Project project = new Project("New Project.mpp");
2
3// Get number of pages,  Months and  ThirdsOfMonths
4Console.WriteLine(string.Format("Number of Pages = '{0}'", project.GetPageCount(PresentationFormat.ResourceUsage, Timescale.Days)));
5Console.WriteLine(string.Format("Number of Pages = '{0}'", project.GetPageCount(PresentationFormat.ResourceUsage, Timescale.Months)));
6Console.WriteLine(string.Format("Number of Pages = '{0}'", project.GetPageCount(PresentationFormat.ResourceUsage, Timescale.ThirdsOfMonths)));

Фильтрация количества страниц по диапазону дат

Если вам нужно вычислить количество страниц для определённого диапазона дат (Start–End), Aspose.Tasks предоставляет перегрузку GetPageCount метода, принимающую DateTime параметры.

Программный пример: Получение количества страниц на основе дат начала и окончания

 1Project project = new Project("New Project.mpp");
 2
 3ImageSaveOptions options = new ImageSaveOptions(SaveFileFormat.PNG)
 4{
 5    SaveToSeparateFiles = true,
 6    PageSize = PageSize.A3,
 7    Timescale = Timescale.Months,
 8    StartDate = project.Get(Prj.StartDate) - TimeSpan.FromDays(10),
 9    EndDate = project.Get(Prj.FinishDate) + TimeSpan.FromDays(30)
10};
11int pageCount = project.GetPageCount(
12    PageSize.A3,
13    Timescale.Months,
14    project.Get(Prj.StartDate) - TimeSpan.FromDays(10),
15    project.Get(Prj.FinishDate) + TimeSpan.FromDays(30));
16
17Console.WriteLine(pageCount);
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.