Exemple #1
0
        public void ReadFontFamilyFromTheme(LatinFont latinFonts)
        {
            FontScheme allSchemeFonts =
                slide.SlideLayoutPart.SlideMasterPart.ThemePart.Theme
                .ThemeElements.FontScheme;

            var minorFont = allSchemeFonts.GetFirstChild <MinorFont>();
            var majorFont = allSchemeFonts.GetFirstChild <MajorFont>();

            if (latinFonts != null)
            {
                FontFamily = latinFonts.Typeface.Value;

                if (latinFonts.Typeface.Value.Equals("+mj-lt"))
                {
                    FontFamily = majorFont.LatinFont.Typeface.Value;
                }
                else if (latinFonts.Typeface.Value.Equals("+mj-cs"))
                {
                    FontFamily = majorFont.ComplexScriptFont.Typeface.Value;
                }
                else if (latinFonts.Typeface.Value.Equals("+mj-ea"))
                {
                    FontFamily = majorFont.EastAsianFont.Typeface.Value;
                }
                else if (latinFonts.Typeface.Value.Equals("+mn-lt"))
                {
                    FontFamily = minorFont.LatinFont.Typeface.Value;
                }
                else if (latinFonts.Typeface.Value.Equals("+mn-cs"))
                {
                    FontFamily = minorFont.ComplexScriptFont.Typeface.Value;
                }
                else if (latinFonts.Typeface.Value.Equals("+mn-ea"))
                {
                    FontFamily = minorFont.EastAsianFont.Typeface.Value;
                }
            }
        }
