Ejemplo n.º 1
0
        public void ProcShapes(WORD.Shape shape)
        {
            shape.TextFrame.TextRange.LanguageID = LocalLang.wdID;

            var sourceFont = !string.IsNullOrEmpty(shape.TextEffect.Text)
                ? shape.TextEffect.FontName
                : shape.TextFrame2.TextRange.Font.Name;
            var targetFont = LocalLang.GetLocFont(sourceFont);

            //_SetFontProperty(targetFont, shape.TextEffect.FontName, shape.TextFrame.TextRange.Font.Name,
            //    shape.TextFrame.TextRange.Font.NameAscii, shape.TextFrame.TextRange.Font.NameOther);
            shape.TextEffect.FontName = targetFont;
            shape.TextFrame.TextRange.Font.NameAscii = targetFont;
            shape.TextFrame.TextRange.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                shape.TextFrame.TextRange.LanguageIDFarEast = LocalLang.wdID;
                shape.TextFrame.TextRange.Font.NameFarEast  = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                shape.TextFrame.TextRange.LanguageIDOther = LocalLang.wdID;
                shape.TextFrame.TextRange.Font.NameBi     = targetFont;
            }
        }
        public string ProcCurrency(string numberFormat, string msg)
        {
            try
            {
                var  digitNum = GetDigitNum(numberFormat);
                bool isAccount;

                numberFormat = numberFormat.Contains("*")
                    ? LocalLang.GetLocAccounting(numberFormat)
                    : LocalLang.GetLocCurrency(numberFormat);

                if (numberFormat.Contains("*"))
                {
                    numberFormat = LocalLang.GetLocAccounting(numberFormat);
                    isAccount    = true;
                }
                else
                {
                    numberFormat = LocalLang.GetLocCurrency(numberFormat);
                    isAccount    = false;
                }

                numberFormat = ProcDigitNum(numberFormat, msg, digitNum, isAccount);
            }
            catch (Exception)
            {
                Common.WriteLine("[Failed] Number Format: " + msg);
            }

            return(numberFormat);
        }
        public void ProcStyles(EXCEL.Style style)
        {
            try
            {
                style.Font.Name = LocalLang.GetLocFont(style.Font.Name);
            }
            catch (Exception)
            {
                Common.WriteLine("[Failed] Style Font: " + style.Name + " " + style.Font.Name);
            }


            if (style.NumberFormat.Contains("$") && style.NumberFormat.Contains("#"))
            {
                var numberFormat = style.NumberFormat;
                var styleName    = style.Name;
                try
                {
                    style.NumberFormat = ProcCurrency(numberFormat, styleName);
                }
                catch (Exception)
                {
                    Common.WriteLine("[Failed] Style Currency: " + style.Name + " " + style.NumberFormat);
                }
            }
        }
