Beispiel #1
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithGradient();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Initialize List of XpsGradentStop
            List <XpsGradientStop> stops = new List <XpsGradientStop>();

            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 244, 253, 225), 0.0673828f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 251, 240, 23), 0.314453f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 252, 209, 0), 0.482422f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 241, 254, 161), 0.634766f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 53, 253, 255), 0.915039f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 12, 91, 248), 1f));
            // Create new path by defining geometery in abbreviation form
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 10,210 L 228,210 228,300 10,300"));

            path.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 20f, 70f);
            path.Fill            = doc.CreateLinearGradientBrush(new PointF(10f, 0f), new PointF(228f, 0f));
            ((XpsGradientBrush)path.Fill).GradientStops.AddRange(stops);
            // Save resultant XPS document
            doc.Save(dataDir + "AddHorizontalGradient_out.xps");
            // ExEnd:1
        }
Beispiel #2
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithGradient();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Initialize List of XpsGradentStop
            List <XpsGradientStop> stops = new List <XpsGradientStop>();

            stops.Add(doc.CreateGradientStop(doc.CreateColor(253, 255, 12, 0), 0f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(252, 255, 154, 0), 0.359375f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(252, 255, 56, 0), 0.424805f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(253, 255, 229, 0), 0.879883f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(252, 255, 255, 234), 1f));
            // Create new path by defining geometery in abbreviation form
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 10,110 L 228,110 228,200 10,200"));

            path.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 20f, 70f);
            path.Fill            = doc.CreateLinearGradientBrush(new PointF(10f, 110f), new PointF(10f, 200f));
            ((XpsGradientBrush)path.Fill).GradientStops.AddRange(stops);
            // Save resultant XPS document
            doc.Save(dataDir + "AddVerticalGradient_out.xps");
            // ExEnd:1
        }
Beispiel #3
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithDocumentConversion();

            // Initialize PDF output stream
            using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
                // Initialize XPS input stream
                using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.Open, System.IO.FileAccess.Read))
                {
                    // Load XPS document form the stream
                    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
                    // or load XPS document directly from file. No xpsStream is needed then.
                    // XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());

                    // Initialize options object with necessary parameters.
                    Aspose.Page.Xps.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.Xps.Presentation.Pdf.PdfSaveOptions()
                    {
                        JpegQualityLevel = 100,
                        ImageCompression = Aspose.Page.Xps.Presentation.Pdf.PdfImageCompression.Jpeg,
                        TextCompression  = Aspose.Page.Xps.Presentation.Pdf.PdfTextCompression.Flate,
                        PageNumbers      = new int[] { 1, 2, 6 }
                    };

                    // Create rendering device for PDF format
                    Aspose.Page.Xps.Presentation.Pdf.PdfDevice device = new Aspose.Page.Xps.Presentation.Pdf.PdfDevice(pdfStream);

                    document.Save(device, options);
                }
            // ExEnd:1
        }
Beispiel #4
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithShapes();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Radial gradient stroked ellipse in the lower left
            List<XpsGradientStop> stops = new List<XpsGradientStop>();
            stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 0, 255), 0f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 0, 0), .25f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 255, 0), .5f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 255, 0), .75f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 0, 0), 1f));

            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 20,250 A 100,50 0 1 1 220,250 100,50 0 1 1 20,250"));
            path.Stroke = doc.CreateRadialGradientBrush(new PointF(575f, 125f), new PointF(575f, 100f), 75f, 50f);
            ((XpsGradientBrush)path.Stroke).SpreadMethod = XpsSpreadMethod.Reflect;
            ((XpsGradientBrush)path.Stroke).GradientStops.AddRange(stops);
            stops.Clear();
            path.StrokeThickness = 12f;
            // Save resultant XPS document
            doc.Save(dataDir + "AddEllipse_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithGradient();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Initialize List of XpsGradentStop
            List <XpsGradientStop> stops = new List <XpsGradientStop>();

            // Add Colors to Gradient
            stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 142, 4), 0f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 202, 0), 0.144531f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 250, 0), 0.264648f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(255, 0, 0), 0.414063f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(233, 0, 255), 0.544922f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(107, 27, 190), 0.694336f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(63, 0, 255), 0.844727f));
            stops.Add(doc.CreateGradientStop(doc.CreateColor(0, 199, 80), 1f));
            // Create new path by defining geometery in abbreviation form
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 10,10 L 228,10 228,100 10,100"));

            path.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 20f, 70f);
            path.Fill            = doc.CreateLinearGradientBrush(new PointF(10f, 10f), new PointF(228f, 100f));
            ((XpsGradientBrush)path.Fill).GradientStops.AddRange(stops);
            // Save resultant XPS document
            doc.Save(dataDir + "AddLinearGradient_out.xps");
            // ExEnd:1
        }
