Example #1
0
        private static string CreateLogo(string stampText, int angle)
        {
            RotateFlipType rotateFlipType;
            string         str;
            string         str1 = "";

            try
            {
                int num = angle;
                if (num == 90)
                {
                    rotateFlipType = RotateFlipType.Rotate270FlipNone;
                }
                else if (num == 180)
                {
                    rotateFlipType = RotateFlipType.Rotate180FlipNone;
                }
                else
                {
                    rotateFlipType = (num == 270 ? RotateFlipType.Rotate90FlipNone : RotateFlipType.RotateNoneFlipNone);
                }
                using (Bitmap bitmap = new Bitmap(1, 1))
                {
                    int num1 = 0;
                    int num2 = 0;
                    System.Drawing.Font font = new System.Drawing.Font("Times New Roman", 10f);
                    using (Graphics graphic = Graphics.FromImage(bitmap))
                    {
                        SizeF sizeF = graphic.MeasureString(stampText, font);
                        num1  = Math.Max((int)sizeF.Width, 250);
                        sizeF = graphic.MeasureString(stampText, font);
                        num2  = Math.Max((int)sizeF.Height, 30);
                        using (Bitmap bitmap1 = new Bitmap(bitmap, new Size(num1, num2)))
                        {
                            using (Graphics graphic1 = Graphics.FromImage(bitmap1))
                            {
                                graphic1.Clear(Color.Transparent);
                                graphic1.InterpolationMode = InterpolationMode.HighQualityBilinear;
                                graphic1.SmoothingMode     = SmoothingMode.AntiAlias;
                                graphic1.TextRenderingHint = TextRenderingHint.SingleBitPerPixelGridFit;
                                graphic1.DrawString(stampText, font, new SolidBrush(Color.Black), 0f, 0f);
                                graphic1.Flush();
                            }
                            if (rotateFlipType != RotateFlipType.RotateNoneFlipNone)
                            {
                                bitmap1.RotateFlip(rotateFlipType);
                            }
                            str1 = Path.Combine(Path.GetTempPath(), "aquaforest\\pdftoolkit\\stamp.png");
                            PDFHelper.CheckOutputFolder(Path.GetDirectoryName(str1));
                            bitmap1.Save(str1, ImageFormat.Png);
                        }
                    }
                }
                str = str1;
            }
            catch (Exception exception1)
            {
                Exception exception = exception1;
                Console.WriteLine(string.Concat(exception.Message, Environment.NewLine, exception.StackTrace));
                str = str1;
            }
            return(str);
        }