Example #1
0
        private void ManipulatePdf(String dest)
        {
            PdfDocument pdfDoc = new PdfDocument(new PdfWriter(dest));
            Document    doc    = new Document(pdfDoc);

            ImageData img   = ImageDataFactory.Create(IMG);
            Image     image = new Image(img);

            PdfPattern.Tiling imgPattern = new PdfPattern.Tiling(image.GetImageScaledWidth(),
                                                                 image.GetImageScaledHeight());

            PdfPatternCanvas canvas = new PdfPatternCanvas(imgPattern, pdfDoc);

            canvas.AddImageAt(img, 0, 0, false);

            Color color = new PatternColor(imgPattern);

            Table table = new Table(UnitValue.CreatePercentArray(2)).UseAllAvailableWidth();

            table.AddCell(new Cell().Add(new Paragraph("Behold a cell with an image pattern:")));

            Cell cell = new Cell();

            cell.SetHeight(60);
            cell.SetBackgroundColor(color);
            table.AddCell(cell);

            doc.Add(table);

            doc.Close();
        }
Example #2
0
 protected internal override ExcelDxfFill Clone()
 {
     return(new ExcelDxfFill(_styles)
     {
         PatternType = PatternType, PatternColor = PatternColor.Clone(), BackgroundColor = BackgroundColor.Clone()
     });
 }
Example #3
0
        protected override void CheckColor(PdfWriter writer, int key, Object obj1)
        {
            switch (key)
            {
            case PdfIsoKeys.PDFISOKEY_COLOR:
                if (obj1 is ExtendedColor)
                {
                    ExtendedColor ec = (ExtendedColor)obj1;
                    switch (ec.Type)
                    {
                    case ExtendedColor.TYPE_CMYK:
                        CheckColor(writer, PdfIsoKeys.PDFISOKEY_CMYK, obj1);
                        break;

                    case ExtendedColor.TYPE_GRAY:
                        return;

                    case ExtendedColor.TYPE_RGB:
                        CheckColor(writer, PdfIsoKeys.PDFISOKEY_RGB, obj1);
                        break;

                    case ExtendedColor.TYPE_SEPARATION:
                        SpotColor sc = (SpotColor)ec;
                        CheckColor(writer, PdfIsoKeys.PDFISOKEY_COLOR, sc.PdfSpotColor.AlternativeCS);
                        break;

                    case ExtendedColor.TYPE_SHADING:
                        ShadingColor xc = (ShadingColor)ec;
                        CheckColor(writer, PdfIsoKeys.PDFISOKEY_COLOR, xc.PdfShadingPattern.Shading.ColorSpace);
                        break;

                    case ExtendedColor.TYPE_PATTERN:
                        PatternColor pc = (PatternColor)ec;
                        CheckColor(writer, PdfIsoKeys.PDFISOKEY_COLOR, pc.Painter.DefaultColor);
                        break;
                    }
                }
                else if (obj1 is BaseColor)
                {
                    CheckColor(writer, PdfIsoKeys.PDFISOKEY_RGB, obj1);
                }
                break;

            case PdfIsoKeys.PDFISOKEY_CMYK:
                if (rgbUsed)
                {
                    throw new PdfAConformanceException(obj1, MessageLocalization.GetComposedMessage("devicergb.and.devicecmyk.colorspaces.cannot.be.used.both.in.one.file"));
                }
                cmykUsed = true;
                break;

            case PdfIsoKeys.PDFISOKEY_RGB:
                if (cmykUsed)
                {
                    throw new PdfAConformanceException(obj1, MessageLocalization.GetComposedMessage("devicergb.and.devicecmyk.colorspaces.cannot.be.used.both.in.one.file"));
                }
                rgbUsed = true;
                break;
            }
        }
    public void EnemyKilled(PatternColor bulletColor, PatternColor enemyColor, PatternShape enemyShape)
    {
        if (enemyShape != PatternShape.none)
        {
            if (patternSystem.EnemyDestroyedShape(enemyShape, (enemyColor == bulletColor)))
            {
                UIManager.Instance.SetNextColor(enemyColor);
                if (patternSystem.CurrentShape() == patternSystem.shapes[0])
                {
                    UIManager.Instance.CompletePattern();
                }
            }
            else
            {
                UIManager.Instance.ClearColors();
            }
        }

        if (enemyColor == bulletColor)
        {
            patternSystem.GotoNextColor();
            CurrentColor.SetColor(patternSystem.CurrentColor());
            NextColor.SetColor(patternSystem.NextColor());
        }
    }
 public void SetColor(PatternColor c)
 {
     if (m_color != c)
     {
         m_color = c;
         setMaterialByColor(c);
     }
 }
 void setMaterialByColor(PatternColor c)
 {
     if (m_renderer != null)
     {
         if (MaterialMap.instance != null)
         {
             Material[] mats = m_renderer.sharedMaterials;
             mats[MaterialIndex] = MaterialMap.instance.GetMaterial(c);
             m_renderer.sharedMaterials = mats;
         }
     }
 }
 public virtual void PatternColorUncoloredPatternColorUnitTest()
 {
     NUnit.Framework.Assert.That(() => {
         PdfDocument doc          = new PdfDocument(new PdfWriter(new MemoryStream()));
         PdfPattern.Tiling circle = new PdfPattern.Tiling(15, 15, 10, 20, false);
         new PdfPatternCanvas(circle, doc).Circle(7.5f, 7.5f, 2.5f).Fill().Release();
         PatternColor redCirclePattern = new PatternColor(circle, ColorConstants.RED);
         new PatternColor(circle, redCirclePattern);
     }
                                 , NUnit.Framework.Throws.InstanceOf <ArgumentException>())
     ;
 }
    public Material GetUIMaterial(PatternColor color)
    {
        for (int i = 0; i < UIShapeColors.Length; i++)
        {
            if (UIShapeColors[i].color == color)
            {
                return UIShapeColors[i].material;
            }
        }

        return null;
    }
    public Material GetMaterial(PatternColor color)
    {
        for(int i = 0; i < Colors.Length; i++)
        {
            if (Colors[i].color == color)
            {
                return Colors[i].material;
            }
        }

        return null;
    }
        private void CheckInTilingPattern(PdfObject @object)
        {
            String newContentString = PdfACheckerTestUtils.GetStreamWithValue(@object);

            byte[]     newContent = newContentString.GetBytes(System.Text.Encoding.UTF8);
            PdfPattern pattern    = new PdfPattern.Tiling(200, 200);

            ((PdfStream)pattern.GetPdfObject()).SetData(newContent);
            Color color = new PatternColor(pattern);

            pdfA1Checker.CheckColor(color, new PdfDictionary(), true, null);
        }