Ejemplo n.º 4
0
        public void ProcContentControls(WORD.ContentControl contentControl)
        {
            contentControl.Range.LanguageID = LocalLang.wdID;

            var targetFont = LocalLang.GetLocFont(contentControl.Range.Font.Name);

            //_SetFontProperty(targetFont, contentControl.Range.Font.Name, contentControl.Range.Font.NameAscii,
            //contentControl.Range.Font.NameOther);

            contentControl.Range.Font.Name      = targetFont;
            contentControl.Range.Font.NameAscii = targetFont;
            contentControl.Range.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                contentControl.Range.LanguageIDFarEast = LocalLang.wdID;
                contentControl.Range.Font.NameFarEast  = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                contentControl.Range.LanguageIDOther = LocalLang.wdID;
                contentControl.Range.Font.NameBi     = targetFont;
            }
        }
        public void ProcChart(POWERPOINT.Shape shape)
        {
            if (shape.Chart.HasTitle)
            {
                string sourceFont = shape.Chart.ChartTitle.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartTitle.Font.Name = targetFont;
            }

            if (shape.Chart.HasLegend)
            {
                string sourceFont = shape.Chart.ChartArea.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartArea.Font.Name = targetFont;
            }

            if (shape.Chart.HasLegend)
            {
                string sourceFont = shape.Chart.ChartArea.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartArea.Font.Name = targetFont;
            }

            if (shape.Chart.HasDataTable)
            {
                string sourceFont = shape.Chart.DataTable.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.DataTable.Font.Name = targetFont;
            }
        }
        public void ProcTable(POWERPOINT.Shape shape)
        {
            for (var i = 1; i <= shape.Table.Rows.Count; i++)
            {
                for (var j = 1; j <= shape.Table.Columns.Count; j++)
                {
                    if (shape.HasTextFrame == MsoTriState.msoTrue)
                    {
                        shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.LanguageID = LocalLang.pptID;

                        var sourceFont = shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.Name;
                        var targetFont = LocalLang.GetLocFont(sourceFont);

                        //_SetFontProperty(targetFont, shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.Name,
                        //    shape.Table.Rows[i].Cells[j].Shape.TextFrame2.TextRange.Font.NameAscii);
                        shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.Name            = targetFont;
                        shape.Table.Rows[i].Cells[j].Shape.TextFrame2.TextRange.Font.NameAscii = targetFont;

                        if (LocalLang.IsFarEast)
                        {
                            shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.NameFarEast = targetFont;
                        }
                        if (LocalLang.IsRightToLeft)
                        {
                            shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.NameComplexScript = targetFont;
                            shape.Table.Cell(i, j).Shape.TextFrame2.TextRange.Font.NameOther         = targetFont;
                        }
                    }
                }
            }
        }
        public void ProcText(POWERPOINT.Shape shape)
        {
            shape.TextFrame2.TextRange.LanguageID = LocalLang.pptID;

            var sourceFont = !string.IsNullOrEmpty(shape.TextEffect.FontName)
                ? shape.TextEffect.FontName
                : shape.TextFrame2.TextRange.Font.Name;
            var targetFont = LocalLang.GetLocFont(sourceFont);

            //_SetFontProperty(targetFont, shape.TextEffect.FontName, shape.TextFrame2.TextRange.Font.Name,
            //    shape.TextFrame2.TextRange.Font.NameAscii);
            shape.TextEffect.FontName                 = targetFont;
            shape.TextFrame2.TextRange.Font.Name      = targetFont;
            shape.TextFrame2.TextRange.Font.NameAscii = targetFont;

            if (LocalLang.IsFarEast)
            {
                shape.TextFrame2.TextRange.Font.NameFarEast = targetFont;
            }
            if (LocalLang.IsRightToLeft)
            {
                shape.TextFrame2.TextRange.Font.NameComplexScript = targetFont;
                shape.TextFrame2.TextRange.Font.NameOther         = targetFont;
            }
        }
        public void ProcSmartArt(POWERPOINT.Shape shape)
        {
            for (var i = 1; i <= shape.SmartArt.Nodes.Count; i++)
            {
                if (shape.GroupItems[i].HasTextFrame == MsoTriState.msoTrue)
                {
                    shape.GroupItems[i].TextFrame2.TextRange.LanguageID = LocalLang.pptID;

                    var sourceFont = shape.GroupItems[i].TextFrame2.TextRange.Font.Name;
                    var targetFont = LocalLang.GetLocFont(sourceFont);

                    //_SetFontProperty(targetFont, shape.GroupItems[i].TextFrame2.TextRange.Font.Name,
                    //    shape.GroupItems[i].TextFrame2.TextRange.Font.NameAscii);
                    shape.GroupItems[i].TextFrame2.TextRange.Font.Name      = targetFont;
                    shape.GroupItems[i].TextFrame2.TextRange.Font.NameAscii = targetFont;

                    if (LocalLang.IsFarEast)
                    {
                        shape.GroupItems[i].TextFrame2.TextRange.Font.NameFarEast = targetFont;
                    }

                    if (LocalLang.IsRightToLeft)
                    {
                        //_SetFontProperty(targetFont, shape.GroupItems[i].TextFrame2.TextRange.Font.NameComplexScript,
                        //    shape.GroupItems[i].TextFrame2.TextRange.Font.NameOther);
                        shape.GroupItems[i].TextFrame2.TextRange.Font.NameComplexScript = targetFont;
                        shape.GroupItems[i].TextFrame2.TextRange.Font.NameOther         = targetFont;
                    }
                }
            }
        }
