プロジェクトページを操作します
C ++のAspose.Tasksは、プロジェクト内のページの総数を取得できます。 Aspose.Tasks の視覚化名前空間で提供されるgetPageCountメソッドは、TimesCale.days、TimesCale.MonthsまたはTimesCale.ThirdSofmonthsに基づいてレンダリングするオプションを備えたプロジェクトの合計ページカウントを返します。
プロジェクトでページ数を取得します
プロジェクトクラスは、プロジェクトの合計ページ数を取得するために使用されるGetPageCountメソッドを公開します。プロジェクト内のページの合計カウントは、TimesCale.Days、TimesCale.MonthsまたはTimesCale.thirdsofmonthsで取得できます。
プロジェクトをPDFに保存するには:
- Microsoftプロジェクトファイルをロードします。
- オプションのタイムスケール設定を備えたGetPageCountメソッドを使用して、プロジェクトの合計ページカウントを取得します。
プログラミングサンプル:プロジェクトでページ数を取得します 次のコード行は、プロジェクトで多くのページを取得する方法を示しています。
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Read the input Project file
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"GetNumberOfPages.mpp");
6
7// Get number of pages, Timescale.Months, Timescale.ThirdsOfMonths
8int32_t iPages = project->GetPageCount();
9iPages = project->GetPageCount(Aspose::Tasks::Visualization::Timescale::Months);
10iPages = project->GetPageCount(Aspose::Tasks::Visualization::Timescale::ThirdsOfMonths);
Programming Sample: Get the number of pages for different Views Aspose.Tasks for C++ supports rendering a project’s resource usage, resource sheet and task usage to PDF format, and enables users to get the number of pages in the rendered output for these views. This programming sample demonstrates rendering a projects’ usage view and getting the number of pages in the rendered output.
1// The path to the documents directory.
2System::String dataDir = RunExamples::GetDataDir(System::Reflection::MethodBase::GetCurrentMethod(ASPOSE_CURRENT_FUNCTION)->get_DeclaringType().get_FullName());
3
4// Read the source Project
5System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"GetNumberOfPagesForViews.mpp");
6
7// Get number of pages, Months and ThirdsOfMonths
8System::Console::WriteLine(System::String::Format(u"Number of Pages = '{0}'",project->GetPageCount(Aspose::Tasks::Visualization::PresentationFormat::ResourceUsage, Aspose::Tasks::Visualization::Timescale::Days)));
9System::Console::WriteLine(System::String::Format(u"Number of Pages = '{0}'",project->GetPageCount(Aspose::Tasks::Visualization::PresentationFormat::ResourceUsage, Aspose::Tasks::Visualization::Timescale::Months)));
10System::Console::WriteLine(System::String::Format(u"Number of Pages = '{0}'",project->GetPageCount(Aspose::Tasks::Visualization::PresentationFormat::ResourceUsage, Aspose::Tasks::Visualization::Timescale::ThirdsOfMonths)));
Programming Sample: Get number of pages based on Start and End Dates
1System::SharedPtr<Project> project = System::MakeObject<Project>(dataDir + u"GetNumberOfPages.mpp");
2
3auto options = [&]{ auto tmp_0 = System::MakeObject<ImageSaveOptions>(Aspose::Tasks::Saving::SaveFileFormat::PNG); tmp_0->set_SaveToSeparateFiles(true); tmp_0->set_PageSize(Aspose::Tasks::Visualization::PageSize::A3); tmp_0->set_Timescale(Aspose::Tasks::Visualization::Timescale::Months); tmp_0->set_StartDate(project->Get<System::DateTime>(Prj::StartDate()) - System::TimeSpan::FromDays(10)); tmp_0->set_EndDate(project->Get<System::DateTime>(Prj::FinishDate()) + System::TimeSpan::FromDays(30)); return tmp_0; }();
4int32_t pageCount = project->GetPageCount(Aspose::Tasks::Visualization::PageSize::A3, Aspose::Tasks::Visualization::Timescale::Months, project->Get<System::DateTime>(Prj::StartDate()) - System::TimeSpan::FromDays(10), project->Get<System::DateTime>(Prj::FinishDate()) + System::TimeSpan::FromDays(30));
5
6System::Console::WriteLine(pageCount);