Example #11
0
        public override string ToString()
        {
            switch (PatternType)
            {
            case XLFillPatternValues.None:
                return("None");

            case XLFillPatternValues.Solid:
                return(string.Concat("Solid ", BackgroundColor.ToString()));

            default:
                return(string.Concat(PatternType.ToString(), " pattern: ", PatternColor.ToString(), " on ", BackgroundColor.ToString()));
            }
        }
        public virtual void PatternColorUncoloredSetTwiceTest()
        {
            String    name   = "patternColorUncoloredSetTwiceTest.pdf";
            PdfWriter writer = new PdfWriter(destinationFolder + name);

            writer.SetCompressionLevel(CompressionConstants.NO_COMPRESSION);
            PdfDocument document = new PdfDocument(writer);
            PdfPage     page     = document.AddNewPage();
            PdfCanvas   canvas   = new PdfCanvas(page);

            PdfPattern.Tiling circle = new PdfPattern.Tiling(15, 15, 10, 20, false);
            new PdfPatternCanvas(circle, document).Circle(7.5f, 7.5f, 2.5f).Fill().Release();
            PdfPattern.Tiling line = new PdfPattern.Tiling(5, 10, false);
            new PdfPatternCanvas(line, document).SetLineWidth(1).MoveTo(3, -1).LineTo(3, 11).Stroke().Release();
            PatternColor patternColorCircle = new PatternColor(circle, ColorConstants.RED);

            float[] cyan    = new float[] { 1, 0, 0, 0 };
            float[] magenta = new float[] { 0, 1, 0, 0 };
            PdfSpecialCs.UncoloredTilingPattern uncoloredTilingCmykCs = new PdfSpecialCs.UncoloredTilingPattern(new PdfDeviceCs.Cmyk
                                                                                                                    ());
            PatternColor patternColorLine = new PatternColor(line, uncoloredTilingCmykCs, magenta);

            canvas.SetFillColor(patternColorCircle);
            canvas.Rectangle(36, 696, 126, 126).Fill();
            canvas.SetFillColor(patternColorCircle);
            canvas.Rectangle(180, 696, 126, 126).Fill();
            canvas.SetFillColor(patternColorLine);
            canvas.Rectangle(36, 576, 126, 126).Fill();
            patternColorLine.SetColorValue(cyan);
            canvas.SetFillColor(patternColorLine);
            canvas.Rectangle(180, 576, 126, 126).Fill();
            // this case will be removed when deprecated method is removed
            patternColorLine.SetPattern(circle);
            canvas.SetFillColor(patternColorLine);
            canvas.Rectangle(360, 696, 126, 126).Fill();
            byte[] pageContentStreamBytes = canvas.GetContentStream().GetBytes();
            canvas.Release();
            document.Close();
            String contentStreamString = iText.IO.Util.JavaUtil.GetStringForBytes(pageContentStreamBytes, System.Text.Encoding
                                                                                  .ASCII);
            int p1Count = CountSubstringOccurrences(contentStreamString, "/P1 scn");
            int p2Count = CountSubstringOccurrences(contentStreamString, "/P2 scn");

            NUnit.Framework.Assert.AreEqual(3, p1Count);
            NUnit.Framework.Assert.AreEqual(2, p2Count);
            NUnit.Framework.Assert.IsNull(new CompareTool().CompareByContent(destinationFolder + name, sourceFolder +
                                                                             "cmp_" + name, destinationFolder));
        }