Ejemplo n.º 9
0
        public void ProcChart(POWERPOINT.Shape shape)
        {
            if (shape.Chart.HasTitle)
            {
                string sourceFont = shape.Chart.ChartTitle.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartTitle.Font.Name = targetFont;

                for (int i = 1; i <= shape.Chart.ChartTitle.Characters.Count; i++)
                {
                    if (shape.Chart.ChartTitle.Characters[i].Font.Italic == MsoTriState.msoTrue)
                    {
                        shape.TextFrame2.TextRange.Characters[i].Font.Italic = MsoTriState.msoFalse;
                        shape.TextFrame2.TextRange.Characters[i].Font.Bold   = MsoTriState.msoTrue;
                    }
                }
            }

            if (shape.Chart.HasLegend)
            {
                string sourceFont = shape.Chart.ChartArea.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartArea.Font.Name = targetFont;
            }

            if (shape.Chart.HasLegend)
            {
                string sourceFont = shape.Chart.ChartArea.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.ChartArea.Font.Name = targetFont;
            }

            if (shape.Chart.HasDataTable)
            {
                string sourceFont = shape.Chart.DataTable.Font.Name;
                var    targetFont = LocalLang.GetLocFont(sourceFont);

                shape.Chart.DataTable.Font.Name = targetFont;
            }
        }
Ejemplo n.º 10
0
        public void ProcStyles(WORD.Style style)
        {
            var targetFont = LocalLang.GetLocFont(style.Font.Name);

            //_SetFontProperty(targetFont, style.Font.Name, style.Font.NameAscii, style.Font.NameOther);

            style.Font.Name      = targetFont;
            style.Font.NameAscii = targetFont;
            style.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                style.Font.NameFarEast = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                style.Font.NameBi = targetFont;
            }
        }
Ejemplo n.º 11
0
        public void ProcHeadersFooters(WORD.HeaderFooter header, WORD.HeaderFooter footer)
        {
            header.Range.LanguageID = LocalLang.wdID;
            footer.Range.LanguageID = LocalLang.wdID;

            var targetFontHeader = LocalLang.GetLocFont(header.Range.Font.Name);

            //_SetFontProperty(targetFontHeader, header.Range.Font.Name, header.Range.Font.NameAscii,
            //    header.Range.Font.NameOther);
            header.Range.Font.Name      = targetFontHeader;
            header.Range.Font.NameAscii = targetFontHeader;
            header.Range.Font.NameOther = targetFontHeader;

            var targetFontFooter = LocalLang.GetLocFont(footer.Range.Font.Name);

            //_SetFontProperty(targetFontFooter, footer.Range.Font.Name, footer.Range.Font.NameAscii,
            //    footer.Range.Font.NameOther);
            footer.Range.Font.Name      = targetFontFooter;
            footer.Range.Font.NameAscii = targetFontFooter;
            footer.Range.Font.NameOther = targetFontFooter;

            if (LocalLang.IsFarEast)
            {
                header.Range.LanguageIDFarEast = LocalLang.wdID;
                header.Range.Font.NameFarEast  = targetFontHeader;

                footer.Range.LanguageIDFarEast = LocalLang.wdID;
                footer.Range.Font.NameFarEast  = targetFontFooter;
            }

            if (LocalLang.IsRightToLeft)
            {
                header.Range.LanguageIDOther = LocalLang.wdID;
                header.Range.Font.NameBi     = targetFontHeader;

                footer.Range.LanguageIDOther = LocalLang.wdID;
                footer.Range.Font.NameBi     = targetFontFooter;
            }
        }
        public void ProcChart(EXCEL.Shape shape)
        {
            try
            {
                string chartTitle = shape.Chart.ChartTitle.Font.Name;
                shape.Chart.ChartTitle.Font.Name = LocalLang.GetLocFont(chartTitle);
            }
            catch (Exception)
            {
                Common.WriteLine("[Failed to update Chart Title]" + shape.Chart.Name);
            }

            try
            {
                if (shape.Chart.HasLegend)
                {
                    string chartLegend = shape.Chart.Legend.Font.Name;
                    shape.Chart.Legend.Font.Name = LocalLang.GetLocFont(chartLegend);
                }
            }
            catch (Exception)
            {
                Common.WriteLine("[Failed to update Chart Legend]" + shape.Chart.Name);
            }

            try
            {
                if (shape.Chart.HasDataTable)
                {
                    string chartDataTable = shape.Chart.DataTable.Font.Name;
                    shape.Chart.Legend.Font.Name = LocalLang.GetLocFont(chartDataTable);
                }
            }
            catch (Exception)
            {
                Common.WriteLine("[Failed to update Chart Datatable]" + shape.Chart.Name);
            }
        }
