Overview

Tasqize MPP to PDF is a specialized .NET SDK designed to simplify the conversion of Microsoft Project (MPP) files into PDF documents. It offers a range of options to control the output layout, timescale granularity, text styling, and more.

Core Features

  • Convert MPP to PDF: Effortlessly transform Microsoft Project files into professional-quality PDFs.
  • Advanced Customization:
    • Configure timescale levels (Days, Weeks, Months) for more granular or broader project views.
    • Choose presentation formats (GanttChart, ResourceSheet, etc.).
    • Apply custom TextStyle settings for tasks, milestones, resources, and other textual elements.
  • Full .NET Support:
    • Compatible with .NET Framework 4.x and .NET 5/6/7+ (via .NET Standard 2.0).
    • Runs on Windows, Linux, macOS.

Dive deeper into the Developer’s Guide to learn how to implement MPP-to-PDF conversion, set up license files, and configure timescales for your project data.

Subsections of Overview

Installation

NuGet

The recommended way to install Tasqize is via NuGet.
Simply add the Tasqize package to your .NET project to get started.

Jan 13, 2025

Subsections of Installation

System Requirements

Below are the system requirements for Tasqize MPP to PDF:

Supported Operating Systems

  • Windows: 7, 8, 10, 11, Server 2008–2022
  • Linux: Ubuntu, Debian, CentOS, etc. (requires libgdiplus + fonts)
  • macOS: 10.12 (Sierra) and later

Supported .NET Versions

  • .NET Framework 4.8+
  • .NET 6, 7+

Development Tools

  • Visual Studio 2015–2022
  • Visual Studio Code
  • JetBrains Rider

Additional Notes

  • No Microsoft Project installation is required.
  • For non-Windows environments, install libgdiplus and ensure fonts are available for best rendering results.
Dec 30, 2024

Declaration

Tasqize MPP to PDF requires Full Trust permission in .NET applications. This is because the SDK may need elevated permissions for file I/O operations and font handling (particularly on Windows).

Why Full Trust?

  • Registry or System Folder Access: Some advanced operations might reference system paths or fonts.
  • Loading External Assemblies: We rely on specialized libraries that may trigger certain system-level requests.

Limitations of Medium Trust

Under Medium Trust (common in certain ASP.NET shared hosting), the following are restricted:

  • Registry Access
  • ReflectionPermission
  • FileIOPermission beyond the app’s virtual directory

Because of these restrictions, the MPP conversion may fail if Full Trust is not enabled. If your environment cannot provide Full Trust, consider a dedicated server or container with fewer sandbox limits.

Dec 30, 2024

Non-Windows Environment

Tasqize MPP to PDF supports .NET 6 (or .NET Core 3.1+) on Linux and macOS.

  1. Install libgdiplus
sudo apt-get update
sudo apt-get install -y libgdiplus
  1. Fonts
    Install Microsoft TrueType fonts or place necessary fonts in a directory your code can reference:
tasqize.Text.FontRepository.Sources.Add(new FolderFontSource("/usr/share/fonts/truetype/msttcorefonts"));
  1. Run
    Compile and run your .NET application normally. Ensure libgdiplus and fonts are present so the tasks/gantt bars and text render correctly.

With these steps, cross-platform MPP to PDF conversion should work seamlessly.

Dec 30, 2024

Evaluation

You can download Tasqize MPP to PDF for evaluation. The trial version provides full functionality but inserts a watermark on output PDFs, and only partial data is rendered if no license is applied.

Removing Watermarks

Once you purchase a license, set it in code:

var license = new Tasqize.License();
license.SetLicense("myLicenseFile.lic");

This removes trial limitations and watermarks, unlocking the complete feature set.

Dec 30, 2024

Developer's Guide

Below you’ll find articles on how to use Tasqize MPP to PDF in your .NET projects. This guide covers everything from setting a license and choosing timescale settings to applying text styles or specific project views.

  1. MPP to PDF Converter Overview
  2. Installation Notes
  3. FAQ
Dec 30, 2024

Subsections of Developer's Guide

MPP to PDF Converter

The Tasqize MPP to PDF Converter simplifies the creation of PDF documents from MPP files, enabling you to generate Gantt charts, resource sheets, or other project overviews in PDF form.