Example #13
0
    public void SelectAttack()
    {
        PatternColor randomColor;

        while (true)
        {
            randomColor = (PatternColor)Random.Range(0, (int)PatternColor.Blue);

            if (randomColor != PatternColor.None)
            {
                break;
            }
        }

        currentAttack = randomColor;
        attackDelay   = baseAttackDelay; // Should be changed based on color
        // Charge
        // Show Timer
    }
Example #14
0
    public void Damage(int damage, PatternColor color)
    {
        if (pattern != null && pattern.color == color)
        {
            //Defend Animation

            pattern = null;
            gameManager.DamageEnemyStagger(pattern.stun);
            return;
        }


        health -= damage;

        if (health <= 0)
        {
            Debug.Log("Game Over");
        }
    }
    public void SetColor(PatternColor color)
    {
        Material newMat = MaterialMap.instance.GetUIMaterial(color);
        Material[] matList = model.sharedMaterials;
        for (int i = 0; i < matList.Length; i++)
        {
            matList[i] = newMat;
        }
        model.sharedMaterials = matList;

        if (color == PatternColor.WHITE)
        {
            NGUITools.SetActive(glow.gameObject, false);
        }
        else
        {
            NGUITools.SetActive(glow.gameObject, true);
            glow.color = newMat.color;
        }
    }
 internal override XmlNode CreateXmlNode(XmlNode topNode)
 {
     TopNode = topNode;
     SetXmlNodeString(fillPatternTypePath, SetPatternString(_fillPatternType));
     if (PatternType != ExcelFillStyle.None)
     {
         XmlNode pattern = topNode.SelectSingleNode(fillPatternTypePath, NameSpaceManager);
         if (BackgroundColor.Exists)
         {
             CreateNode(_backgroundColorPath);
             BackgroundColor.CreateXmlNode(topNode.SelectSingleNode(_backgroundColorPath, NameSpaceManager));
             if (PatternColor.Exists)
             {
                 CreateNode(_patternColorPath);
                 PatternColor.CreateXmlNode(topNode.SelectSingleNode(_patternColorPath, NameSpaceManager));
             }
         }
     }
     return(topNode);
 }
Example #17
0
        public override int GetHashCode()
        {
            var hashCode = 2043579837;

            if (HasNoFill())
            {
                return(hashCode);
            }

            hashCode = hashCode * -1521134295 + PatternType.GetHashCode();
            hashCode = hashCode * -1521134295 + BackgroundColor.GetHashCode();

            if (HasNoForeground())
            {
                return(hashCode);
            }

            hashCode = hashCode * -1521134295 + PatternColor.GetHashCode();

            return(hashCode);
        }
Example #18
0
 public override int GetHashCode()
 {
     return(BackgroundColor.GetHashCode()
            ^ (Int32)PatternType
            ^ PatternColor.GetHashCode());
 }
