تغيير توجيه الخلايا والاحتفاظ بالتنسيقات الحالية
سيناريوهات الاستخدام المحتملة
أحيانًا، قد ترغب في تغيير محاذاة العديد من الخلايا ولكنك أيضًا ترغب في الحفاظ على التنسيق الحالي. تتيح لك Aspose.Cells القيام بذلك باستخدام خاصية StyleFlag.Alignments. إذا قمت بتعيينها بقيمة صحيحة، ستحدث التغييرات في المحاذاة وإلا لن تحدث. يرجى ملاحظة أنه يتم تمرير الكائن StyleFlag كمعلمة إلى الطريقة Range.applyStyle() التي تطبق التنسيق على نطاق الخلايا.
تغيير توجيه الخلايا والاحتفاظ بالتنسيقات الحالية
الشفرة المصدرية العينية التالية تحمل ملف الإكسل المثالي، تنشئ النطاق وتوسطه أفقيًا ورأسيًا وتحتفظ بالتنسيقات الحالية دون تغيير. يقارن اللقطة الشاشة التالية ملف الإكسل المثالي و ملف الإكسل الناتج ويظهر أن جميع التنسيقات الحالية للخلايا متطابقة باستثناء أن الخلايا موجهة الآن توسيطيًا أفقيًا ورأسيًا.
الكود المثالي
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load sample Excel file containing cells with formatting. | |
Workbook wb = new Workbook(srcDir + "sampleChangeCellsAlignmentAndKeepExistingFormatting.xlsx"); | |
// Access first worksheet. | |
Worksheet ws = wb.getWorksheets().get(0); | |
// Create cells range. | |
Range rng = ws.getCells().createRange("B2:D7"); | |
// Create style object. | |
Style st = wb.createStyle(); | |
// Set the horizontal and vertical alignment to center. | |
st.setHorizontalAlignment(TextAlignmentType.CENTER); | |
st.setVerticalAlignment(TextAlignmentType.CENTER); | |
// Create style flag object. | |
StyleFlag flag = new StyleFlag(); | |
// Set style flag alignments true. It is most crucial statement. | |
// Because if it will be false, no changes will take place. | |
flag.setAlignments(true); | |
// Apply style to range of cells. | |
rng.applyStyle(st, flag); | |
// Save the workbook in XLSX format. | |
wb.save(outDir + "outputChangeCellsAlignmentAndKeepExistingFormatting.xlsx", SaveFormat.XLSX); |