private void EditSlide(Presentation presentation, int slideIndex, WorkSheetData worksheetData, bool includeStudentData = false)
        {
            var slide = presentation.Slides[slideIndex];

            var boxPositions = this.GetBoxPositions(slide);
            var positions    = boxPositions.ToArray();

            var groupNameShape = this.GetSlideNameShape(slide);

            if (groupNameShape != null)
            {
                groupNameShape.TextFrame.Paragraphs[0].Text = worksheetData.GroupName;
            }

            var studentArray = worksheetData.Students.ToArray();

            for (var i = 0; i < positions.Length; i++)
            {
                var textBoxShape = positions[i];

                //-- Remove shape if run out of students
                if (i >= studentArray.Length)
                {
                    slide.Shapes.Remove(textBoxShape.AutoShape);
                    continue;
                }

                var student = studentArray[i];

                var paragraphs = textBoxShape.AutoShape.TextFrame.Paragraphs[0];
                paragraphs.Text = GetName(student, studentArray);
                ////set the Font fill style of text
                TextRange textRange = textBoxShape.AutoShape.TextFrame.TextRange;
                textRange.Format.FontHeight       = 14;
                textRange.Fill.FillType           = Spire.Presentation.Drawing.FillFormatType.Solid;
                textRange.Fill.SolidColor.Color   = Color.Black;
                textRange.LatinFont               = new TextFont("Arial");
                textRange.Paragraph.Alignment     = TextAlignmentType.Left;
                textRange.Paragraph.FontAlignment = FontAlignmentType.Top;

                if (!includeStudentData)
                {
                    continue;
                }

                var sen = !String.IsNullOrEmpty(student.Sen) ? student.Sen + " " : null;
                var pp  = !String.IsNullOrEmpty(student.PupilPremium) && student.PupilPremium == "Y" ? "PP " : null;

                var studentDetails = String.Format("{0}T: {1} {2}{0}{3}{4}", Environment.NewLine, student.TargetGrade, student.CurrentGrade, pp, sen);
                var detailsRange   = new TextRange(studentDetails);
                detailsRange.Format.FontHeight     = 10;
                detailsRange.Fill.FillType         = Spire.Presentation.Drawing.FillFormatType.Solid;
                detailsRange.Fill.SolidColor.Color = Color.Black;
                detailsRange.LatinFont             = new TextFont("Arial");
                textRange.Paragraph.TextRanges.Append(detailsRange);
            }
        }
Beispiel #2
0
 /// <summary>
 /// Get the Excel Data
 /// </summary>
 /// <param name="ws">Worksheet</param>
 /// <remarks></remarks>
 private void GetValues(Worksheet ws)
 {
     try
     {
         // Worksheet Data
         Range m_rangeAll = GetFullDataRange(ws);
         WorkSheetData.Add(ws.Name, m_rangeAll.Value);
         WorkSheetTables.Add(ws.Name, GetTable(ws.Name, m_rangeAll));
     }
     catch (Exception ex)
     { }
 }
Beispiel #3
0
    void ConvertEquipmentData(WorkSheetData data)
    {
        var len = data.Rows;

        // 指派 equipments 元素寬度,排除掉工作頁的第一行
        var property = serializedObject.FindProperty("equipments");

        property.ClearArray();
        property.arraySize = len - 1;

        // 在此迴圈內賦值
        for (int i = 1; i < len; i++)
        {
            property.GetArrayElementAtIndex(i - 1).FindPropertyRelative("m_index").intValue   = int.Parse(data.Data[i, 0]);
            property.GetArrayElementAtIndex(i - 1).FindPropertyRelative("m_name").stringValue = data.Data[i, 1];
            property.GetArrayElementAtIndex(i - 1).FindPropertyRelative("m_defense").intValue = int.Parse(data.Data[i, 2]);
        }
    }
 /// <summary>
 /// コンストラクタ
 /// </summary>
 public WorkSheetAnswer(WorkSheetData workSheetData)
 {
     answers = new string[workSheetData.questionList.Count];
 }