Example #19
0
        public Chap1015()
        {
            Console.WriteLine("Chapter 10 Example 15: Tiled Patterns");

            // step 1: creation of a document-object
            Document document = new Document();

            try
            {
                // step 2:
                // we create a writer that listens to the document
                // and directs a PDF-stream to a file
                PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("Chap1015.pdf", FileMode.Create));

                // step 3: we open the document
                document.Open();

                // step 4: we grab the ContentByte and do some stuff with it
                PdfContentByte cb = writer.DirectContent;

                BaseFont bf = BaseFont.CreateFont("Times-Roman", "winansi", false);

                // step 5: we create some PdfPatternPainter instances for drawing path, text, or placing image

                // Image instance to be placed in PdfPatternPainter canvas. Any nice one?
                Image img = Image.GetInstance("pngnow.png");

                PdfPatternPainter p  = cb.CreatePattern(60f, 60f, 60f, 60f);
                PdfPatternPainter p1 = cb.CreatePattern(60f, 60f, 60f, 60f);
                PdfPatternPainter p2 = cb.CreatePattern(img.ScaledWidth, img.ScaledHeight, img.ScaledWidth, img.ScaledHeight);


                // step 6: put your drawing instruction in the painter canvas

                // A star pattern taken from Adobe PDF Reference Book p.207
                String star = "0.3 g\n15.000 27.000 m\n"
                              + "7.947 5.292 l\n26.413 18.708 l\n"
                              + "3.587 18.708 l\n22.053 5.292 l\nf\n"
                              + "45.000 57.000 m\n37.947 35.292 l\n"
                              + "56.413 48.708 l\n33.587 48.708 l\n"
                              + "52.053 35.292 l\nf\n"
                              + "0.7 g\n15.000 57.000 m\n"
                              + "7.947 35.292 l\n26.413 48.708 l\n"
                              + "3.587 48.708 l\n22.053 35.292 l\nf\n"
                              + "45.000 27.000 m\n37.947 5.292 l\n"
                              + "56.413 18.708 l\n33.587 18.708 l\n"
                              + "52.053 5.292 l\nf";

                p.SetLiteral(star);

                // A Pattern with some text drawing
                p1.SetGrayFill(0.3f);
                p1.SetFontAndSize(bf, 12);
                p1.BeginText();
                p1.SetTextMatrix(1f, 0f, 0f, 1f, 0f, 0f);
                p1.ShowText("A B C D");
                p1.EndText();
                p1.MoveTo(0f, 0f);
                p1.LineTo(60f, 60f);
                p1.Stroke();

                // A pattern with an image and position
                p2.AddImage(img, img.ScaledWidth, 0f, 0f, img.ScaledHeight, 0f, 0f);
                p2.SetPatternMatrix(1f, 0f, 0f, 1f, 60f, 60f);

                // See if we can apply the pattern color to chunk, phrase or paragraph
                PatternColor pat  = new PatternColor(p);
                PatternColor pat1 = new PatternColor(p1);
                PatternColor pat2 = new PatternColor(p2);
                String       text = "Text with pattern";
                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, new GrayColor(0.3f))));
                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, pat)));

                // draw a rectangle filled with star pattern
                cb.SetPatternFill(p);
                cb.SetGrayStroke(0.0f);
                cb.Rectangle(20, 20, 284, 120);
                cb.FillStroke();

                // draw some characters filled with star.
                // Note: A gray, rgb, cmyk or spot color should be applied first
                // otherwise, you will not be able to see the character glyph
                // since the glyph path is filled by pattern
                cb.BeginText();
                cb.SetFontAndSize(bf, 1);
                cb.SetTextMatrix(270f, 0f, 0f, 270f, 20f, 100f);
                cb.SetGrayFill(0.9f);
                cb.ShowText("ABC");
                cb.SetPatternFill(p);
                cb.MoveTextWithLeading(0.0f, 0.0f);
                cb.ShowText("ABC");
                cb.EndText();
                cb.SetPatternFill(p);

                // draw a circle. Similar to rectangle
                cb.SetGrayStroke(0.0f);
                cb.Circle(150f, 400f, 150f);
                cb.FillStroke();

                // New Page to draw text in the pattern painter's canvas
                document.NewPage();

                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, new GrayColor(0.3f))));
                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, pat1)));
                // draw a rectangle
                cb.SetPatternFill(p1);
                cb.SetGrayStroke(0.0f);
                cb.Rectangle(0, 0, 284, 120);
                cb.FillStroke();

                // draw some characters
                cb.BeginText();
                cb.SetFontAndSize(bf, 1);
                cb.SetTextMatrix(270f, 0f, 0f, 270f, 20f, 100f);
                cb.SetGrayFill(0.9f);
                cb.ShowText("ABC");
                cb.SetPatternFill(p1);
                cb.MoveTextWithLeading(0.0f, 0.0f);
                cb.ShowText("ABC");
                cb.EndText();

                // draw a circle
                cb.SetPatternFill(p1);
                cb.SetGrayStroke(0.0f);
                cb.Circle(150f, 400f, 150f);
                cb.FillStroke();

                // New page to place image in the pattern painter's canvas
                document.NewPage();
                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, new GrayColor(0.3f))));
                document.Add(new Paragraph(text, FontFactory.GetFont(FontFactory.HELVETICA, 60, Font.BOLD, pat2)));
                // The original Image for comparison reason.
                // Note: The width and height is the same as bbox in pattern
                cb.AddImage(img, img.ScaledWidth, 0f, 0f, img.ScaledHeight, 350f, 400f);

                // draw a rectangle
                cb.SetPatternFill(p2);
                cb.SetGrayStroke(0.0f);
                cb.Rectangle(60, 60, 300, 120);
                cb.FillStroke();

                // draw some characters.
                // Note: if the image fills up the pattern, there's no need to draw text twice
                // since colors in image will be clipped to character glyph path
                cb.BeginText();
                cb.SetFontAndSize(bf, 1);
                cb.SetTextMatrix(270f, 0f, 0f, 270f, 60f, 120f);
                cb.SetPatternFill(p2);
                cb.ShowText("ABC");
                cb.EndText();

                // draw a circle
                cb.SetPatternFill(p2);
                cb.SetGrayStroke(0.0f);
                cb.Circle(150f, 400f, 150f);
                cb.FillStroke();
            }
            catch (Exception e)
            {
                Console.Error.WriteLine(e.Message);
                Console.Error.WriteLine(e.StackTrace);
            }

            // finally, we close the document
            document.Close();
        }
