Відношення діаграм Ганта з Aspose.Tasks для java
Microsoft Project дозволяє користувачам встановлювати часовий графік, в якому відображається діаграма Gantt.
Aspose.Tasks для Java підтримує цю функцію і дозволяє відображати графіки Ганта з різними налаштуваннями часового масштабу. Графіки Ганта можна надати на одній сторінці зображення за допомогою цих параметрів.
Встановлення термінів та збереження на зображення
Властивість часової шкали класу ImagesaveOptions визначає налаштування часового масштабу проекту. Часовий показник за замовчуванням встановлюється на дні. Інші варіанти - місяць і третій місяці.
Наступний зразок коду:
- Читає файл проекту.
- Встановлює кожне різне налаштування часового шкали.
- Зберігає файл на диск як JPG.
1Project Project = новий проект ("newProductDev.mpp");
2// Зберегти на одній сторінці зображення (TimeSeScale.days за замовчуванням)
3project.save ("newproductdevdays.jpeg", нові зображеннямики (savefileformat.jpeg));
4// Зберегти на одній сторінці зображення (TimeSeScale.thrdsofmonths)
5Параметри ImagesaveOptions = Нові ImagesaveOptions (SaveFileFormat.jpeg);
6варіанти.setTimeScale (timeSecale.thirdsofmonths);
7project.save ("newProductDevthirdsofmonths.jpeg", варіанти);
8// Зберегти на одній сторінці зображення (TimeSeScale.months)
9варіанти.setTimeScale (TimeSeScale.months);
10project.save ("newproductdevmonths.jpeg", варіанти);
Згортання барів gantt під час візуалізації
Якщо властивість SaveOptions.RollupgantTbars встановлена на True, будь -яке підсумкове завдання в проекті відзначається його видимими підзадовими, з урахуванням завдання. (Якщо task.hidebar = True, смужка не надається на діаграмі Ганта.) Якщо SaveOptions.RollupgantTbars = False, підзадача буде показана у підсумковому завданні, за умови, що subtask.isrollup та subtask.parenttask.isrollup встановлюються на істині. Крім того, якщо SaveOptions.RawnOnkingTime (Значення за замовчуванням = True) встановлено на помилковий, неробочий час не буде показаний на діаграмі Ганта.
Приклад 1
1PDFSAVEOPTIONS ПАРТІЇ = Нові PDFSaveOptions ();
2опції.presentationFormat = PresentationFormat.ganttchart;
3опції.fitcontent = true;
4параметри.rollupganttbars = false;
5параметри.
6опції.pagesize = pagesize.a3;
7String file = path.combine (common.testdatapath + "візуалізація \\", ім'я файлу);
8string resfile = path.combine (resultfolder, filename.replace (". mpp", ".pdf"));
9Project Project = новий проект (файл); // ми можемо прочитати проект без Projectreader зараз.
10project.save (resfile, варіанти);
Вихід з прикладу 1
Приклад 2
У цьому прикладі SaveOptions.rollupganttbars = true, saveOptions.drawnonworkingtime = true, і task.hidebar = false для прихованих завдань.
1PDFSAVEOPTIONS ПАРТІЇ = Нові PDFSaveOptions ();
2опції.setPresentationFormat (PresentationFormat.ganttchart);
3Options.setFitContent (True);
4параметри.setRollupgantTbars (false);
5Options.setDrawnonworkingTime (false);
6опції.setPagesize (pagesize.a3);
7Project Project = новий проект ("rollupganttbars.mpp"); // ми можемо прочитати проект без Projectreader зараз.
8project.save ("rollupganttbars.pdf", варіанти);
Вихід з прикладу 2
Налаштування тексту за допомогою рядків завдань
У цьому прикладі текст праворуч від панелі завдань можна налаштувати за допомогою екземпляра делегатів. Тут ми налаштовуємо текст у критичних завданнях.
1Long onesec = 10000000; // microsecond * 10
2довгий онмен = 60 * onesec;
3Довгий одинhour = 60 * Onemin;
4Project Project = новий проект ();
5Task Task1 = project.addtask ("Завдання 1");
6Task Task2 = project.addtask ("Завдання 2");
7подвійний dduration = onehour * 8,0 * 3.0; // 3 дні завдання
8Завдання1.setDuration ((довга) dduration);
9Завдання1.setDuration ((довга) dduration);
10TaskLink Link = новий TaskLink (Task1, Task2, TaskLinkType.Finishtostart);
11project.addtasklink (посилання);
12Завдання 3 = project.addtask ("Завдання 3");
13Resource rsc1 = project.addresource ("ресурс 1");
14Resource rsc2 = project.addresource ("ресурс 2");
15Resource rsc3 = project.addresource ("ресурс 3");
16Project.addresourceassignment (Task1, RSC1);
17Project.addresourceassignment (Task2, RSC2);
18project.addresourceassignment (Task3, RSC3);
19Параметри SaveOptions = нові pdfsaveOptions ();
20варіанти.setTimeScale (timeSecale.thirdsofmonths);
21Стиль Barstyle = новий Barstyle ();
22style.setitemtype (baritemtype.criticaltask);
23style.setbartextconverter (новий barstyle.tasktobartextconverter () {
24 @Override
25 public String App (завдання завдання) {
26 повернути "завдання" + task.getName () + "на критичному шляху";
27 }
28});
29Barstyle style2 = новий Barstyle ();
30style2.setbarcolor (color.darkgray);
31style2.setitemtype (baritemtype.task);
32Options.setBarstyles (новий ArrayList <Barstyle> ());
33options.getBarstyles (). Додати (стиль);
34options.getBarstyles (). Додати (style2);
35project.save ("result2.pdf", варіанти);
Зміст клітин
Текст може бути узгоджений за допомогою GanttchartColumn.Stringalignment, ResourceViewColumn.Stringalignment Properties. Вирівнювання за замовчуванням - StringAlignment.Near (зліва).
1Project Project = новий проект ("Renderme.mpp"); // Доданий тестовий проект
2Параметри SaveOptions = нові pdfsaveOptions ();
3варіанти.setTimeScale (TimeSeScale.months);
4Options.setView (ProjectView.getDefaultGantTchartView ());
5Ganttchartcolumn col = (ganttchartcolumn) опції
6полковник (1); // Центр
7col = (ganttchartcolumn) опції.getView (). GetColumns (). Get (3);
8полковник (2); // далеко
9col = (ganttchartcolumn) опції.getView (). GetColumns (). Get (4);
10полковник (2); // далеко
11project.save ("Результат ganttchart.pdf", варіанти);
12опції.setPresentationFormat (PresentationFormat.Resourceseet);
13ResourceViewColumn col1 = (ResourceViewColumn) опція.getView (). GetColumns (). Get (2);
14col1.setstringalignment (1);
15col1 = (ResourceViewColumn) опція.getView (). GetColumns (). Get (3);
16col1.setstringalignment (2);
17col1 = (ResourceViewColumn) опції.getView (). GetColumns (). Get (4);
18col1.setstringalignment (2);
19project.save ("Результат resourceheet.pdf", параметри);
Зміна градієнта кольорів gantt графіків
Microsoft Project дозволяє користувачам надавати вихід діаграм Gantt за допомогою градієнтних кольорів. Така ж функціональність забезпечується Aspose.Tasks, як показано в наступному зразковому коді.
1Project Project = новий проект ("newProductDev.mpp");
2Параметри SaveOptions = нові xamloptions ();
3параметри.setusegradientbrush (false);
4project.save ("Solid.xaml", варіанти);
5параметри.setusegradientbrush (правда);
6project.save ("gradient.xaml", варіанти);
Налаштування дата початку перегляду діаграми gantt
Властивість TimeScalestart, що піддається класу PRJ, дозволяє встановити дату початку перегляду діаграми Gantt. Однак, якщо збережений файл буде відкритий MSP в режимі максимального вікна, то дата початку часового шкали не збігається.
1Project Project = новий проект ("rel_constr.mpp");
2project.set (prj.timescale_start, нова дата (115, 2, 3));
3project.save ("temp.mpp", savefileformat.mpp);