Exemple #2
0
        public Paragraph CreateStyledParagraph(string text, int fontsize, bool bold, bool italic, Color color)
        {
            var run = new Drawing.Run(); var run2 = new Drawing.Run(); var textBody = new Drawing.Text(); var textBody2 = new Drawing.Text();
            var newParagraph = new Paragraph();

            string[] newStringa = text.Split(new string[] { "<", ">" }, StringSplitOptions.RemoveEmptyEntries);
            for (int i = 0; i < newStringa.Count(); i++)
            {
                if (newStringa[i].Contains('('))
                {
                    var runProperties2 = new RunProperties(); //set basic styles for paragraph
                    Run ru11           = new Run();
                    runProperties2.Bold     = bold;
                    runProperties2.Italic   = italic;
                    runProperties2.FontSize = fontsize;
                    runProperties2.Dirty    = false;
                    string rem      = newStringa[i].Substring(1);
                    Color  col      = ColorTranslator.FromHtml("#007AC9");
                    var    hexColor = col.R.ToString("X2") + col.G.ToString("X2") + col.B.ToString("X2");//convert color to hex
                    //convert color to hex
                    var solidFill        = new SolidFill();
                    var rgbColorModelHex = new RgbColorModelHex()
                    {
                        Val = hexColor
                    };
                    var rgbColorModelHex1 = new LatinFont()
                    {
                        Typeface = "Arial Narrow"
                    };
                    solidFill.Append(rgbColorModelHex1);
                    solidFill.Append(rgbColorModelHex);
                    runProperties2.Append(solidFill);
                    textBody2      = new Drawing.Text();
                    textBody2.Text = rem;        //assign text
                    run2           = new Drawing.Run();
                    run2.Append(runProperties2); //append styles
                    run2.Append(textBody2);
                    newParagraph.Append(run2);
                }
                else
                {
                    var runProperties = new RunProperties(); //set basic styles for paragraph
                    runProperties.Bold     = false;
                    runProperties.Italic   = false;
                    runProperties.FontSize = fontsize;
                    runProperties.Dirty    = false;
                    var hexColor         = color.R.ToString("X2") + color.G.ToString("X2") + color.B.ToString("X2");//convert color to hex
                    var solidFill        = new SolidFill();
                    var rgbColorModelHex = new RgbColorModelHex()
                    {
                        Val = hexColor
                    };
                    solidFill.Append(rgbColorModelHex);
                    runProperties.Append(solidFill);
                    textBody      = new Drawing.Text();
                    textBody.Text = newStringa[i]; //assign text
                    run           = new Drawing.Run();
                    run.Append(runProperties);     //append styles
                    run.Append(textBody);
                    newParagraph.Append(run);
                }
            }


            return(newParagraph);
            //append text


            //append run to paragraph
        }
        // Creates an FontScheme instance and adds its children.
        private FontScheme GenerateFontScheme()
        {
            FontScheme fontScheme1 = new FontScheme()
            {
                Name = "Office"
            };

            MajorFont majorFont1 = new MajorFont();
            LatinFont latinFont1 = new LatinFont()
            {
                Typeface = "Cambria"
            };
            EastAsianFont eastAsianFont1 = new EastAsianFont()
            {
                Typeface = ""
            };
            ComplexScriptFont complexScriptFont1 = new ComplexScriptFont()
            {
                Typeface = "Courrier"
            };
            SupplementalFont supplementalFont1 = new SupplementalFont()
            {
                Script = "Jpan", Typeface = "MS ゴシック"
            };
            SupplementalFont supplementalFont2 = new SupplementalFont()
            {
                Script = "Hang", Typeface = "맑은 고딕"
            };
            SupplementalFont supplementalFont3 = new SupplementalFont()
            {
                Script = "Hans", Typeface = "宋体"
            };
            SupplementalFont supplementalFont4 = new SupplementalFont()
            {
                Script = "Hant", Typeface = "新細明體"
            };
            SupplementalFont supplementalFont5 = new SupplementalFont()
            {
                Script = "Arab", Typeface = "Times New Roman"
            };
            SupplementalFont supplementalFont6 = new SupplementalFont()
            {
                Script = "Hebr", Typeface = "Times New Roman"
            };
            SupplementalFont supplementalFont7 = new SupplementalFont()
            {
                Script = "Thai", Typeface = "Angsana New"
            };
            SupplementalFont supplementalFont8 = new SupplementalFont()
            {
                Script = "Ethi", Typeface = "Nyala"
            };
            SupplementalFont supplementalFont9 = new SupplementalFont()
            {
                Script = "Beng", Typeface = "Vrinda"
            };
            SupplementalFont supplementalFont10 = new SupplementalFont()
            {
                Script = "Gujr", Typeface = "Shruti"
            };
            SupplementalFont supplementalFont11 = new SupplementalFont()
            {
                Script = "Khmr", Typeface = "MoolBoran"
            };
            SupplementalFont supplementalFont12 = new SupplementalFont()
            {
                Script = "Knda", Typeface = "Tunga"
            };
            SupplementalFont supplementalFont13 = new SupplementalFont()
            {
                Script = "Guru", Typeface = "Raavi"
            };
            SupplementalFont supplementalFont14 = new SupplementalFont()
            {
                Script = "Cans", Typeface = "Euphemia"
            };
            SupplementalFont supplementalFont15 = new SupplementalFont()
            {
                Script = "Cher", Typeface = "Plantagenet Cherokee"
            };
            SupplementalFont supplementalFont16 = new SupplementalFont()
            {
                Script = "Yiii", Typeface = "Microsoft Yi Baiti"
            };
            SupplementalFont supplementalFont17 = new SupplementalFont()
            {
                Script = "Tibt", Typeface = "Microsoft Himalaya"
            };
            SupplementalFont supplementalFont18 = new SupplementalFont()
            {
                Script = "Thaa", Typeface = "MV Boli"
            };
            SupplementalFont supplementalFont19 = new SupplementalFont()
            {
                Script = "Deva", Typeface = "Mangal"
            };
            SupplementalFont supplementalFont20 = new SupplementalFont()
            {
                Script = "Telu", Typeface = "Gautami"
            };
            SupplementalFont supplementalFont21 = new SupplementalFont()
            {
                Script = "Taml", Typeface = "Latha"
            };
            SupplementalFont supplementalFont22 = new SupplementalFont()
            {
                Script = "Syrc", Typeface = "Estrangelo Edessa"
            };
            SupplementalFont supplementalFont23 = new SupplementalFont()
            {
                Script = "Orya", Typeface = "Kalinga"
            };
            SupplementalFont supplementalFont24 = new SupplementalFont()
            {
                Script = "Mlym", Typeface = "Kartika"
            };
            SupplementalFont supplementalFont25 = new SupplementalFont()
            {
                Script = "Laoo", Typeface = "DokChampa"
            };
            SupplementalFont supplementalFont26 = new SupplementalFont()
            {
                Script = "Sinh", Typeface = "Iskoola Pota"
            };
            SupplementalFont supplementalFont27 = new SupplementalFont()
            {
                Script = "Mong", Typeface = "Mongolian Baiti"
            };
            SupplementalFont supplementalFont28 = new SupplementalFont()
            {
                Script = "Viet", Typeface = "Times New Roman"
            };
            SupplementalFont supplementalFont29 = new SupplementalFont()
            {
                Script = "Uigh", Typeface = "Microsoft Uighur"
            };
            SupplementalFont supplementalFont30 = new SupplementalFont()
            {
                Script = "Geor", Typeface = "Sylfaen"
            };

            majorFont1.Append(latinFont1);
            majorFont1.Append(eastAsianFont1);
            majorFont1.Append(complexScriptFont1);
            majorFont1.Append(supplementalFont1);
            majorFont1.Append(supplementalFont2);
            majorFont1.Append(supplementalFont3);
            majorFont1.Append(supplementalFont4);
            majorFont1.Append(supplementalFont5);
            majorFont1.Append(supplementalFont6);
            majorFont1.Append(supplementalFont7);
            majorFont1.Append(supplementalFont8);
            majorFont1.Append(supplementalFont9);
            majorFont1.Append(supplementalFont10);
            majorFont1.Append(supplementalFont11);
            majorFont1.Append(supplementalFont12);
            majorFont1.Append(supplementalFont13);
            majorFont1.Append(supplementalFont14);
            majorFont1.Append(supplementalFont15);
            majorFont1.Append(supplementalFont16);
            majorFont1.Append(supplementalFont17);
            majorFont1.Append(supplementalFont18);
            majorFont1.Append(supplementalFont19);
            majorFont1.Append(supplementalFont20);
            majorFont1.Append(supplementalFont21);
            majorFont1.Append(supplementalFont22);
            majorFont1.Append(supplementalFont23);
            majorFont1.Append(supplementalFont24);
            majorFont1.Append(supplementalFont25);
            majorFont1.Append(supplementalFont26);
            majorFont1.Append(supplementalFont27);
            majorFont1.Append(supplementalFont28);
            majorFont1.Append(supplementalFont29);
            majorFont1.Append(supplementalFont30);

            MinorFont minorFont1 = new MinorFont();
            LatinFont latinFont2 = new LatinFont()
            {
                Typeface = "Calibri"
            };
            EastAsianFont eastAsianFont2 = new EastAsianFont()
            {
                Typeface = ""
            };
            ComplexScriptFont complexScriptFont2 = new ComplexScriptFont()
            {
                Typeface = "Courrier New"
            };
            SupplementalFont supplementalFont31 = new SupplementalFont()
            {
                Script = "Jpan", Typeface = "MS 明朝"
            };
            SupplementalFont supplementalFont32 = new SupplementalFont()
            {
                Script = "Hang", Typeface = "맑은 고딕"
            };
            SupplementalFont supplementalFont33 = new SupplementalFont()
            {
                Script = "Hans", Typeface = "宋体"
            };
            SupplementalFont supplementalFont34 = new SupplementalFont()
            {
                Script = "Hant", Typeface = "新細明體"
            };
            SupplementalFont supplementalFont35 = new SupplementalFont()
            {
                Script = "Arab", Typeface = "Arial"
            };
            SupplementalFont supplementalFont36 = new SupplementalFont()
            {
                Script = "Hebr", Typeface = "Arial"
            };
            SupplementalFont supplementalFont37 = new SupplementalFont()
            {
                Script = "Thai", Typeface = "Cordia New"
            };
            SupplementalFont supplementalFont38 = new SupplementalFont()
            {
                Script = "Ethi", Typeface = "Nyala"
            };
            SupplementalFont supplementalFont39 = new SupplementalFont()
            {
                Script = "Beng", Typeface = "Vrinda"
            };
            SupplementalFont supplementalFont40 = new SupplementalFont()
            {
                Script = "Gujr", Typeface = "Shruti"
            };
            SupplementalFont supplementalFont41 = new SupplementalFont()
            {
                Script = "Khmr", Typeface = "DaunPenh"
            };
            SupplementalFont supplementalFont42 = new SupplementalFont()
            {
                Script = "Knda", Typeface = "Tunga"
            };
            SupplementalFont supplementalFont43 = new SupplementalFont()
            {
                Script = "Guru", Typeface = "Raavi"
            };
            SupplementalFont supplementalFont44 = new SupplementalFont()
            {
                Script = "Cans", Typeface = "Euphemia"
            };
            SupplementalFont supplementalFont45 = new SupplementalFont()
            {
                Script = "Cher", Typeface = "Plantagenet Cherokee"
            };
            SupplementalFont supplementalFont46 = new SupplementalFont()
            {
                Script = "Yiii", Typeface = "Microsoft Yi Baiti"
            };
            SupplementalFont supplementalFont47 = new SupplementalFont()
            {
                Script = "Tibt", Typeface = "Microsoft Himalaya"
            };
            SupplementalFont supplementalFont48 = new SupplementalFont()
            {
                Script = "Thaa", Typeface = "MV Boli"
            };
            SupplementalFont supplementalFont49 = new SupplementalFont()
            {
                Script = "Deva", Typeface = "Mangal"
            };
            SupplementalFont supplementalFont50 = new SupplementalFont()
            {
                Script = "Telu", Typeface = "Gautami"
            };
            SupplementalFont supplementalFont51 = new SupplementalFont()
            {
                Script = "Taml", Typeface = "Latha"
            };
            SupplementalFont supplementalFont52 = new SupplementalFont()
            {
                Script = "Syrc", Typeface = "Estrangelo Edessa"
            };
            SupplementalFont supplementalFont53 = new SupplementalFont()
            {
                Script = "Orya", Typeface = "Kalinga"
            };
            SupplementalFont supplementalFont54 = new SupplementalFont()
            {
                Script = "Mlym", Typeface = "Kartika"
            };
            SupplementalFont supplementalFont55 = new SupplementalFont()
            {
                Script = "Laoo", Typeface = "DokChampa"
            };
            SupplementalFont supplementalFont56 = new SupplementalFont()
            {
                Script = "Sinh", Typeface = "Iskoola Pota"
            };
            SupplementalFont supplementalFont57 = new SupplementalFont()
            {
                Script = "Mong", Typeface = "Mongolian Baiti"
            };
            SupplementalFont supplementalFont58 = new SupplementalFont()
            {
                Script = "Viet", Typeface = "Arial"
            };
            SupplementalFont supplementalFont59 = new SupplementalFont()
            {
                Script = "Uigh", Typeface = "Microsoft Uighur"
            };
            SupplementalFont supplementalFont60 = new SupplementalFont()
            {
                Script = "Geor", Typeface = "Sylfaen"
            };

            minorFont1.Append(latinFont2);
            minorFont1.Append(eastAsianFont2);
            minorFont1.Append(complexScriptFont2);
            minorFont1.Append(supplementalFont31);
            minorFont1.Append(supplementalFont32);
            minorFont1.Append(supplementalFont33);
            minorFont1.Append(supplementalFont34);
            minorFont1.Append(supplementalFont35);
            minorFont1.Append(supplementalFont36);
            minorFont1.Append(supplementalFont37);
            minorFont1.Append(supplementalFont38);
            minorFont1.Append(supplementalFont39);
            minorFont1.Append(supplementalFont40);
            minorFont1.Append(supplementalFont41);
            minorFont1.Append(supplementalFont42);
            minorFont1.Append(supplementalFont43);
            minorFont1.Append(supplementalFont44);
            minorFont1.Append(supplementalFont45);
            minorFont1.Append(supplementalFont46);
            minorFont1.Append(supplementalFont47);
            minorFont1.Append(supplementalFont48);
            minorFont1.Append(supplementalFont49);
            minorFont1.Append(supplementalFont50);
            minorFont1.Append(supplementalFont51);
            minorFont1.Append(supplementalFont52);
            minorFont1.Append(supplementalFont53);
            minorFont1.Append(supplementalFont54);
            minorFont1.Append(supplementalFont55);
            minorFont1.Append(supplementalFont56);
            minorFont1.Append(supplementalFont57);
            minorFont1.Append(supplementalFont58);
            minorFont1.Append(supplementalFont59);
            minorFont1.Append(supplementalFont60);

            fontScheme1.Append(majorFont1);
            fontScheme1.Append(minorFont1);
            return(fontScheme1);
        }