Example #20
0
        /// <summary>
        /// Lấy màu pattern
        /// </summary>
        /// <param name="msoPatternType"></param>
        /// <param name="background"></param>
        /// <param name="foreground"></param>
        /// <returns></returns>
        private PatternColor GetPatternColor(MsoPatternType msoPatternType, pp.ColorFormat background, pp.ColorFormat foreground)
        {
            PatternColor patternColor = new PatternColor();

            patternColor.Background = GetSolidColor(background);
            patternColor.Foreground = GetSolidColor(foreground);
            switch (msoPatternType)
            {
            case MsoPatternType.msoPattern5Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT05;
                break;

            case MsoPatternType.msoPattern10Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT10;
                break;

            case MsoPatternType.msoPattern20Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT20;
                break;

            case MsoPatternType.msoPattern25Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT25;
                break;

            case MsoPatternType.msoPattern30Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT30;
                break;

            case MsoPatternType.msoPattern40Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT40;
                break;

            case MsoPatternType.msoPattern50Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT50;
                break;

            case MsoPatternType.msoPattern60Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT60;
                break;

            case MsoPatternType.msoPattern70Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT70;
                break;

            case MsoPatternType.msoPattern75Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT75;
                break;

            case MsoPatternType.msoPattern80Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT80;
                break;

            case MsoPatternType.msoPattern90Percent:
                patternColor.HatchStyle = HatchStyle.HS_PERCENT90;
                break;

            case MsoPatternType.msoPatternDarkHorizontal:
                patternColor.HatchStyle = HatchStyle.HS_DARKHORIZONTAL;
                break;

            case MsoPatternType.msoPatternDarkVertical:
                patternColor.HatchStyle = HatchStyle.HS_DARKVERTICAL;
                break;

            case MsoPatternType.msoPatternDarkDownwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DARKDOWNWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternDarkUpwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DARKUPWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternSmallCheckerBoard:
                patternColor.HatchStyle = HatchStyle.HS_SMALLCHECKERBOARD;
                break;

            case MsoPatternType.msoPatternTrellis:
                patternColor.HatchStyle = HatchStyle.HS_TRELLIS;
                break;

            case MsoPatternType.msoPatternLightHorizontal:
                patternColor.HatchStyle = HatchStyle.HS_LIGHTHORIZONTAL;
                break;

            case MsoPatternType.msoPatternLightVertical:
                patternColor.HatchStyle = HatchStyle.HS_LIGHTVERTICAL;
                break;

            case MsoPatternType.msoPatternLightDownwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_LIGHTDOWNWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternLightUpwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_LIGHTUPWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternSmallGrid:
                patternColor.HatchStyle = HatchStyle.HS_SMALLGRID;
                break;

            case MsoPatternType.msoPatternDottedDiamond:
                patternColor.HatchStyle = HatchStyle.HS_DOTTEDDIAMOND;
                break;

            case MsoPatternType.msoPatternWideDownwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_WIDEDOWNWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternWideUpwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_WIDEUPWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternDashedUpwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDUPWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternDashedDownwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDDOWNWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternNarrowVertical:
                patternColor.HatchStyle = HatchStyle.HS_NARROWVERTICAL;
                break;

            case MsoPatternType.msoPatternNarrowHorizontal:
                patternColor.HatchStyle = HatchStyle.HS_NARROWHORIZONTAL;
                break;

            case MsoPatternType.msoPatternDashedVertical:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDVERTICAL;
                break;

            case MsoPatternType.msoPatternDashedHorizontal:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDHORIZONTAL;
                break;

            case MsoPatternType.msoPatternLargeConfetti:
                patternColor.HatchStyle = HatchStyle.HS_LARGECONFETTI;
                break;

            case MsoPatternType.msoPatternLargeGrid:
                patternColor.HatchStyle = HatchStyle.HS_LARGEGRID;
                break;

            case MsoPatternType.msoPatternHorizontalBrick:
                patternColor.HatchStyle = HatchStyle.HS_HORIZONTALBRICK;
                break;

            case MsoPatternType.msoPatternLargeCheckerBoard:
                patternColor.HatchStyle = HatchStyle.HS_LARGECHECKERBOARD;
                break;

            case MsoPatternType.msoPatternSmallConfetti:
                patternColor.HatchStyle = HatchStyle.HS_SMALLCONFETTI;
                break;

            case MsoPatternType.msoPatternZigZag:
                patternColor.HatchStyle = HatchStyle.HS_ZIGZAG;
                break;

            case MsoPatternType.msoPatternSolidDiamond:
                patternColor.HatchStyle = HatchStyle.HS_SOLIDDIAMOND;
                break;

            case MsoPatternType.msoPatternDiagonalBrick:
                patternColor.HatchStyle = HatchStyle.HS_DIAGONALBRICK;
                break;

            case MsoPatternType.msoPatternOutlinedDiamond:
                patternColor.HatchStyle = HatchStyle.HS_OUTLINEDDIAMOND;
                break;

            case MsoPatternType.msoPatternPlaid:
                patternColor.HatchStyle = HatchStyle.HS_PLAID;
                break;

            case MsoPatternType.msoPatternSphere:
                patternColor.HatchStyle = HatchStyle.HS_SPHERE;
                break;

            case MsoPatternType.msoPatternWeave:
                patternColor.HatchStyle = HatchStyle.HS_WEAVE;
                break;

            case MsoPatternType.msoPatternDottedGrid:
                patternColor.HatchStyle = HatchStyle.HS_DOTTEDGRID;
                break;

            case MsoPatternType.msoPatternDivot:
                patternColor.HatchStyle = HatchStyle.HS_DIVOT;
                break;

            case MsoPatternType.msoPatternShingle:
                patternColor.HatchStyle = HatchStyle.HS_SHINGLE;
                break;

            case MsoPatternType.msoPatternWave:
                patternColor.HatchStyle = HatchStyle.HS_WAVE;
                break;

            case MsoPatternType.msoPatternHorizontal:
                patternColor.HatchStyle = HatchStyle.HS_HORIZONTAL;
                break;

            case MsoPatternType.msoPatternVertical:
                patternColor.HatchStyle = HatchStyle.HS_VERTICAL;
                break;

            case MsoPatternType.msoPatternCross:
                patternColor.HatchStyle = HatchStyle.HS_DIAGONALCROSS;
                break;

            case MsoPatternType.msoPatternDownwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDDOWNWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternUpwardDiagonal:
                patternColor.HatchStyle = HatchStyle.HS_DASHEDUPWARDDIAGONAL;
                break;

            case MsoPatternType.msoPatternDiagonalCross:
                patternColor.HatchStyle = HatchStyle.HS_DIAGONALCROSS;
                break;

            default:
                break;
            }

            return(patternColor);
        }
