public virtual void ColorTest08() { PdfWriter writer = new PdfWriter(destinationFolder + "colorTest08.pdf"); writer.SetCompressionLevel(CompressionConstants.NO_COMPRESSION); PdfDocument document = new PdfDocument(writer); PdfPage page = document.AddNewPage(); PdfFunction.Type4 function = new PdfFunction.Type4(new PdfArray(new float[] { 0, 1, 0, 1 }), new PdfArray( new float[] { 0, 1, 0, 1, 0, 1 }), "{0}".GetBytes(iText.IO.Util.EncodingUtil.ISO_8859_1)); List <String> tmpArray = new List <String>(2); tmpArray.Add("MyRed"); tmpArray.Add("MyGreen"); PdfSpecialCs.DeviceN deviceN = new PdfSpecialCs.DeviceN(tmpArray, new PdfDeviceCs.Rgb(), function); PdfCanvas canvas = new PdfCanvas(page); canvas.SetFillColor(new DeviceN(deviceN, new float[] { 0, 0 })).Rectangle(50, 500, 50, 50).Fill(); canvas.SetFillColor(new DeviceN(deviceN, new float[] { 0, 1 })).Rectangle(150, 500, 50, 50).Fill(); canvas.SetFillColor(new DeviceN(deviceN, new float[] { 1, 0 })).Rectangle(250, 500, 50, 50).Fill(); canvas.Release(); document.Close(); NUnit.Framework.Assert.IsNull(new CompareTool().CompareByContent(destinationFolder + "colorTest08.pdf", sourceFolder + "cmp_colorTest08.pdf", destinationFolder, "diff_")); }
private PdfColorSpace BuildDeviceNColorspace(int numberOfComponents) { IList <String> tmpArray = new List <String>(numberOfComponents); float[] transformArray = new float[numberOfComponents * 2]; for (int i = 0; i < numberOfComponents; i++) { tmpArray.Add("MyColor" + i + 1); transformArray[i * 2] = 0; transformArray[i * 2 + 1] = 1; } PdfFunction.Type4 function = new PdfFunction.Type4(new PdfArray(transformArray), new PdfArray(new float[] { 0, 1, 0, 1, 0, 1 }), "{0}".GetBytes(iText.IO.Util.EncodingUtil.ISO_8859_1)); return(new PdfSpecialCs.DeviceN(tmpArray, new PdfDeviceCs.Rgb(), function)); }
public virtual void ColorTest07() { PdfWriter writer = new PdfWriter(DESTINATION_FOLDER + "colorTest07.pdf"); writer.SetCompressionLevel(CompressionConstants.NO_COMPRESSION); PdfDocument document = new PdfDocument(writer); PdfPage page = document.AddNewPage(); PdfFunction.Type4 function = new PdfFunction.Type4(new PdfArray(new float[] { 0, 1 }), new PdfArray(new float [] { 0, 1, 0, 1, 0, 1 }), "{0 0}".GetBytes(iText.IO.Util.EncodingUtil.ISO_8859_1)); PdfSpecialCs.Separation separation = new PdfSpecialCs.Separation("MyRed", new PdfDeviceCs.Rgb(), function); PdfCanvas canvas = new PdfCanvas(page); canvas.SetFillColor(new Separation(separation, 0.25f)).Rectangle(50, 500, 50, 50).Fill(); canvas.SetFillColor(new Separation(separation, 0.5f)).Rectangle(150, 500, 50, 50).Fill(); canvas.SetFillColor(new Separation(separation, 0.75f)).Rectangle(250, 500, 50, 50).Fill(); canvas.Release(); document.Close(); NUnit.Framework.Assert.IsNull(new CompareTool().CompareByContent(DESTINATION_FOLDER + "colorTest07.pdf", SOURCE_FOLDER + "cmp_colorTest07.pdf", DESTINATION_FOLDER, "diff_")); }
private PdfColorSpace BuildDeviceNColorspace(int numberOfComponents) { IList <String> tmpArray = new List <String>(numberOfComponents); float[] transformArray = new float[numberOfComponents * 2]; for (int i = 0; i < numberOfComponents; i++) { tmpArray.Add("MyColor" + i + 1); transformArray[i * 2] = 0; transformArray[i * 2 + 1] = 1; } PdfFunction.Type4 function = new PdfFunction.Type4(new PdfArray(transformArray), new PdfArray(new float[] { 0, 1, 0, 1, 0, 1 }), "{0}".GetBytes(iText.IO.Util.EncodingUtil.ISO_8859_1)); //TODO DEVSIX-4205 Replace with a constructor with 4 parameters or use a setter for attributes dictionary PdfArray deviceNAsArray = ((PdfArray)(new PdfSpecialCs.DeviceN(tmpArray, new PdfDeviceCs.Rgb(), function)) .GetPdfObject()); PdfDictionary attributes = new PdfDictionary(); deviceNAsArray.Add(attributes); return(new PdfSpecialCs.DeviceN(deviceNAsArray)); }
public virtual void DeviceNColorspaceNoAttributesDictionary() { NUnit.Framework.Assert.That(() => { //TODO DEVSIX-4203 should not cause an IndexOutOfBoundException. // Should throw PdfAConformanceException as Colorants dictionary always must be present // for Pdf/A-2 int numberOfComponents = 2; IList <String> tmpArray = new List <String>(numberOfComponents); float[] transformArray = new float[numberOfComponents * 2]; for (int i = 0; i < numberOfComponents; i++) { tmpArray.Add("MyColor" + i + 1); transformArray[i * 2] = 0; transformArray[i * 2 + 1] = 1; } PdfFunction.Type4 function = new PdfFunction.Type4(new PdfArray(transformArray), new PdfArray(new float[] { 0, 1, 0, 1, 0, 1 }), "{0}".GetBytes(iText.IO.Util.EncodingUtil.ISO_8859_1)); PdfDictionary currentColorSpaces = new PdfDictionary(); pdfA2Checker.CheckColorSpace(new PdfSpecialCs.DeviceN(tmpArray, new PdfDeviceCs.Rgb(), function), currentColorSpaces , true, false); } , NUnit.Framework.Throws.InstanceOf <Exception>()) ; }