Aspose.Cells FOSS के साथ Python में सेल्स को स्टाइल कैसे करें
Aspose.Cells FOSS for Python आपको व्यक्तिगत कोशिकाओं पर फ़ॉन्ट शैलियों और पृष्ठभूमि भराव को लागू करने की अनुमति देता है, उपयोग करके cell.style.font और cell.style.fill APIs. रंगों को व्यक्त किया जाता है 8-digit AARRGGBB hex strings; उदाहरण के लिए "FFFF0000" अपारदर्शी लाल के लिए, बिना # प्रिफिक्स। सभी शैलीकरण शुद्ध Python में किया जाता है, Microsoft Excel या किसी बाहरी रेंडरिंग लाइब्रेरी पर कोई निर्भरता नहीं है।.
क्यों Aspose.Cells FOSS के साथ सेल्स को स्टाइल करना चाहिए?
- Excel की आवश्यकता नहीं: फ़ॉर्मेटिंग पूरी तरह से Python में किसी भी OS पर चलती है।.
- सुसंगत रंग मॉडल: एकल 8-अंकीय AARRGGBB स्ट्रिंग फ़ॉन्ट रंग और भराव रंग को समान प्रारूप में कवर करती है।.
- पढ़ने योग्य प्रॉपर्टी नाम:
bold,italic,underline,strikethrough: नहींis_याद रखने के लिए उपसर्ग।. - पुन: उपयोग योग्य फ़ॉन्ट ऑब्जेक्ट्स: एक बनाएं
Fontइंस्टेंस को एक बार बनाएं और इसे कई सेल्स पर लागू करें ताकि सुसंगत ब्रांडिंग हो।.
स्टेप बाय स्टेप गाइड
चरण 1: Aspose.Cells FOSS for Python स्थापित करें
pip install aspose-cells-fossकोई अतिरिक्त सिस्टम पैकेज आवश्यक नहीं हैं। आपको आवश्यक क्लासों को यहाँ से इम्पोर्ट करें aspose.cells_foss:
from aspose.cells_foss import Workbook, Cell, Font, SaveFormatचरण 2: फ़ॉन्ट नाम और आकार सेट करें
के माध्यम से एक सेल तक पहुँचें ws.cells["address"] और लिखें cell.style.font.name और cell.style.font.size.
from aspose.cells_foss import Workbook
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Styled Header"
cell = ws.cells["A1"]
cell.style.font.name = "Arial"
cell.style.font.size = 14
workbook.save("styled.xlsx")डिफ़ॉल्ट फ़ॉन्ट है Calibri 11pt पर. फ़ाइल को खोलने वाले सिस्टम पर उपलब्ध कोई भी फ़ॉन्ट नाम उपयोग किया जा सकता है; ऐसा फ़ॉन्ट निर्दिष्ट करना जो स्थापित नहीं है, त्रुटि नहीं देता लेकिन फ़ाइल खोलते समय फ़ॉलबैक फ़ॉन्ट के साथ रेंडर हो सकता है।.
चरण 3: AARRGGBB हेक्स स्ट्रिंग का उपयोग करके फ़ॉन्ट रंग सेट करें
फ़ॉन्ट रंग एक के साथ सेट किए जाते हैं। 8-digit hexadecimal string में AARRGGBB क्रम (Alpha, Red, Green, Blue). करें नहीं एक शामिल करें # उपसर्ग।.
from aspose.cells_foss import Workbook
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Red text"
ws.cells["A1"].style.font.color = "FFFF0000" # opaque red
ws.cells["A2"].value = "Blue text"
ws.cells["A2"].style.font.color = "FF0000FF" # opaque blue
ws.cells["A3"].value = "Green text"
ws.cells["A3"].style.font.color = "FF00FF00" # opaque green
workbook.save("colored_text.xlsx")सामान्य AARRGGBB रंग संदर्भ:
| रंग | AARRGGBB स्ट्रिंग | नोट्स |
|---|---|---|
| काला | FF000000 | डिफ़ॉल्ट फ़ॉन्ट रंग |
| सफ़ेद | FFFFFFFF | गहरे पृष्ठभूमि पर उपयोग करें |
| लाल | FFFF0000 | अलर्ट या हाइलाइट किया गया पाठ |
| नीला | FF0000FF | लिंक या ज़ोर |
| हरा | FF00FF00 | सकारात्मक मान या सफलता |
| नारंगी | FFFF8000 | चेतावनी पाठ |
| धूसर | FF808080 | मंद या निष्क्रिय पाठ |
| गहरा नीला | FF1E64C8 | कॉरपोरेट / ब्रांड नीला |
पहले दो हेक्स अंक अल्फा चैनल होते हैं। उपयोग करें FF पूर्णतः अपारदर्शी के लिए। नीचे के मान FF ऐसे रेंडरर्स में अर्द्ध-पारदर्शी परिणाम उत्पन्न करते हैं जो अल्फा ब्लेंडिंग का समर्थन करते हैं।.
चरण 4: बोल्ड, इटैलिक, अंडरलाइन, और स्ट्राइकथ्रू लागू करें
प्रत्येक एट्रिब्यूट को सीधे बूलियन के रूप में सेट करें। प्रॉपर्टी नाम हैं bold, italic, underline, और strikethrough; करें नहीं उपयोग करें is_bold या is_italic (वे नाम FOSS API पर मौजूद नहीं हैं और उत्पन्न करेंगे AttributeError).
from aspose.cells_foss import Workbook
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Bold"
ws.cells["A1"].style.font.bold = True
ws.cells["A2"].value = "Italic"
ws.cells["A2"].style.font.italic = True
ws.cells["A3"].value = "Underline"
ws.cells["A3"].style.font.underline = True
ws.cells["A4"].value = "Strikethrough"
ws.cells["A4"].style.font.strikethrough = True
ws.cells["A5"].value = "Bold + Italic"
ws.cells["A5"].style.font.bold = True
ws.cells["A5"].style.font.italic = True
workbook.save("font_styles.xlsx")सभी चार फ़्लैग डिफ़ॉल्ट रूप से होते हैं False. इन्हें एक ही सेल में स्वतंत्र रूप से संयोजित किया जा सकता है।.
चरण 5: ठोस बैकग्राउंड फ़िल रंग सेट करें
उपयोग करें cell.style.fill.set_solid_fill("AARRGGBB") पृष्ठभूमि भराव लागू करने के लिए। रंग प्रारूप वही 8-अंकीय AARRGGBB हेक्स स्ट्रिंग है जैसा कि फ़ॉन्ट रंग में होता है।.
भराव को पूरी तरह हटाने के लिए, कॉल करें cell.style.fill.set_no_fill().
from aspose.cells_foss import Workbook
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["A1"].value = "Navy background"
ws.cells["A1"].style.fill.set_solid_fill("FF1E64C8") # opaque navy blue
ws.cells["A2"].value = "Light yellow background"
ws.cells["A2"].style.fill.set_solid_fill("FFFFFFCC") # pale yellow
ws.cells["A3"].value = "No fill"
ws.cells["A3"].style.fill.set_no_fill() # remove any fill
workbook.save("cell_fills.xlsx")set_solid_fill() और set_no_fill() परस्पर अनन्य हैं; एक को कॉल करने से वही सेल पर दूसरा ओवरराइड हो जाता है।.
चरण 6: एक सेल पर कई शैलियों को मिलाएँ
आप एक ही सेल रेफ़रेंस पर किसी भी संख्या में स्टाइल प्रॉपर्टी को चेन कर सकते हैं। सहेजने से पहले सेट की गई स्टाइल एट्रिब्यूट्स की संख्या पर कोई सीमा नहीं है।.
from aspose.cells_foss import Workbook
workbook = Workbook()
ws = workbook.worksheets[0]
ws.cells["B2"].value = "Branded Header"
cell = ws.cells["B2"]
##Font
cell.style.font.name = "Arial"
cell.style.font.size = 16
cell.style.font.bold = True
cell.style.font.color = "FFFFFFFF" # white text
##Background
cell.style.fill.set_solid_fill("FF1E64C8") # navy fill
workbook.save("branded_header.xlsx")
print("Branded header cell saved.")यह नेवी बैकग्राउंड पर सफ़ेद, बोल्ड, 16pt Arial लेबल बनाता है, जो कॉलम हेडर के लिए एक सामान्य पैटर्न है।.
चरण 7: पुन: उपयोग योग्य शैलियों के लिए फ़ॉन्ट कंस्ट्रक्टर का उपयोग करें
यह Font क्लास को एक ही कॉल में सभी प्रॉपर्टीज़ के साथ इंस्टैंशिएट किया जा सकता है, फिर कई सेल्स को असाइन किया जा सकता है। यह तब उपयोगी होता है जब आप कई सेल्स में एक समान हाउस स्टाइल लागू करना चाहते हैं बिना समान प्रॉपर्टी असाइनमेंट को दोहराए।.
from aspose.cells_foss import Workbook, Font
workbook = Workbook()
ws = workbook.worksheets[0]
##Define a reusable heading font
heading_font = Font(
name="Arial",
size=14,
color="FF1E64C8", # navy
bold=True,
italic=False,
underline=False,
strikethrough=False
)
##Define a reusable body font
body_font = Font(
name="Calibri",
size=11,
color="FF000000", # black (default)
bold=False,
italic=False,
underline=False,
strikethrough=False
)
##Apply heading font to header row
headers = ["Product", "SKU", "Price", "Stock"]
for col, header in enumerate(headers):
addr = f"{chr(65 + col)}1"
ws.cells[addr].value = header
ws.cells[addr].style.font = heading_font
ws.cells[addr].style.fill.set_solid_fill("FFE8EFF9") # light blue tint
##Apply body font to data rows
data = [
("Widget A", "WGT-001", 9.99, 150),
("Widget B", "WGT-002", 14.99, 87),
("Widget C", "WGT-003", 4.49, 320),
]
for row_idx, (name, sku, price, stock) in enumerate(data, start=2):
ws.cells[f"A{row_idx}"].value = name
ws.cells[f"B{row_idx}"].value = sku
ws.cells[f"C{row_idx}"].value = price
ws.cells[f"D{row_idx}"].value = stock
for col in "ABCD":
ws.cells[f"{col}{row_idx}"].style.font = body_font
workbook.save("product_table.xlsx")
print("Product table with reusable fonts saved.")फ़ॉन्ट कंस्ट्रक्टर डिफ़ॉल्ट मान (सभी पैरामीटर वैकल्पिक हैं):
| पैरामीटर | डिफ़ॉल्ट |
|---|---|
name | "Calibri" |
size | 11 |
color | "FF000000" |
bold | False |
italic | False |
underline | False |
strikethrough | False |
पूर्ण कार्यशील उदाहरण
निम्नलिखित स्व-निहित स्क्रिप्ट एक वर्कबुक बनाती है जिसमें स्टाइल्ड हेडर रो, रंगीन डेटा रो, और एक सारांश सेल शामिल है, जो ऊपर कवर किए गए सभी स्टाइलिंग API को प्रदर्शित करता है:
from aspose.cells_foss import Workbook, Cell, Font, SaveFormat
workbook = Workbook()
ws = workbook.worksheets[0]
ws.name = "Sales Report"
##--- Header row (bold, white text on navy background) ---
headers = ["Region", "Q1", "Q2", "Q3", "Q4", "Total"]
for col, text in enumerate(headers):
addr = f"{chr(65 + col)}1"
ws.cells[addr].value = text
ws.cells[addr].style.font.name = "Arial"
ws.cells[addr].style.font.size = 12
ws.cells[addr].style.font.bold = True
ws.cells[addr].style.font.color = "FFFFFFFF" # white
ws.cells[addr].style.fill.set_solid_fill("FF1E64C8") # navy
##--- Data rows ---
data = [
("North", 42000, 47500, 53000, 61000),
("South", 31000, 28500, 35000, 39000),
("East", 55000, 62000, 58000, 71000),
("West", 27000, 30000, 33000, 41000),
]
for row_idx, (region, q1, q2, q3, q4) in enumerate(data, start=2):
ws.cells[f"A{row_idx}"].value = region
ws.cells[f"B{row_idx}"].value = q1
ws.cells[f"C{row_idx}"].value = q2
ws.cells[f"D{row_idx}"].value = q3
ws.cells[f"E{row_idx}"].value = q4
# Total formula
ws.cells[f"F{row_idx}"] = Cell(None, f"=SUM(B{row_idx}:E{row_idx})")
# Alternate row shading
if row_idx % 2 == 0:
for col in "ABCDEF":
ws.cells[f"{col}{row_idx}"].style.fill.set_solid_fill("FFE8EFF9")
##--- Italic note in a footer cell ---
ws.cells["A7"].value = "All values in USD"
ws.cells["A7"].style.font.italic = True
ws.cells["A7"].style.font.color = "FF808080" # gray
ws.cells["A7"].style.font.size = 9
##--- Strikethrough on a deprecated label ---
ws.cells["A8"].value = "Old metric (deprecated)"
ws.cells["A8"].style.font.strikethrough = True
ws.cells["A8"].style.font.color = "FF808080"
workbook.save("sales_report_styled.xlsx", SaveFormat.XLSX)
print("Styled sales report saved.")सामान्य समस्याएँ
गलत रंग फ़ॉर्मेट: उपयोग कर रहे हैं #RRGGBB के बजाय AARRGGBB
एक अग्रणी # (उदा. "#FF0000") या 6-अंकीय RGB स्ट्रिंग अपेक्षित रंग नहीं देगी। प्रॉपर्टी ठीक‑ठीक अपेक्षा करती है 8 hex digits with no prefix: "FFFF0000". पहले दो अंक अल्फा चैनल होते हैं; उपयोग करें FF पूर्णतः अपारदर्शी के लिए।.
AttributeError: 'Font' object has no attribute 'is_bold'
FOSS API का उपयोग करता है bold, italic, underline, और strikethrough को प्रॉपर्टी नामों के रूप में। यह is_bold / is_italic नामकरण सम्मेलन एक अलग लाइब्रेरी से संबंधित है और यहाँ मौजूद नहीं है। किसी भी is_bold संदर्भ को bold.
Style changes not visible after saving
सुनिश्चित करें कि आप सेल ऑब्जेक्ट पर स्टाइल प्रॉपर्टी सेट करें पहले कॉल करना workbook.save(). सहेजने के कॉल के बाद किसी सेल पर प्रॉपर्टी सेट करने से पहले लिखी गई फ़ाइल पर कोई प्रभाव नहीं पड़ता। यदि आप एक cell चर, पुष्टि करें कि यह अभी भी सही सेल पते को संदर्भित करता है।.
Fill and font on the same cell conflict visually
कोई API टकराव नहीं है; आप हमेशा दोनों सेट कर सकते हैं cell.style.font.color और cell.style.fill.set_solid_fill() स्वतंत्र रूप से। सुनिश्चित करें कि टेक्स्ट रंग पृष्ठभूमि रंग के खिलाफ पर्याप्त कंट्रास्ट रखता है। सफ़ेद टेक्स्ट (FFFFFFFF) एक गहरे भराव जैसे नेवी (FF1E64C8) एक विश्वसनीय संयोजन है।.
अक्सर पूछे जाने वाले प्रश्न
How do I remove a background fill and return a cell to no fill?
कॉल cell.style.fill.set_no_fill(). यह सेल से पहले सेट किए गए किसी भी ठोस भराव को हटा देता है।.
How do I reset a cell to the default font (Calibri 11pt black)?
Re-assign the default values explicitly:
cell.style.font.name = "Calibri"
cell.style.font.size = 11
cell.style.font.color = "FF000000"
cell.style.font.bold = False
cell.style.font.italic = False
cell.style.font.underline = False
cell.style.font.strikethrough = Falseवैकल्पिक रूप से, एक Font() कोई तर्क (सभी डिफ़ॉल्ट) के बिना instance बनाएं और इसे असाइन करें: cell.style.font = Font().
Can I apply the same font style to a range of cells in a loop?
हाँ। सेल पतों पर इटररेट करें और प्रत्येक पर समान प्रॉपर्टीज़ सेट करें। यदि आप उपयोग करते हैं Font कंस्ट्रक्टर का उपयोग करके एक साझा Font ऑब्जेक्ट, इसे प्रत्येक सेल को असाइन करें ws.cells[addr].style.font = my_font.
Does styling affect cell values or formulas?
नहीं। स्टाइलिंग केवल दृश्य मेटाडेटा है।. cell.style.font और cell.style.fill छूने की ज़रूरत नहीं .value या .formula.
कौन से सहेजने के फ़ॉर्मेट स्टाइल को बनाए रखते हैं?
स्टाइल्स को सहेजते समय पूरी तरह संरक्षित किया जाता है SaveFormat.XLSX. यह SaveFormat.CSV, SaveFormat.TSV, SaveFormat.JSON, और SaveFormat.MARKDOWN formats plain-text या structured-text formats हैं और styling information नहीं ले जाते।.
संबंधित संसाधन:
- Aspose.Cells FOSS for Python: Developer Guide
- स्प्रेडशीट संचालन
- Python में स्प्रेडशीट कैसे लोड करें
- Python में चार्ट कैसे बनाएं
- API रेफ़रेंस: Font, Fill, Style
- उत्पाद अवलोकन: विशेषताएँ और क्षमताओं का सारांश
- ब्लॉग: Aspose.Cells FOSS का परिचय: लाइब्रेरी अवलोकन और त्वरित प्रारंभ