Example #21
0
        /**
         * Business logic that checks if a certain object is in conformance with PDF/X.
         * @param writer    the writer that is supposed to write the PDF/X file
         * @param key       the type of PDF/X conformance that has to be checked
         * @param obj1      the object that is checked for conformance
         */
        public static void CheckPDFXConformance(PdfWriter writer, int key, Object obj1)
        {
            if (writer == null || !writer.IsPdfX())
            {
                return;
            }
            int conf = writer.PDFXConformance;

            switch (key)
            {
            case PDFXKEY_COLOR:
                switch (conf)
                {
                case PdfWriter.PDFX1A2001:
                    if (obj1 is ExtendedColor)
                    {
                        ExtendedColor ec = (ExtendedColor)obj1;
                        switch (ec.Type)
                        {
                        case ExtendedColor.TYPE_CMYK:
                        case ExtendedColor.TYPE_GRAY:
                            return;

                        case ExtendedColor.TYPE_RGB:
                            throw new PdfXConformanceException("Colorspace RGB is not allowed.");

                        case ExtendedColor.TYPE_SEPARATION:
                            SpotColor sc = (SpotColor)ec;
                            CheckPDFXConformance(writer, PDFXKEY_COLOR, sc.PdfSpotColor.AlternativeCS);
                            break;

                        case ExtendedColor.TYPE_SHADING:
                            ShadingColor xc = (ShadingColor)ec;
                            CheckPDFXConformance(writer, PDFXKEY_COLOR, xc.PdfShadingPattern.Shading.ColorSpace);
                            break;

                        case ExtendedColor.TYPE_PATTERN:
                            PatternColor pc = (PatternColor)ec;
                            CheckPDFXConformance(writer, PDFXKEY_COLOR, pc.Painter.DefaultColor);
                            break;
                        }
                    }
                    else if (obj1 is Color)
                    {
                        throw new PdfXConformanceException("Colorspace RGB is not allowed.");
                    }
                    break;
                }
                break;

            case PDFXKEY_CMYK:
                break;

            case PDFXKEY_RGB:
                if (conf == PdfWriter.PDFX1A2001)
                {
                    throw new PdfXConformanceException("Colorspace RGB is not allowed.");
                }
                break;

            case PDFXKEY_FONT:
                if (!((BaseFont)obj1).IsEmbedded())
                {
                    throw new PdfXConformanceException("All the fonts must be embedded. This one isn't: " + ((BaseFont)obj1).PostscriptFontName);
                }
                break;

            case PDFXKEY_IMAGE:
                PdfImage image = (PdfImage)obj1;
                if (image.Get(PdfName.SMASK) != null)
                {
                    throw new PdfXConformanceException("The /SMask key is not allowed in images.");
                }
                switch (conf)
                {
                case PdfWriter.PDFX1A2001:
                    PdfObject cs = image.Get(PdfName.COLORSPACE);
                    if (cs == null)
                    {
                        return;
                    }
                    if (cs.IsName())
                    {
                        if (PdfName.DEVICERGB.Equals(cs))
                        {
                            throw new PdfXConformanceException("Colorspace RGB is not allowed.");
                        }
                    }
                    else if (cs.IsArray())
                    {
                        if (PdfName.CALRGB.Equals(((PdfArray)cs)[0]))
                        {
                            throw new PdfXConformanceException("Colorspace CalRGB is not allowed.");
                        }
                    }
                    break;
                }
                break;

            case PDFXKEY_GSTATE:
                PdfDictionary gs  = (PdfDictionary)obj1;
                PdfObject     obj = gs.Get(PdfName.BM);
                if (obj != null && !PdfGState.BM_NORMAL.Equals(obj) && !PdfGState.BM_COMPATIBLE.Equals(obj))
                {
                    throw new PdfXConformanceException("Blend mode " + obj.ToString() + " not allowed.");
                }
                obj = gs.Get(PdfName.CA);
                double v = 0.0;
                if (obj != null && (v = ((PdfNumber)obj).DoubleValue) != 1.0)
                {
                    throw new PdfXConformanceException("Transparency is not allowed: /CA = " + v);
                }
                obj = gs.Get(PdfName.ca_);
                v   = 0.0;
                if (obj != null && (v = ((PdfNumber)obj).DoubleValue) != 1.0)
                {
                    throw new PdfXConformanceException("Transparency is not allowed: /ca = " + v);
                }
                break;

            case PDFXKEY_LAYER:
                throw new PdfXConformanceException("Layers are not allowed.");
            }
        }
