Options de conversion courantes
Dans cet article, nous allons décrire des options qui sont courantes pour les conversions des fichiers Microsoft Project MPP aux formats graphiques (PDF, TIFF, PNG, SVG, HTML). Aspose.tasks pour l’API .NET peut être utilisé pour convertir le projet chargé à partir de MS Project MPP, Primavera P6 XML, Primavera Xer ou d’autres formats d’entrée pris en charge en formats PDF ou graphiques. Dans ce cas, la vue d’un projet spécifique est rendue sous format spécifié.
Spécification d’une vue pour enregistrer
Microsoft Project prend en charge une vue différente, telle que «Gantt Chart», «Utilisation des tâches», «utilisation des ressources», etc. Chaque vue peut être personnalisée et ces paramètres sont stockés dans le fichier MPP. Aspose.tasks pour .NET permet à l’utilisateur d’examiner et de modifier ces paramètres à l’aide de la collection project.views.
Il existe 3 façons de spécifier la vue qui sera exportée lorsque le projet sera enregistré en formats graphiques.
- Ne spécifiez pas de vue explicitement. Dans ce cas, Project.DefaultView sera rendu. Si la vue par défaut est manquante, la vue du graphique Gantt sera rendue.
- Utiliser SaveOptions.PresentationFormat pour spécifier la valeur de PresentationFormat Énumération. Dans ce cas, la vue avec la propriété d’écran correspondant sera sélectionnée dans la collection Project.Views. Si la vue est manquante, la vue par défaut de Ganttchart avec le formatage standard sera utilisée.
- Utilisez SaveOptions.ViewSettings Propriété pour spécifier explicitement l’objet de vue à rendre. Si l’objet View est spécifié, la valeur de SaveOptions.presentationFormat est ignorée.
Spécification d’une taille de page
Lorsque vous rendez les fichiers de projet Microsoft sur PDF, image ou XPS, il est important de spécifier la taille de la page appropriée. Cela garantit une mise à l’échelle des graphiques corrects, réduit le risque de données tronquées et permet une meilleure intégration du document dans les processus métier. Aspose.tasks vous permet de spécifier les tailles de page standard et personnalisées, ainsi que d’utiliser des paramètres enregistrés à partir d’un fichier MPP.
La taille de la page peut être spécifiée de la manière suivante:
- Ne spécifiez pas la taille de la page. Dans ce cas, PageSize.A4 sera utilisé.
- Spécifiez la pages de pages prédéfinies via la propriété SaveOptions.PageSize:
1 Project project = new Project("Project.mpp");
2 PdfSaveOptions saveOptions = new PdfSaveOptions()
3 {
4 PresentationFormat = PresentationFormat.GanttChart,
5 PageSize = PageSize.A2
6 };
7
8project.Save("OutputFitToA2.pdf", saveOptions);
- Specify custom PageSize via SaveOptions.CustomPageSize property:
1 Project project = new Project("Project.mpp");
2 PdfSaveOptions saveOptions = new PdfSaveOptions()
3 {
4 PresentationFormat = PresentationFormat.GanttChart,
5 CustomPageSize = new SizeF(700, 900),
6 };
7
8 project.Save("OutputFitToCustomPage.pdf", saveOptions);
- Specify PageSize.DefinedInView to use page size saved in MS Project’s Page Setup dialog:
The option is applicable when input file is in MS Project MPP format
1 Project project = new Project("Project.mpp");
2
3 var taskUsageView= project.Views.FirstOrDefault(v => v.Screen == ViewScreen.TaskUsage);
4 taskUsageView.PageInfo.PageSettings.PaperSize = PrinterPaperSize.PaperEnvelope10;
5
6 PdfSaveOptions saveOptions = new PdfSaveOptions()
7 {
8 ViewSettings = taskUsageView,
9 PageSize = PageSize.DefinedInView
10 };
11
12 project.Save("OutputToEnvelope.pdf", saveOptions);
Note: The PageSize.DefinedInView
option is only effective when the source file is an MPP file and contains a view with saved page setup settings. If the view does not contain page setup information or the input file format is not MPP (e.g., XML), this option will have no effect.
Fitting Contents to Cell Size
Commonly, a task (or resource) name is so long that it is truncated when project views are rendered. Aspose.Tasks for .NET provides the FitContent property in the SaveOptions class to avoid truncation of task and resource names. The code example below renders a project to PDF format with the FitContent property set to true.
1Project project = new Project("New Project.mpp");
2SaveOptions options = new PdfSaveOptions();
3
4// Set option fit content to true
5options.FitContent = true;
6options.Timescale = Timescale.Months;
7options.PresentationFormat = PresentationFormat.TaskUsage;
8project.Save("FitContentsToCellSize_out.pdf", options);
Here is an examples of an output file without and with FitContent option:
Printing or Hiding Legends when Rendering
To let you print or hide the legends on each page, the SaveOptions class provides the LegendOnEachPage property. If this flag is set to true, legends are printed on each page in the out
1 SaveOptions options = new PdfSaveOptions();
2
3 // Set the LegendDrawingOptions property to NoLegend to hide legends
4 options.LegendDrawingOptions = LegendDrawingOptions.NoLegend;
Saving to Multiple PDF or graphical files
To save project data to multiple PDF files, set the SaveToSeparateFiles flag to true.
1Project project = new Project("New Project.mpp");
2PdfSaveOptions options = new PdfSaveOptions();
3options.SaveToSeparateFiles = true;
4options.Pages = new List<int>();
5options.Pages.Add(1);
6options.Pages.Add(4);
7project.Save("SaveToMultiplePDFFiles_out.pdf", (SaveOptions)options);