Ejemplo n.º 13
0
        public void ProcWholeDoc()
        {
            doc.Content.LanguageID = LocalLang.wdID;

            var targetFont = LocalLang.GetLocFont(doc.Content.Font.Name);

            //_SetFontProperty(targetFont, doc.Content.Font.Name, doc.Content.Font.NameAscii,
            //    doc.Content.Font.NameOther);
            doc.Content.Font.Name      = targetFont;
            doc.Content.Font.NameAscii = targetFont;
            doc.Content.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                doc.Content.LanguageIDFarEast = LocalLang.wdID;
                doc.Content.Font.NameFarEast  = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                doc.Content.LanguageIDOther = LocalLang.wdID;
                doc.Content.Font.NameBi     = targetFont;
            }
        }
Ejemplo n.º 14
0
        public void ProcTableContent(WORD.Paragraph paragraph)
        {
            paragraph.Range.LanguageID = LocalLang.wdID;

            var targetFont = LocalLang.GetLocFont(paragraph.Range.Font.Name);

            //_SetFontProperty(targetFont, paragraph.Range.Font.Name, paragraph.Range.Font.NameAscii,
            //    paragraph.Range.Font.NameOther);
            paragraph.Range.Font.Name      = targetFont;
            paragraph.Range.Font.NameAscii = targetFont;
            paragraph.Range.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                paragraph.Range.LanguageIDFarEast = LocalLang.wdID;
                paragraph.Range.Font.NameFarEast  = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                paragraph.Range.LanguageIDOther = LocalLang.wdID;
                paragraph.Range.Font.NameBi     = targetFont;
            }
        }
Ejemplo n.º 15
0
        public void ProcTables(WORD.Cell cell)
        {
            cell.Range.LanguageID = LocalLang.wdID;

            var targetFont = LocalLang.GetLocFont(cell.Range.Font.Name);

            //_SetFontProperty(targetFont, cell.Range.Font.Name, cell.Range.Font.NameAscii,
            //    cell.Range.Font.NameOther);
            cell.Range.Font.Name      = targetFont;
            cell.Range.Font.NameAscii = targetFont;
            cell.Range.Font.NameOther = targetFont;

            if (LocalLang.IsFarEast)
            {
                cell.Range.LanguageIDFarEast = LocalLang.wdID;
                cell.Range.Font.NameFarEast  = targetFont;
            }

            if (LocalLang.IsRightToLeft)
            {
                cell.Range.LanguageIDOther = LocalLang.wdID;
                cell.Range.Font.NameBi     = targetFont;
            }
        }
        private void _ChangeFont(string sourceFont, EXCEL.Shape shape)
        {
            var targetFont = LocalLang.GetLocFont(sourceFont);

            if (shape.TextEffect.FontName != null)
            {
                shape.TextEffect.FontName = targetFont;
            }

            if (shape.TextFrame2.TextRange.Font.Name != null)
            {
                shape.TextFrame2.TextRange.Font.Name = targetFont;
            }

            if (LocalLang.IsFarEast)
            {
                shape.TextFrame2.TextRange.Font.NameFarEast = targetFont;
            }

            if (LocalLang.IsRightToLeft) //TODO: check Thailand
            {
                shape.TextFrame2.TextRange.Font.NameComplexScript = targetFont;
            }
        }
 static public string GetLocalText(LocalLang lang, LocalItem item)
 {
     return(lang == LocalLang.RU ? russianLocalText[(int)item] : englishLocalText[(int)item]);
 }
 public string ProcDateTime(string numberFormat)
 {
     return(LocalLang.GetLocDate(numberFormat));
 }