Example #22
0
 public void DamagePlayer(int value, PatternColor color)
 {
     player.Damage(value, color);
     uiController.UpdatePlayerHPBar(player.HealthPercentage);
 }
    public void SetNextColor(PatternColor color)
    {
        if (shapeIndex < shapes.Count && shapes[shapeIndex] != null)
        {
            shapes[shapeIndex].SetColor(color);
        }

        shapeIndex++;
    }
        /**
         * Business logic that checks if a certain object is in conformance with PDF/X.
         * @param writer    the writer that is supposed to write the PDF/X file
         * @param key       the type of PDF ISO conformance that has to be checked
         * @param obj1      the object that is checked for conformance
         */
        public static void CheckPDFXConformance(PdfWriter writer, int key, Object obj1)
        {
            if (writer == null || !writer.IsPdfX())
            {
                return;
            }
            int conf = writer.PDFXConformance;

            switch (key)
            {
            case PdfIsoKeys.PDFISOKEY_COLOR:
                switch (conf)
                {
                case PdfWriter.PDFX1A2001:
                    if (obj1 is ExtendedColor)
                    {
                        ExtendedColor ec = (ExtendedColor)obj1;
                        switch (ec.Type)
                        {
                        case ExtendedColor.TYPE_CMYK:
                        case ExtendedColor.TYPE_GRAY:
                            return;

                        case ExtendedColor.TYPE_RGB:
                            throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("colorspace.rgb.is.not.allowed"));

                        case ExtendedColor.TYPE_SEPARATION:
                            SpotColor sc = (SpotColor)ec;
                            CheckPDFXConformance(writer, PdfIsoKeys.PDFISOKEY_COLOR, sc.PdfSpotColor.AlternativeCS);
                            break;

                        case ExtendedColor.TYPE_SHADING:
                            ShadingColor xc = (ShadingColor)ec;
                            CheckPDFXConformance(writer, PdfIsoKeys.PDFISOKEY_COLOR, xc.PdfShadingPattern.Shading.ColorSpace);
                            break;

                        case ExtendedColor.TYPE_PATTERN:
                            PatternColor pc = (PatternColor)ec;
                            CheckPDFXConformance(writer, PdfIsoKeys.PDFISOKEY_COLOR, pc.Painter.DefaultColor);
                            break;
                        }
                    }
                    else if (obj1 is BaseColor)
                    {
                        throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("colorspace.rgb.is.not.allowed"));
                    }
                    break;
                }
                break;

            case PdfIsoKeys.PDFISOKEY_CMYK:
                break;

            case PdfIsoKeys.PDFISOKEY_RGB:
                if (conf == PdfWriter.PDFX1A2001)
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("colorspace.rgb.is.not.allowed"));
                }
                break;

            case PdfIsoKeys.PDFISOKEY_FONT:
                if (!((BaseFont)obj1).IsEmbedded())
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("all.the.fonts.must.be.embedded.this.one.isn.t.1", ((BaseFont)obj1).PostscriptFontName));
                }
                break;

            case PdfIsoKeys.PDFISOKEY_IMAGE:
                PdfImage image = (PdfImage)obj1;
                if (image.Get(PdfName.SMASK) != null)
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("the.smask.key.is.not.allowed.in.images"));
                }
                switch (conf)
                {
                case PdfWriter.PDFX1A2001:
                    PdfObject cs = image.Get(PdfName.COLORSPACE);
                    if (cs == null)
                    {
                        return;
                    }
                    if (cs.IsName())
                    {
                        if (PdfName.DEVICERGB.Equals(cs))
                        {
                            throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("colorspace.rgb.is.not.allowed"));
                        }
                    }
                    else if (cs.IsArray())
                    {
                        if (PdfName.CALRGB.Equals(((PdfArray)cs)[0]))
                        {
                            throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("colorspace.calrgb.is.not.allowed"));
                        }
                    }
                    break;
                }
                break;

            case PdfIsoKeys.PDFISOKEY_GSTATE:
                PdfDictionary gs  = (PdfDictionary)obj1;
                PdfObject     obj = gs.Get(PdfName.BM);
                if (obj != null && !PdfGState.BM_NORMAL.Equals(obj) && !PdfGState.BM_COMPATIBLE.Equals(obj))
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("blend.mode.1.not.allowed", obj.ToString()));
                }
                obj = gs.Get(PdfName.CA);
                double v = 0.0;
                if (obj != null && (v = ((PdfNumber)obj).DoubleValue) != 1.0)
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("transparency.is.not.allowed.ca.eq.1", v));
                }
                obj = gs.Get(PdfName.ca_);
                v   = 0.0;
                if (obj != null && (v = ((PdfNumber)obj).DoubleValue) != 1.0)
                {
                    throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("transparency.is.not.allowed.ca.eq.1", v));
                }
                break;

            case PdfIsoKeys.PDFISOKEY_LAYER:
                throw new PdfXConformanceException(MessageLocalization.GetComposedMessage("layers.are.not.allowed"));
            }
        }
 void ChangeColor(Renderer[] renderers, PatternColor color)
 {
     Material newMat = MaterialMap.instance.GetMaterial(color);
     for (int i = 0; i < renderers.Length; i++)
     {
         Material[] matList = renderers[i].sharedMaterials;
         matList[1] = newMat;
         if (matList.Length == 4)
         {
             matList[3] = newMat;
         }
         renderers[i].sharedMaterials = matList;
     }
 }