Key Features

  • Timescale Control: Render project timeline in Days, Weeks, or Months for the PDF output.
  • Presentation Formats: Choose from GanttChart, TaskUsage, ResourceSheet, or ResourceUsage.
  • Styling: Apply TextStyle for tasks, milestones, resources, or custom item types (e.g., OverallocatedResources, SummaryTasks).
  • Cross-Platform: Works on Windows, Linux, macOS via .NET Core / .NET 5+.

How to Convert MPP to PDF

To convert an MPP to PDF:

  1. Set the License (optional, but recommended for production):
var license = new Tasqize.License();
license.SetLicense("path/to/Tasqize.Project_to_PDF_Converter_for_.NET.lic");
  1. Create a Converter and Options:
var converter = new Tasqize.ProjectToPdfConverter();
var saveOptions = new Tasqize.PdfSaveOptions
{
    FitContent = true,                      // avoids text truncation
    Timescale = Tasqize.Timescale.Weeks,    // day, week, month, etc.
    PresentationFormat = Tasqize.PresentationFormat.ResourceSheet
};

saveOptions.TextStyles.Add(new Tasqize.TextStyle
{
    ItemType = Tasqize.TextItemType.CriticalTasks,
    Color = System.Drawing.Color.Red,
    FontStyle = Tasqize.FontStyles.Bold
});
  1. Convert the File:
converter.ConvertToPdf(
    inputFilePath: "MyPlan.mpp",
    outputFilePath: "MyPlan.pdf",
    options: saveOptions
);
  1. Check Output:
    • Ensure MyPlan.pdf was created and that it reflects your chosen timescale, presentation format, and text styling.

Advanced Configuration

  • View Settings: You can override standard presentation formats with a custom ViewSettings object if you want a named view or to enable progress lines, etc.
  • BackgroundPattern: Apply a background pattern (e.g. SolidFill) for certain text items.
  • FontStyles: Combine flags (Bold | Italic | Underline) for specific text emphasis.
  • Exception Handling:
    • FileNotFoundException if the input MPP doesn’t exist.
    • InvalidOperationException if the MPP is corrupt or the conversion fails.

Example Code

using Tasqize;

var license = new License();
license.SetLicense("Tasqize.Project_to_PDF_Converter_for_.NET.lic");

var converter = new ProjectToPdfConverter();
converter.ConvertToPdf(
    "../../../example.mpp", 
    "example-output.pdf",
    new PdfSaveOptions {
        PresentationFormat = PresentationFormat.GanttChart,
        Timescale = Timescale.Days
    }
);

Console.WriteLine("Conversion complete!");

This plugin is designed for developers seeking to integrate MPP processing directly into .NET applications, eliminating the need for Microsoft Project to be installed. For more details on system requirements and non-Windows usage, see the Installation section.

FAQs

Below are some common questions about Tasqize MPP to PDF.


General Questions

1. What is Tasqize MPP to PDF?

Tasqize MPP to PDF is a .NET SDK that converts Microsoft Project (MPP) files into PDF documents. It provides fine-grained customization of the exported PDF layout, including text styles, timescale views, and presentation formats (e.g. GanttChart, ResourceSheet).

2. How do I install Tasqize MPP to PDF?

You can install the Tasqize package via NuGet. Refer to our Installation Guide for more details.

3. Can I control the timescale in the exported PDF?

Yes. Use PdfSaveOptions.Timescale to choose between Days, Weeks, Months, etc. This determines the level of detail shown along the project timeline.

4. How do I apply custom text styles?

Create a list of TextStyle objects, each defining properties like Color, FontStyle, and the specific TextItemType (for example, milestones, critical tasks). Assign this list to PdfSaveOptions.TextStyles before calling ConvertToPdf.

5. Is Microsoft Project required on the machine?

No. Tasqize MPP to PDF operates independently, though it internally references Aspose libraries to parse MPP files. Microsoft Project itself is not needed.

6. How do I set my license key?

Use the License class:

var license = new Tasqize.License();
license.SetLicense("path/to/your.lic");

Do this once at application startup to remove evaluation watermarks and unlock the full functionality.

7. Is cross-platform development supported?

Yes. With .NET 6+ or .NET Core 3.1+ on Linux or macOS, just ensure you have installed libgdiplus and any needed fonts. Check Non-Windows Setup for details.

8. Where can I find more examples?

Please refer to our Developer’s Guide for in-depth code snippets on advanced usage, including resource sheets, Gantt charts, and time-phased data.