Beispiel #6
0
 ///<Summary>
 /// ConvertXpsToPdf method to convert Xps file to pdf
 ///</Summary>
 public Response ConvertXpsToPdf(string fileName, string folderName)
 {
     return(ProcessTask(fileName, folderName, ".pdf", false, false, delegate(string inFilePath, string outPath, string zipOutFolder)
     {
         using (FileStream pdfStream = new FileStream(outPath, System.IO.FileMode.Create, System.IO.FileAccess.Write))
             using (FileStream xpsStream = new FileStream(inFilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read))
             {
                 XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
                 Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);
                 document.Save(device, new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions());
             }
     }));
 }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithPages();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument(dataDir + "Sample1.xps");

            // Insert an empty page at beginning of pages list
            doc.InsertPage(1, true);

            // Save resultant XPS document
            doc.Save(dataDir + "AddPages_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithDocumentConversion();
            // Input file
            string inputFileName = dataDir + "input.xps";
            //Outut file
            string outputFileName = dataDir + "XPStoImage_out.jpeg";

            // Initialize XPS input stream
            using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
            {
                // Load XPS document form the stream
                XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
                // or load XPS document directly from file. No xpsStream is needed then.
                // XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());

                // Initialize options object with necessary parameters.
                JpegSaveOptions options = new JpegSaveOptions()
                {
                    SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
                    Resolution    = 300,
                    PageNumbers   = new int[] { 1, 2, 6 }
                };

                // Create rendering device for PDF format
                ImageDevice device = new ImageDevice();

                document.Save(device, options);

                // Iterate through document partitions (fixed documents, in XPS terms)
                for (int i = 0; i < device.Result.Length; i++)
                {
                    // Iterate through partition pages
                    for (int j = 0; j < device.Result[i].Length; j++)
                    {
                        // Initialize image output stream
                        using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
                                                                        Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
                                                                        Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
                            // Write image
                            imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
                    }
                }
            }
            // ExEnd:1
        }
Beispiel #9
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithDocumentConversion();
            // Load Existing XPS Document
            XpsDocument doc = new XpsDocument(dataDir + "input.xps");
            // Initialize PdfSaveOptions
            PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();

            // Specify TextCompression Style
            pdfSaveOptions.TextCompression = PdfTextCompression.Flate;
            // Save as PDF Document
            doc.Save(dataDir + "XPStoPDF_out.pdf", pdfSaveOptions);
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithDocumentConversion();
            // Load Existing XPS Document
            XpsDocument doc = new XpsDocument(dataDir + "input.xps");
            // Initialize PngSaveOptions
            PngSaveOptions pngSaveOptions = new PngSaveOptions();

            // Specify Resolution
            pngSaveOptions.Resolution = 300f;
            // Save as PNG Image
            doc.Save(dataDir + "XPStoImage_out.png", pngSaveOptions);
            // ExEnd:1
        }
Beispiel #11
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithText();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            //Create a brush
            XpsSolidColorBrush textFill = doc.CreateSolidColorBrush(Color.Black);
            //Add glyph to the document
            XpsGlyphs glyphs = doc.AddGlyphs("Arial", 12, FontStyle.Regular, 300f, 450f, "Hello World!");

            glyphs.Fill = textFill;
            // Save resultant XPS document
            doc.Save(dataDir + "AddText_out.xps");
            // ExEnd:1
        }
Beispiel #12
0
        private Response ConvertXpsToImage(string fileName, string folderName, string outputType)
        {
            return(ProcessTask(fileName, folderName, "." + outputType, true, false,

                               delegate(string inFilePath, string outPath, string zipOutFolder)
            {
                using (Stream xpsStream = System.IO.File.Open(inFilePath, FileMode.Open, FileAccess.Read))
                {
                    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
                    Aspose.Page.XPS.Presentation.Image.ImageSaveOptions options = new BmpSaveOptions();

                    switch (outputType)
                    {
                    case "tiff":
                        options = new TiffSaveOptions();
                        break;

                    case "png":
                        options = new PngSaveOptions();
                        break;

                    case "jpg":
                        options = new JpegSaveOptions();
                        break;
                    }

                    Page.XPS.Presentation.Image.ImageDevice device = new Page.XPS.Presentation.Image.ImageDevice();

                    document.Save(device, options);

                    for (int i = 0; i < device.Result.Length; i++)
                    {
                        for (int j = 0; j < device.Result[i].Length; j++)
                        {
                            string imagePath = Path.GetFileNameWithoutExtension(fileName) + "_" + (j + 1) + "." + outputType;
                            outPath = zipOutFolder + "/" + imagePath;

                            using (Stream imageStream = System.IO.File.Open(outPath, FileMode.Create, FileAccess.Write))
                            {
                                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
                            }
                        }
                    }
                }
            }));
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithText();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Add Text
            XpsSolidColorBrush textFill = doc.CreateSolidColorBrush(Color.Black);
            XpsGlyphs          glyphs   = doc.AddGlyphs("Arial", 20, FontStyle.Regular, 400f, 200f, "TEN. rof SPX.esopsA");

            glyphs.BidiLevel = 1;
            glyphs.Fill      = textFill;
            // Save resultant XPS document
            doc.Save(dataDir + "AddText_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithShapes();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // CMYK (blue) solid color stroked rectangle in the lower left
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 20,10 L 220,10 220,100 20,100 Z"));

            path.Stroke = doc.CreateSolidColorBrush(
                doc.CreateColor(dataDir + "uswebuncoated.icc", 1.0f, 1.000f, 0.000f, 0.000f, 0.000f));
            path.StrokeThickness = 12f;
            // Save resultant XPS document
            doc.Save(dataDir + "AddRectangle_out.xps");
            // ExEnd:1
        }
Beispiel #15
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithImages();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Add Image
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));

            //Creating a matrix is optional, it can be used for proper positioning
            path.RenderTransform = doc.CreateMatrix(0.7f, 0f, 0f, 0.7f, 0f, 20f);
            //Create Image Brush
            path.Fill = doc.CreateImageBrush(dataDir + "QL_logo_color.tif", new RectangleF(0f, 0f, 258.24f, 56.64f), new RectangleF(50f, 20f, 193.68f, 42.48f));
            // Save resultant XPS document
            doc.Save(dataDir + "AddImage_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithImages();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            // Tile image
            // ImageBrush filled rectangle in the right top bellow
            XpsPath path = doc.AddPath(doc.CreatePathGeometry("M 10,160 L 228,160 228,305 10,305"));

            path.Fill = doc.CreateImageBrush(dataDir + "R08LN_NN.jpg", new RectangleF(0f, 0f, 128f, 96f), new RectangleF(0f, 0f, 64f, 48f));
            ((XpsImageBrush)path.Fill).TileMode = XpsTileMode.Tile;
            path.Fill.Opacity = 0.5f;
            // Save resultant XPS document
            doc.Save(dataDir + "AddTiledImage_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithVisualBrush();

            XpsDocument doc = new XpsDocument();
            // Geometry for magenta grid VisualBrush
            XpsPathGeometry pathGeometry = doc.CreatePathGeometry();

            pathGeometry.AddSegment(doc.CreatePolyLineSegment(
                                        new PointF[] { new PointF(240f, 5f), new PointF(240f, 310f), new PointF(0f, 310f) }));
            pathGeometry[0].StartPoint = new PointF(0f, 5f);

            // Canvas for magenta grid VisualBrush
            XpsCanvas visualCanvas = doc.CreateCanvas();

            XpsPath visualPath = visualCanvas.AddPath(
                doc.CreatePathGeometry("M 0,4 L 4,4 4,0 6,0 6,4 10,4 10,6 6,6 6,10 4,10 4,6 0,6 Z"));

            visualPath.Fill = doc.CreateSolidColorBrush(doc.CreateColor(1f, .61f, 0.1f, 0.61f));

            XpsPath gridPath = doc.CreatePath(pathGeometry);

            //Create Visual Brush, it is specified by some XPS fragment (vector graphics and glyphs)
            gridPath.Fill = doc.CreateVisualBrush(visualCanvas,
                                                  new RectangleF(0f, 0f, 10f, 10f), new RectangleF(0f, 0f, 10f, 10f));
            ((XpsVisualBrush)gridPath.Fill).TileMode = XpsTileMode.Tile;
            // New canvas
            XpsCanvas canvas = doc.AddCanvas();

            canvas.RenderTransform = doc.CreateMatrix(1f, 0f, 0f, 1f, 268f, 70f);
            // Add grid
            canvas.AddPath(gridPath);
            // Red transparent rectangle in the middle top
            XpsPath path = canvas.AddPath(doc.CreatePathGeometry("M 30,20 l 258.24,0 0,56.64 -258.24,0 Z"));

            path         = canvas.AddPath(doc.CreatePathGeometry("M 10,10 L 228,10 228,100 10,100"));
            path.Fill    = doc.CreateSolidColorBrush(doc.CreateColor(1.0f, 0.0f, 0.0f));
            path.Opacity = 0.7f;
            // Save resultant XPS document
            doc.Save(dataDir + "AddGrid_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithTransparency();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();
            //Add Canvas to XpsDocument instance
            XpsCanvas canvas = doc.AddCanvas();
            // Rectangle with opacity masked by ImageBrush
            XpsPath path = canvas.AddPath(doc.CreatePathGeometry("M 10,180 L 228,180 228,285 10,285"));

            path.Fill        = doc.CreateSolidColorBrush(doc.CreateColor(1.0f, 0.0f, 0.0f));
            path.OpacityMask = doc.CreateImageBrush(dataDir + "R08SY_NN.tif", new RectangleF(0f, 0f, 128f, 192f),
                                                    new RectangleF(0f, 0f, 64f, 96f));
            ((XpsImageBrush)path.OpacityMask).TileMode = XpsTileMode.Tile;
            // Save resultant XPS document
            doc.Save(dataDir + "OpacityMask_out.xps");
            // ExEnd:1
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithDocumentConversion();
            // Load Existing XPS Document
            XpsDocument doc = new XpsDocument(dataDir + "input.xps");
            // Initialize PdfSaveOptions
            PdfSaveOptions pdfSaveOptions = new PdfSaveOptions
            {
                // Specify TextCompression Style
                TextCompression = PdfTextCompression.Flate
            };
            //Create a PDF stream
            FileStream outputStream = new FileStream(dataDir + "XPStoPDF_out.pdf", FileMode.OpenOrCreate);

            // Save as PDF Document
            doc.Save(outputStream, pdfSaveOptions);
            // ExEnd:1
        }
        private List <string> GetDocumentPages(string file, string folderName, int currentPage)
        {
            List <string> lstOutput   = new List <string>();
            string        outfileName = "page_{0}";
            string        outPath     = Config.Configuration.OutputDirectory + folderName + "/" + outfileName;

            currentPage = currentPage - 1;
            Directory.CreateDirectory(Config.Configuration.OutputDirectory + folderName);
            string imagePath = string.Format(outPath, currentPage) + ".jpeg";

            if (System.IO.File.Exists(imagePath) && currentPage > 0)
            {
                lstOutput.Add(imagePath);
                return(lstOutput);
            }

            int i = currentPage;

            var filename = System.IO.File.Exists(Config.Configuration.WorkingDirectory + folderName + "/" + file)
                                ? Config.Configuration.WorkingDirectory + folderName + "/" + file
                                : Config.Configuration.OutputDirectory + folderName + "/" + file;

            using (FilePathLock.Use(filename))
            {
                try
                {
                    if (!System.IO.File.Exists(Config.Configuration.OutputDirectory + folderName + "/" + "outputPDF.pdf"))
                    {
                        Aspose.Page.Live.Demos.UI.Models.License.SetAsposePageLicense();
                        System.IO.FileStream pdfStream = new System.IO.FileStream(Config.Configuration.OutputDirectory + folderName + "/" + "outputPDF.pdf", System.IO.FileMode.CreateNew, System.IO.FileAccess.Write);
                        System.IO.FileStream psStream  = new System.IO.FileStream(Config.Configuration.WorkingDirectory + folderName + "/" + file, System.IO.FileMode.Open, System.IO.FileAccess.Read);

                        try
                        {
                            if (file.ToLower().EndsWith(".xps"))
                            {
                                Page.XPS.XpsDocument document = new XpsDocument(psStream, new Page.XPS.XpsLoadOptions());
                                Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions();
                                Aspose.Page.XPS.Presentation.Pdf.PdfDevice      device  = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream, new Size(595, 842));
                                document.Save(device, options);
                            }
                            else
                            {
                                PsDocument document = new PsDocument(psStream);
                                Aspose.Page.EPS.Device.PdfSaveOptions options = new Aspose.Page.EPS.Device.PdfSaveOptions(true);
                                Aspose.Page.EPS.Device.PdfDevice      device  = new Aspose.Page.EPS.Device.PdfDevice(pdfStream, new Size(595, 842));
                                document.Save(device, options);
                            }
                        }
                        finally
                        {
                            psStream.Close();
                            pdfStream.Close();
                        }
                    }


                    PdfConverter objConverter = new PdfConverter();
                    objConverter.BindPdf(Config.Configuration.OutputDirectory + folderName + "/" + "outputPDF.pdf");
                    objConverter.DoConvert();
                    objConverter.CoordinateType = PageCoordinateType.CropBox;
                    if (currentPage < objConverter.PageCount)
                    {
                        lstOutput.Add(objConverter.PageCount.ToString());
                        i = 0;
                        while (objConverter.HasNextImage() && i < objConverter.PageCount)
                        {
                            objConverter.StartPage = (currentPage + 1);
                            objConverter.GetNextImage(imagePath, System.Drawing.Imaging.ImageFormat.Png);
                            lstOutput.Add(imagePath);
                            break;
                        }
                    }
                    objConverter.Close();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                return(lstOutput);
            }
        }
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir_WorkingWithTransparency();
            // Create new XPS Document
            XpsDocument doc = new XpsDocument();

            // Just to demonstrate transparency
            doc.AddPath(doc.CreatePathGeometry("M120,0 H400 v1000 H120")).Fill = doc.CreateSolidColorBrush(Color.Gray);
            doc.AddPath(doc.CreatePathGeometry("M300,120 h600 V420 h-600")).Fill = doc.CreateSolidColorBrush(Color.Gray);

            // Create path with closed rectangle geometry
            XpsPath path1 = doc.CreatePath(doc.CreatePathGeometry("M20,20 h200 v200 h-200 z"));
            // Set blue solid brush to fill path1
            path1.Fill = doc.CreateSolidColorBrush(Color.Blue);
            // Add it to the current page
            XpsPath path2 = doc.Add(path1);

            // path1 and path2 are the same as soon as path1 hasn't been placed inside any other element
            // (which means that path1 had no parent element).
            // Because of that rectangle's color on the page effectively turns to green
            path2.Fill = doc.CreateSolidColorBrush(Color.Green);

            // Now add path2 once again. Now path2 has parent. So path3 won't be the same as path2.
            // Thus a new rectangle is painted on the page ...
            XpsPath path3 = doc.Add(path2);
            // ... and we shift it 300 units lower ...
            path3.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 0, 300);
            // ... and set red solid brush to fill it
            path3.Fill = doc.CreateSolidColorBrush(Color.Red);

            // Create new path4 with path2's geometry ...
            XpsPath path4 = doc.AddPath(path2.Data);
            // ... shift it 300 units to the right ...
            path4.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 300, 0);
            // ... and set blue solid fill
            path4.Fill = doc.CreateSolidColorBrush(Color.Blue);

            // Add path4 once again.
            XpsPath path5 = doc.Add(path4);
            // path4 and path5 are not the same again ...
            // (move path5 300 units lower)
            path5.RenderTransform = path5.RenderTransform.Clone(); // to disconnect RenderTransform value from path4 (see next comment about Fill property)
            path5.RenderTransform.Translate(0, 300);
            // ... but if we set the opacity of Fill property, it will take effect on both path5 and path4
            // because brush is a complex property value which remains the same for path5 and path4
            path5.Fill.Opacity = 0.8f;

            // Create new path6 with path2's geometry ...
            XpsPath path6 = doc.AddPath(path2.Data);
            // ... shift it 600 units to the right ...
            path6.RenderTransform = doc.CreateMatrix(1, 0, 0, 1, 600, 0);
            // ... and set yellow solid fill
            path6.Fill = doc.CreateSolidColorBrush(Color.Yellow);

            // Now add path6's clone ...
            XpsPath path7 = doc.Add(path6.Clone());
            // (move path5 300 units lower)
            path7.RenderTransform = path7.RenderTransform.Clone();
            path7.RenderTransform.Translate(0, 300);
            // ... and set opacity for path7
            path7.Fill.Opacity = 0.8f;
            // Now opacity effects independantly as soon as property values are cloned along with the element

            // The following code block is equivalent to the previous one.
            // Add path6 itself. path6 and path7 are not the same. Although their Fill property values are the same 
            //XpsPath path7 = doc.Add(path6);
            //path7.RenderTransform = path7.RenderTransform.Clone();
            //path7.RenderTransform.Translate(0, 300);
            // To "disconnect" path7's Fill property from path6's Fill property reassign it to its clone (or path6's Fill clone)
            //path7.Fill = ((XpsSolidColorBrush)path7.Fill).Clone();
            //path7.Fill.Opacity = 0.8f;

            // Save resultant XPS document
            doc.Save(dataDir + "WorkingWithTransparency_out.xps");
            // ExEnd:1
        }