کتاب کار

Options کو جدولوں کو پڑھنے اور لکھنے کے لیے اختیارات وضاحت دیتا ہے۔

type Options struct {
    MaxCalcIterations uint
    Password          string
    RawCellValue      bool
    UnzipSizeLimit    int64
    UnzipXMLSizeLimit int64
    ShortDatePattern  string
    LongDatePattern   string
    LongTimePattern   string
    CultureInfo       CultureName
}

MaxCalcIterations کو فارمولا حساب کرتے وقت زیادہ سے زیادہ تعداد کا مخصوص کرنے میں استعمال ہوتا ہے، اس کی پہلے سے طے شدہ قیمت صفر ہوتی ہے۔

Password کو کتاب کار کو کھولنے اور محفوظ کرنے کے لیے پاس ورڈ کو مخصوص کرنے میں استعمال ہوتا ہے، اس کی پہلے سے طے شدہ قیمت خالی ہوتی ہے۔

RawCellValue کو سیل ٹھ کی قیمتیں پڑھتے وقت را نک قیمت، جس کی پہلے سے طے شدہ قیمت false ہوتی ہے (نمبر فارمیٹ کو لگانا)۔

UnzipSizeLimit کو وضاحت کرنے کے لیے استعمال کی جاتا ہے کہ کتاب کار دستاویز کھولتے وقت غیر فعال کریں (بائٹس میں) کی سائز کا حد مخصوص کرتا ہے، جو UnzipXMLSizeLimit سے زیادہ یا برابر ہونا چاہئے، اس کی پہلے سے طے شدہ حد 16 جی بی ہے۔

UnzipXMLSizeLimit کو وضاحت کرنے کے لیے استعمال کیا جاتا ہے جب ہر ورک شیٹ اور مشترک سٹرنگ ٹیبل کو غیر فعال کرتے وقت میموری حد (بائٹس میں) کو مخصوص کرتا ہے، اور جب اس قیمت سے زیادہ ہوتی ہے تو ورک شیٹ ایم ایل فائل کو سسٹم موقت ڈائرکٹری میں کھول دیتا ہے۔ اس قیمت کا حد 16 ایم بی ہے۔

ShortDatePattern کو مخصوص کرنے کے لیے استعمال کیا جاتا ہے کہ چھوٹی تاریخ عددی فارمیٹ کوڈ۔

LongDatePattern کو مخصوص کرنے کے لیے استعمال کیا جاتا ہے کہ لمبی تاریخ عددی فارمیٹ کوڈ۔

LongTimePattern کو مخصوص کرنے کے لیے استعمال کیا جاتا ہے کہ لمبی وقت عددی فارمیٹ کوڈ۔

CultureInfo کو مخصوص کرنے کے لیے استعمال کیا جاتا ہے کہ علاقائی فارمیٹ کو جو علاقائی تاریخ اور وقت کی ترتیبات سے متاثر ہوتے ہیں وہ استعمال ہوگا۔

تخلیق

func NewFile(opts ...Options) *File

NewFile کا استعمال نیا ایکسل کتاب کار بنانے کے لیے ہوتا ہے، جو ڈیفالٹ طور پر Sheet1 نام کی ایک ورک شیٹ شامل کرے گا۔

کھولیں

func OpenFile(filename string, opts ...Options) (*File, error)

OpenFile کا استعمال موجودہ ایکسل دستاویز کھولنے کے لیے ہوتا ہے۔ مثال کے طور پر، ایک کتاب کار دستاویز جس میں پاس ورڈ کی حفاظت ہو:

f, err := excelize.OpenFile("Book1.xlsx", excelize.Options{Password: "password"})
if err != nil {
    return
}

Close() کا استعمال کرکے کھولی ہوئی ورک بک بند کریں۔

ڈیٹا سٹریم کھولیں

func OpenReader(r io.Reader, opts ...Options) (*File, error)

OpenReader میں سے ڈیٹا پڑھاتا ہے io.Reader۔

نیچے دی گئی مثال میں، ہم ایک سادہ HTTP سرور بناتے ہیں تاکہ اپ لوڈ شدہ ایکسل کتاب کار کو کھولا جا سکے، اور اس میں نیا ورک شیٹ شامل کیا جا سکے، اور ایک ڈاؤن لوڈ واپسی بھیجا جا سکے:

package main

import (
    "fmt"
    "net/http"

    "github.com/xuri/excelize/v2"
)

func process(w http.ResponseWriter, req *http.Request) {
    file, _, err := req.FormFile("file")
    if err != nil {
        fmt.Fprint(w, err.Error())
        return
    }
    defer file.Close()
    f, err := excelize.OpenReader(file)
    if err != nil {
        fmt.Fprint(w, err.Error())
        return
    }
    f.Path = "Book1.xlsx"
    f.NewSheet("NewSheet")
    w.Header().Set("Content-Disposition", fmt.Sprintf("attachment; filename=%s", f.Path))
    w.Header().Set("Content-Type", req.Header.Get("Content-Type"))
    if err := f.Write(w); err != nil {
        fmt.Fprint(w, err.Error())
    }
}

func main() {
    http.HandleFunc("/process", process)
    http.ListenAndServe(":8090", nil)
}

cURL کا استعمال کرکے ٹیسٹ کریں:

curl --location --request GET 'http://127.0.0.1:8090/process' \
--form 'file=@/tmp/template.xltx' -O -J

محفوظ کریں

func (f *File) Save(opts ...Options) error

Save کا استعمال ایکسل دستاویز کو ترتیب دینے کے لیے ہوتا ہے۔

کے طور پر محفوظ کریں

func (f *File) SaveAs(name string, opts ...Options) error

SaveAs کا استعمال کرکے ایکسل دستاویز کو مخصوص فائل کے طور پر محفوظ کرنے کے لیے ہوتا ہے۔

کتاب کار بند کریں

func (f *File) Close() error

ورک بک بند کریں اور موجودہ دستاویز کھولتے وقت بنائی گئی کوئی بھی سسٹم ڈسک کیش کو صاف کریں۔

نیا ورکشیٹ

func (f *File) NewSheet(sheet string) (int, error)

موجودہ ورکشیٹ نام کی بنیاد پر ایک نیا ورکشیٹ بنائیں اور ورک بک میں ورکشیٹ کا انڈیکس واپس کریں۔ براہ کرم نوٹ کریں کہ نیا ورک بک بناتے وقت ایک پہلی ورکشیٹ نامک کی شامل ہوگی جس کا نام Sheet1 ہوگا۔

ورکشیٹ کو حذف کریں

func (f *File) DeleteSheet(sheet string) error

مخصوص ورکشیٹ کو دیے گئے ورکشیٹ نام کی بنیاد پر حذف کریں۔ اس میں براہ کرم احتیاط سے کام لیں، چونکہ یہ فارمولا، حوالے، چارٹس، اور دیگر عناصر جو منسلک حذف شدہ ورکشیٹ سے ہیں انہیں متاثر کرے گا۔ اگر دیگر عناصر حذف شدہ ورکشیٹ پر حوالے ہیں تو گلتی کی اطلاع دی جائے گی، اور یہ ورک بک کو کھولنے میں ناکام بھی کرسکتا ہے۔ اگر کسی ورک بک میں صرف ایک ورکشیٹ ہے تو یہ میتھود غیر موثر ہوگی۔

ورکشیٹ کا نقل کریں

func (f *File) CopySheet(from, to int) error

مخصوص شرحیہ کو دیے گئے سورس ورکشیٹ اور ہدف ورکشیٹ انڈیکس کی بنیاد پر نقل کریں۔ ڈویلپر کو یہ تصدیق کرنی چاہئے کہ ہدف ورکشیٹ کا انڈیکس پہلے سے موجود ہے یا نہیں۔ فی الحال، صرف ورکشیٹس جو خانے کی قیمتیں اور فارمولے شامل ہیں کو نقل کرنا مدد کیا جاتا ہے، جبکہ ورکشیٹس جو میز، تصاویر، چارٹس، اور پیوٹ ٹیبلز شامل ہیں کو نقل نہیں کیا جاتا ہے۔

// ورکشیٹ نام Sheet1 پہلے سے موجود ہے ...
انڈیکس، گلتی := f.NewSheet("Sheet2")
اگر گلتی != nil {
    fmt.Println(گلتی)
    واپس کریں
}
گلتی := f.CopySheet(1، انڈیکس)

ورکشیٹس کو گروپ کریں

func (f *File) GroupSheets(sheets []string) error

دیے گئے ورکشیٹ ناموں کی بنیاد پر ورکشیٹس کو گروپ کریں، اور دیے گئے ورکشیٹس میں پہلی ورکشیٹ شامل ہونا ضروری ہے۔

ورکشیٹس کو آن گروپ کریں

func (f *File) UngroupSheets() error

ورکشیٹس کو آن گروپ کریں۔

ورکشیٹ پس منظر تصویر مقرر کریں

func (f *File) SetSheetBackground(sheet, picture string) error

دیے گئے ورکشیٹ نام اور تصویر فائل کے راستے کی بنیاد پر مخصوص ورکشیٹ کے لئے ٹائل شدہ پس منظر تصویر کا ترتیب کریں۔ معتمد تصویر فائل فارمیٹس میں BMP، EMF، EMZ، GIF، JPEG، JPG، PNG، SVG، TIF، TIFF، WMF، اور WMZ شامل ہیں۔

func (f *File) SetSheetBackgroundFromBytes(sheet, extension string, picture []byte) error

دیے گئے ورکشیٹ نام، تصویر فارمیٹ کا ترتیب اور تصویر فارمیٹ ڈیٹا کی بنیاد پر مخصوص ورکشیٹ کے لئے ٹائل شدہ پس منظر تصویر کا ترتیب کریں۔ معتمد تصویر فائل فارمیٹس میں BMP، EMF، EMZ، GIF، JPEG، JPG، PNG، SVG، TIF، TIFF، WMF، اور WMZ شامل ہیں۔

افتتاحی ورکشیٹ مقرر کریں

func (f *File) SetActiveSheet(index int)

مخصوص انڈیکس قیمت کی بنیاد پر افتتاحی ورکشیٹ کا ترتیب کریں، جہاں قیمت 0 سے بڑی یا اس کے برابر ہونی چاہئے اور ورک بک میں ورکشیٹس کی کل تعداد سے کم ہونی چاہئے۔

افتتاحی ورکشیٹ کا انڈیکس حاصل کریں

func (f *File) GetActiveSheetIndex() int

افتتاحی ورکشیٹ کا انڈیکس حاصل کریں، اگر کوئی افتتاحی ورکشیٹ نہیں ملی تو 0 واپس کریں۔

ورکشیٹ کی نمائش کو ترتیب دیں

func (f *File) SetSheetVisible(sheet string, visible bool, veryHidden ...bool) error

دیے گئے ورکشیٹ نام اور نمائشی پیرامیٹر کی بنیاد پر ورکشیٹ کی نمائش کو ترتیب دیں۔ ایک ورک بک میں کم از کم ایک دکھائی دینے والی ورکشیٹ ہونی ضروری ہے۔ اگر دی گئی ورکشیٹ افتتاحی ورکشیٹ ہے تو نظرانداز کرنے کی ترتیب غیر موثر ہوگی۔ تیسرا اختیاری پیرامیٹر veryHidden صرف اس صورت میں موثر ہوگا جب visible پیرامیٹر کی قیمت false ہو۔

مثال کے طور پر، ورکشیٹ نام Sheet1 کو چھپانے کے لئے:

گلتی := f.SetSheetVisible("Sheet1", false)

ورکشیٹ کی نمائش کو حاصل کریں

func (f *File) GetSheetVisible(sheet string) (bool, error)

دیے گئے ورکشیٹ نام کی بنیاد پر ورکشیٹ کی دکھائی کی ترتیب کو حاصل کریں۔ مثال کے طور پر، ورکشیٹ نام Sheet1 کی دکھائی کی ترتیب حاصل کرنے کے لئے:

دکھائی، گلتی := f.GetSheetVisible("Sheet1")

شیٹ خصوصیات تعین کریں

func (f *File) SetSheetProps(sheet string, opts *SheetPropsOptions) error

مخصوص ورکشیٹ کے خصوصیات کو دی گئی ورکشیٹ کے نام اور مالکیت کے اختیارات کے مطابق مقرر کرتا ہے۔ معاوند ورکشیٹ خصوصیات کے ذیلی وضاحت درج ذیل ہیں:

مالکیت قسم تفصیل
کوڈ نام *string کوڈ کا نام
EnableFormatConditionsCalculation *bool وضع کریں کہ شرائطی فارمیٹنگ خود بخود حساب ہو گئی ہے، پہلے سے طے شدہ قیمت true ہے
Published *bool وضاحت کریں کہ ورکشیٹ شائع کی گئی ہے یا نہیں، پہلے سے طے شدہ قیمت true ہے
AutoPageBreaks *bool وضاحت کریں کہ ورکشیٹ خود بخود صفحات کو بریک کرے گی یا نہیں، پہلے سے طے شدہ قیمت true ہے
FitToPage *bool وضاحت کریں کہ فٹ تو پیج پرنٹ کرنا فعال کرنا ہے یا نہیں، پہلے سے طے شدہ قیمت false ہے
TabColorIndexed *int مخصوص رنگ کی قدرتی شناخت سے استعمال ہونے والا مقدار
TabColorRGB *string معیاری ARGB رنگ کی قیمت
TabColorTheme *int تھیم رنگ کی شناخت جو 0 سے شروع ہوتی ہے
TabColorTint *float64 رنگ پر عکس اثرات کی قیمت، پہلے سے طے شدہ قیمت 0.0 ہے
OutlineSummaryBelow *bool اختصار نوٹس کا رخ کی تفصیل دیتا ہے، کہ ڈیٹا کے نیچے ہے یا نہیں، پہلے سے طے شدہ قیمت true ہے
OutlineSummaryRight *bool اختصار نوٹس کا رخ کی تفصیل دیتا ہے، کہ ڈیٹا کے دائیں ہے یا نہیں، پہلے سے طے شدہ قیمت true ہے
BaseColWidth *uint8 بنیادی کالم کی چوڑائی اعداد کی تعداد میں ظاہر ہوتی ہے، پہلے سے طے شدہ قیمت 8 ہے
DefaultColWidth *float64 پہلے سے طے شدہ کالم کی چوڑائی مارجنز اور گرڈ لائنز شامل ہے
DefaultRowHeight *float64 انٹرائی کی بلندی نقاط میں ظاہر ہوتی ہے
CustomHeight *bool وضاحت کریں کہ کسٹم رو کی لمبائی لائگی جا رہی ہے یا نہیں، پہلے سے طے شدہ قیمت false ہے
ZeroHeight *bool وضاحت کریں کہ رویاں پہلے سے طے شدہ طریقہ سے چھپی ہوئی ہیں یا نہیں، پہلے سے طے شدہ قیمت false ہے
ThickTop *bool وضاحت کریں کہ رویاں پہلے سے طے شدہ طریقہ سے کمزور ہیں یا نہیں، پہلے سے طے شدہ قیمت false ہے
ThickBottom *bool وضاحت کریں کہ رویاں پہلے سے طے شدہ طریقہ سے مضبوط ہیں یا نہیں، پہلے سے طے شدہ قیمت false ہے

مثال کے طور پر، ورکشیٹ کے نام Sheet1 کی پہلی قطار کو چھپا کر بنان:

شیٹ خصوصیات مقرر کریں

f, enable := excelize.NewFile(), true
if err := f.SetSheetProps("Sheet1", &excelize.SheetPropsOptions{
    ZeroHeight: &enable,
}); err != nil {
    fmt.Println(err)
}
if err := f.SetRowVisible("Sheet1", 10, true); err != nil {
    fmt.Println(err)
}
f.SaveAs("Book1.xlsx")

شیٹ خصوصیات حاصل کریں

func (f *File) GetSheetProps(sheet string) (SheetPropsOptions, error)

مخصوص ورکشیٹ کے خصوصیات حاصل کریں۔

شیٹ ویو خصوصیات مقرر کریں

func (f *File) SetSheetView(sheet string, viewIndex int, opts *ViewOptions) error

دی گئی شیٹ نام، ویو انڈیکس، اور ویو آپشنز کے مطابق شیٹ ویو خصوصیات مقرر کریں۔ viewIndex ایک منفی نمبر ہو سکتا ہے، جس کی صورت میں گنتی الٹی ہوگی (-1 آخری ویو کو ظاہر کرتا ہے)۔ شیٹ ویو خصوصیات مقرر کرنے کے لئے سپورٹ کردہ آپشنز مندرجہ ذیل ہیں:

خصوصیت قسم تفصیل
ڈیفالٹ گرڈ رنگ *bool بیان کرتا ہے کہ کیا ڈیفالٹ گرڈ لائن کلر استعمال ہوگا، ڈیفالٹ قیمت true ہے
دائیں سے بائیں *bool بیان کرتا ہے کہ کیا دائیں سے مینڈھا دکھایا جائے، ڈیفالٹ قیمت false ہے
فارمولے دکھائیں *bool بیان کرتا ہے کہ کیا ورکشیٹ فارمولے دکھاتی ہے، ڈیفالٹ قیمت false ہے
گرڈ لائنز دکھائیں *bool بیان کرتا ہے کہ ورکشیٹ گرڈ لائنز دکھاتی ہے، ڈیفالٹ قیمت true ہے
رو-کالم ہیڈرز دکھائیں *bool بیان کرتا ہے کہ ورکشیٹ رو اور کالم ہیڈرز دکھاتی ہے، ڈیفالٹ قیمت true ہے
رولر دکھائیں *bool بیان کرتا ہے کہ پیج لے آؤٹ ویو میں رولر دکھائیں یا نہیں، ڈیفالٹ قیمت true ہے
صفر دکھائیں *bool بیان کرتا ہے کہ کیا سیلز میں صفر کی قیمتیں دکھائیں یا نہیں, ڈیفالٹ قیمت true ہے، ورنہ یہ خالی دکھائی جائیں گی
ٹاپ لیف سیل *string دکھائیں ہوئی بالائی بائیں سیل کے کورڈینیٹ کا تفصیل
ویو *string ورکشیٹ ویو کی قسم کو ظاہر کرتا ہے، جس میں enum قیمتیں normal، pageBreakPreview، اور pageLayout ہیں
زوم اسکیل *float64 فی الحال ویو ڈسپلے ونڈو زوم اسکیل فیصد، 10 سے 400 تک کی حدود میں محدود ہے، ڈیفالٹ قیمت 100 ہے

شیٹ ویو خصوصیات حاصل کریں

func (f *File) GetSheetView(sheet string, viewIndex int) (ViewOptions, error)

دی گئی شیٹ نام اور ویو انڈیکس کے مطابق شیٹ ویو خصوصیات حاصل کریں۔ viewIndex ایک منفی نمبر ہو سکتا ہے، جس کی صورت میں گنتی الٹی ہوگی (-1 آخری ویو کو ظاہر کرتا ہے)۔

ورکشیٹ صفحہ ترتیب دیں

func (f *File) SetPageLayout(sheet string, opts *PageLayoutOptions) error

دی گئی ورکشیٹ نام اور صفحہ ترتیب پیرامیٹر کے مبنی ورکشیٹ کی صفحہ ترتیب خصوصیات سیٹ کریں۔ حالیہ طور پر صفحہ ترتیب خصوصیات میں شامل کردہ ہیں:

Size خصوصیت استعمال ہوتی ہے تاکہ صفحہ کاغذ کا سائز مختص کیا جا سکے، ڈیفالٹ صفحہ ترتیب کا سائز "لیٹر 8½ × 11 انچ" ہوتا ہے۔ مندرجہ ذیل جدول میں صفحہ ترتیب کے اشکال اور انڈیکس Size پیرامیٹر کے درمیان تعلق دیکھایا گیا ہے:

انڈیکس کاغذ کا سائز
1 لیٹر 8½ × 11 انچ
2 سمال لیٹر 8½ × 11 انچ
3 ٹیبلوئڈ 11 × 17 انچ
4 لیجر 17 × 11 انچ
... ...
40 جرمن اسٹینڈرڈ فینفولڈ 8.5 × 12 انچ
41 جرمن قانونی کاغذ فینفولڈ 8.5 × 13 انچ
42 آئی ایس او B4 250 × 353 ملی میٹر
43 جاپانی پوسٹ کارڈ 100 × 148 ملی میٹر
44 معیاری کاغذ 9 × 11 انچ
45 معیاری کاغذ 10 × 11 انچ
46 معیاری کاغذ 15 × 11 انچ
47 دعوت نامہ 220 × 220 ملی میٹر
50 لیٹر ہیڈ بڑھا 9.275 × 12 انچ
51 اضافی بڑا قانونی کاغذ 9.275 × 15 انچ
52 ٹیبلوئڈ اضافی کاغذ 11.69 × 18 انچ
53 آئی ایس او B4 اضافی بڑا 236 × 322 ملی میٹر
54 لیٹر ہیڈ لینڈسکیپ 8.275 × 11 انچ
55 آئی ایس او A4 لینڈسکیپ 210 × 297 ملی میٹر
56 لیٹر ہیڈ اضافی بڑا لینڈسکیپ 9.275 × 12 انچ
57 سوپر اے/سوپر اے/آئی 4 کاغذ 227 × 356 ملی میٹر
58 سوپر بی/سوپر بی/آئی 3 کاغذ 305 × 487 ملی میٹر
59 لیٹر ہیڈ بڑھا 8.5 × 12.69 انچ
60 آئی ایس او A4 بڑھا 210 × 330 ملی میٹر
61 A5 لینڈسکیپ 148 × 210 ملی میٹر
62 JIS B5 لینڈسکیپ 182 × 257 ملی میٹر
63 آئی ایس او A3 اضافی بڑا 322 × 445 ملی میٹر
64 A5 اضافی بڑا 174 × 235 ملی میٹر
65 آئی ایس او B5 اضافی بڑا 201 × 276 ملی میٹر
66 A2 420 × 594 ملی میٹر
67 آئی ایس او A3 لینڈسکیپ 297 × 420 ملی میٹر
68 آئی ایس او A3 اضافی بڑا لینڈسکیپ 322 × 445 ملی میٹر
69 دو گنا جاپانی پوسٹ کارڈ 200 × 148 ملی میٹر
70 A6 105 × 148 ملی میٹر
71 جاپانی لفافہ کاکو نمبر 2
72 جاپانی لفافہ کاکو نمبر 3
73 جاپانی لفافہ چو نمبر 3
74 جاپانی لفافہ چو نمبر 4
75 لیٹر ہیڈ لینڈسکیپ 11 × 8½ انچ
76 آئی ایس او A3 لینڈسکیپ 420 × 297 ملی میٹر
77 آئی ایس او A4 لینڈسکیپ 297 × 210 ملی میٹر
78 A5 لینڈسکیپ 210 × 148 ملی میٹر
79 B4 (جاپانی) لینڈسکیپ 364 × 257 ملی میٹر
80 B5 (جاپانی) لینڈسکیپ 257 × 182 ملی میٹر
81 جاپانی پوسٹ کارڈ لینڈسکیپ 148 × 100 ملی میٹر
82 دو گنا جاپانی پوسٹ کارڈ لینڈسکیپ 148 × 200 ملی میٹر
83 A6 لینڈسکیپ 148 × 105 ملی میٹر
84 جاپانی لفافہ کاکو نمبر 2 لینڈسکیپ
85 جاپانی لفافہ کاکو نمبر 3 لینڈسکیپ
86 جاپانی لفافہ چو نمبر 3 لینڈسکیپ
| 87 | جاپانی لفاف چو #4 لینڈسکیپ |
| 88 | B6 (JIS) 128 × 182 ملی میٹر |
| 89 | B6 (JIS) لینڈسکیپ 182 × 128 ملی میٹر |
| 90 | 12 × 11 انچ |
| 91 | جاپانی لفاف یو #4 |
| 92 | جاپانی لفاف یو #4 لینڈسکیپ |
| 93 | چینی 16K 146 × 215 ملی میٹر |
| 94 | چینی 32K 97 × 151 ملی میٹر |
| 95 | چینی بڑا 32K 97 × 151 ملی میٹر |
| 96 | چینی لفاف #1 102 × 165 ملی میٹر |
| 97 | چینی لفاف #2 102 × 176 ملی میٹر |
| 98 | چینی لفاف #3 125 × 176 ملی میٹر |
| 99 | چینی لفاف #4 110 × 208 ملی میٹر |
| 100 | چینی لفاف #5 110 × 220 ملی میٹر |
| 101 | چینی لفاف #6 120 × 230 ملی میٹر |
| 102 | چینی لفاف #7 160 × 230 ملی میٹر |
| 103 | چینی لفاف #8 120 × 309 ملی میٹر |
| 104 | چینی لفاف #9 229 × 324 ملی میٹر |
| 105 | چینی لفاف #10 324 × 458 ملی میٹر |
| 106 | چینی 16K لینڈسکیپ |
| 107 | چینی 32K لینڈسکیپ |
| 108 | چینی بڑا 32K لینڈسکیپ |
| 109 | چینی لفاف #1 لینڈسکیپ 165 × 102 ملی میٹر |
| 110 | چینی لفاف #2 لینڈسکیپ 176 × 102 ملی میٹر |
| 111 | چینی لفاف #3 لینڈسکیپ 176 × 125 ملی میٹر |
| 112 | چینی لفاف #4 لینڈسکیپ 208 × 110 ملی میٹر |
| 113 | چینی لفاف #5 لینڈسکیپ 220 × 110 ملی میٹر |
| 114 | چینی لفاف #6 لینڈسکیپ 230 × 120 ملی میٹر |
| 115 | چینی لفاف #7 لینڈسکیپ 230 × 160 ملی میٹر |
| 116 | چینی لفاف #8 لینڈسکیپ 309 × 120 ملی میٹر |
| 117 | چینی لفاف #9 لینڈسکیپ 324 × 229 ملی میٹر |
| 118 | چینی لفاف #10 لینڈسکیپ 458 × 324 ملی میٹر |

`Orientation` خصوصیت کا استعمال صفحے کی لے آؤٹ کی سمت کو وضاحت کرنے کے لئے ہے۔ ڈیفالٹ صفحے لے آؤٹ کی سمت "پورٹریٹ" ہے، اور اختیاری قیمتیں `پورٹریٹ` اور `لینڈسکیپ` ہیں۔

`FirstPageNumber` خصوصیت کا استعمال شروع کرنے والے صفحے نمبر کو وضاحت کرنے کے لئے ہے، ڈیفالٹ خود بخود ہوتا ہے۔

 `AdjustTo` خصوصیت صفحے کی پیمائش کا تناسب وضاحت کرنے کے لئے ہے، جس کی رینج 10 سے 400 تک ہے، یعنی 10٪ سے 400٪ تک، اور عام سائز کے لئے ڈیفالٹ قیمت `100` ہے۔ `FitToHeight` یا `FitToWidth` اس خصوصیت کو ناظر انداز کریں گے۔

`FitToHeight` خصوصیت صفحے کی پیمائش کو صفحے کی چوڑائی کو ایڈجسٹ کرنے کے لئے ہے، ڈیفالٹ قیمت `1` ہے۔

`FitToWidth` خصوصیت صفحے کی پیمائش کو صفحے کی لمبائی کو ایڈجسٹ کرنے کے لئے ہے، ڈیفالٹ قیمت `1` ہے۔

`BlackAndWhite` خصوصیت صرف سیاہ و سفید چھپائی کو وضاحت کرنے کے لئے ہے، ڈیفالٹ آف ہے۔
f := excelize.NewFile()
var (
    size                 = 10
    orientation          = "landscape"
    firstPageNumber uint = 2
    adjustTo        uint = 100
    fitToHeight          = 2
    fitToWidth           = 2
    blackAndWhite        = true
)
if err := f.SetPageLayout("Sheet1", &excelize.PageLayoutOptions{
    Size:            &size,
    Orientation:     &orientation,
    FirstPageNumber: &firstPageNumber,
    AdjustTo:        &adjustTo,
    FitToHeight:     &fitToHeight,
    FitToWidth:      &fitToWidth,
    BlackAndWhite:   &blackAndWhite,
}); err != nil {
    fmt.Println(err)
}

ورک شیٹ پیج لے آؤٹ حاصل کریں

func (f *File) GetPageLayout(sheet string) (PageLayoutOptions, error)

دی گئی ورکشیٹ نام اور صفحہ لے آؤٹ پیرامیٹرز کے مطابق ورکشیٹ کی صفحہ لے آؤٹ خصوصیات حاصل کریں۔

ورک شیٹ پیج مارجنز تعین کریں

func (f *File) SetPageMargins(sheet string, opts *PageLayoutMarginsOptions) error

دی گئی ورکشیٹ نام اور مارجن پیرامیٹرز کے مطابق ورکشیٹ کی صفحہ مارجنز تعین کریں۔ معتمد مارجن اختیارات مندرجہ ذیل ہیں:

اختیار قسم تفصیل
نیچے *float64 نیچے مارجن
فوٹر *float64 فوٹر مارجن
ہیڈر *float64 ہیڈر مارجن
بائیں *float64 بائیں مارجن
دائیں *float64 دائیں مارجن
اوپر *float64 اوپر مارجن
افقی طور پر *bool صفحہ کا افقی درمیانہ کرنا
عمودی طور پر *bool صفحہ کا عمودی درمیانہ کرنا

ورک بک خصوصیات تعین کریں

func (f *File) SetWorkbookProps(opts *WorkbookPropsOptions) error

SetWorkbookProps کے استعمال سے ورک بک کی خصوصیات کو تعین کیا جاتا ہے۔ مندرجہ ذیل ورک بک خصوصیات معتمد ہیں:

خصوصیت قسم تفصیل
تاریخ1904 *bool اس بات کا اندازہ لگاتا ہے کہ ورک بک میں تاریخ 1904 کا نظام استعمال ہوتا ہے یا نہیں
فلٹرر پرائیویسی *bool فلٹر پرائیویسی، بتاتا ہے کہ کیا ایپلیکیشن ورک بک میں شخصی معلومات کا جائزہ لیتا ہے یا نہیں
کوڈ نام *string کوڈ نام

ورک بک خصوصیات حاصل کریں

func (f *File) GetWorkbookProps() (WorkbookPropsOptions, error)

GetWorkbookProps کے استعمال سے ورک بک کی خصوصیات حاصل کی جاتی ہیں۔

ہیڈر اور فوٹر مقرر کریں

func (f *File) SetHeaderFooter(sheet string, opts *HeaderFooterOptions) error

موجودہ صفحے کے نام اور کنٹرول حروف کی بنیاد پر ورک شیٹ کا ہیڈر اور فوٹر مقرر کریں۔

ہیڈر اور فوٹر مندرجہ ذیل فیلڈز شامل ہیں:

فیلڈ تفصیل
AlignWithMargins ہیڈر اور فوٹر کا موازنہ صفحہ کے مارجنز کے ساتھ مقرر کریں
DifferentFirst پہلے صفحے کے لئے ہیڈر اور فوٹر مقرر کریں
DifferentOddEven جفت اور طاق صفحے کے لئے ہیڈر اور فوٹر مقرر کریں
ScaleWithDoc ہیڈر اور فوٹر کو دستاویز کے ساتھ تناسب دینے کے لئے مقرر کریں
OddFooter جفت صفحات کے فوٹر کے لئے کنٹرول حرف، DifferentOddEven کی قیمت false ہونے پر پہلے صفحے کے لئے فوٹر مقرر کرنے کے لئے استعمال ہوتا ہے
OddHeader جفت صفحات کے ہیڈر کے لئے کنٹرول حرف، DifferentOddEven کی قیمت false ہونے پر پہلے صفحے کے ہیڈر کو مقرر کرنے کے لئے استعمال ہوتا ہے
EvenFooter جفت صفحات کا فوٹر کنٹرول حرف
EvenHeader جفت صفحات کا ہیڈر کنٹرول حرف
FirstFooter پہلے صفحے کا فوٹر کنٹرول حرف
FirstHeader پہلے صفحے کا ہیڈر کنٹرول حرف

زیر جدول میں دی گئی فارمٹ کوڈ کو 6 سٹرنگ قسم کے فیلڈز کے لئے استعمال کیا جا سکتا ہے: OddHeader, OddFooter, EvenHeader, EvenFooter, FirstFooter, FirstHeader

فارمٹ کوڈ تفصیل
&& حرف "&"
&font-size متن کا فونٹ سائز، جہاں فونٹ سائز اعشاری فونٹ سائز ہے
&"فونٹ نام،فونٹ قسم" ٹیکسٹ فونٹ نام رشتہ، فونٹ نام، اور ٹیکسٹ فونٹ قسم رشتہ، فونٹ قسم
&"-,Regular" معمولی ٹیکسٹ فارمیٹ، بولڈ اور اٹیلک موڈ کو منسوخ کریں
&A موجودہ ورک شیٹ کا نام
&B یا &"-,Bold" بولڈ ٹیکسٹ فارمیٹ، آف یا آن، ڈیفالٹ آف
&D موجودہ تاریخ
&C وسطی سیکشن
&E متن کے لئے ڈبل انڈر لائن
&F موجودہ ورک بک فائل کا نام
&G آبجیکٹ کو پس منظر کے طور پر مخصوص کریں (موجودہ زمانہ میں دستیاب نہیں ہے)
&H ٹیکسٹ شیڈو
&I یا &"-,Italic" اٹیلیک ٹیکسٹ
&K RRGGBB رنگ کی شکل میں فونٹ رنگ فارمیٹ۔ تھیم رنگز TTSNNN کے طور پر مخصوص کیے جاتے ہیں، جہاں TT تھیم رنگ ID ہے، S ہیو یا شیڈ کا عدد ہے، "+", "-"، ہیو یا شیڈ کی قیمت کو ظاہر کرتا ہے
&L بائیں سیکشن
&N کل صفحات کی تعداد
&O آؤٹ لائن ٹیکسٹ فارمیٹ
&P[[+\|-]n] اگر کوئی اختیاری لاحق نہیں ہے، تو موجودہ صفحے کا نمبر (اعشاری)
&R دائیں سیکشن
&S متن کے لئے انڈر لائن
&T موجودہ وقت
&U متن کو ایکلیاٹ سے مزیدار کریں۔ ڈیفالٹ موڈ آف ہے
&X سپر سکرپٹ فارمیٹ
&Y سبسکرپٹ فارمیٹ
&Z موجودہ ورک بک فائل کا راستہ

مثال کے طور پر:

err := f.SetHeaderFooter("Sheet1", &excelize.HeaderFooterOptions{
    DifferentFirst:   true,
    DifferentOddEven: true,
    OddHeader:        "&R&P",
    OddFooter:        "&C&F",
    EvenHeader:       "&L&P",
    EvenFooter:       "&L&D&R&T",
    FirstHeader:      `&CCenter &"-,Bold"Bold&"-,Regular"HeaderU+000A&D`,
})

مثال میں مندرجہ ذیل فارمیٹ شامل ہے:

  • پہلا صفحہ اپنا خود کا ہیڈر اور فوٹر رکھتا ہے
  • جفت اور طاق صفحات کا مختلف ہیڈر اور فوٹر ہوتا ہے
  • جفت صفحے کے دائیں حصے میں موجودہ صفحے کا نمبر ہوتا ہے
  • جفت صفحے کے وسطی حصے میں موجودہ ورک بک کا نام ہوتا ہے
  • جفت صفحے کے بائیں حصے میں موجودہ صفحے کا نمبر ہوتا ہے، اور دائیں حصے میں موجودہ وقت ہوتی ہے
  • پہلے صفحے کے وسطی حصے کا متن "وسط میں بولڈ ہیڈر" ہوتا ہے، اور دوسرے حصے میں تاریخ ہوتی ہے
  • پہلے صفحہ پر کوئی فوٹر نہیں ہے

نام تعین کریں

func (f *File) SetDefinedName(definedName *DefinedName) error

تعین شدہ نام کو دیے گئے نام پر مبنی ریفرنس رینج کے ساتھ سیٹ کریں، جہاں پہلے سے ہی سکوپ ورک بک ہوتا ہے۔ مثال کے طور پر:

err := f.SetDefinedName(&excelize.DefinedName{
    Name:     "مقدار",
    RefersTo: "Sheet1!$A$2:$D$5",
    Comment:  "تعین شدہ نام تبصرہ",
    Scope:    "Sheet2",
})

ورک شیٹ کی پرنٹ ایریا اور پرنٹ ٹائٹلز کو سیٹ کریں:

Setting print area and print titles of the worksheet

if err := f.SetDefinedName(&excelize.DefinedName{
    Name:     "_xlnm.Print_Area",
    RefersTo: "Sheet1!$A$1:$Z$100",
    Scope:    "Sheet1",
}); err != nil {
    fmt.Println(err)
}
if err := f.SetDefinedName(&excelize.DefinedName{
    Name:     "_xlnm.Print_Titles",
    RefersTo: "Sheet1!$A:$A,Sheet1!$1:$1",
    Scope:    "Sheet1",
}); err != nil {
    fmt.Println(err)
}

نام حاصل کریں

func (f *File) GetDefinedName() []DefinedName

ورک بک اور ورشیٹ کے ناموں کی فہرست سکوپ میں حاصل کریں۔

نام حذف کریں

func (f *File) DeleteDefinedName(definedName *DefinedName) error

دی گئی نام اور نام سکوپ پر مبنی تعین شدہ نام کو حذف کریں، جہاں پہلے سے ہی سکوپ ورک بک ہوتا ہے۔ مثال کے طور پر:

err := f.DeleteDefinedName(&excelize.DefinedName{
    Name:     "مقدار",
    Scope:    "Sheet2",
})

ورک بک ایپلیکیشن خصوصیات سیٹ کریں

func (f *File) SetAppProps(appProperties *AppProperties) error

ورک بک کی ایپلیکیشن خصوصیات سیٹ کریں۔ سیٹ کرنے والی خصوصیات میں شامل ہیں:

خصوصیت تفصیل
Application اس دستاویز کو بنانے والے ایپلیکیشن کا نام
ScaleCrop دستاویز کے تھمب نیل کی ڈسپلے کو سائز کرنا۔ ٹرو دستاویز تھمب نیل، اور فالسہ دستاویز تھمب نیل
DocSecurity دستاویز کی سیکیورٹی سطح جو عددی قیمت میں ہوتی ہے
Company دستاویز سے منسلک کمپنی کا نام
LinksUpToDate دستاویز میں ہائپر لنکس کو اپ ٹو ڈیٹ کرنا۔ ٹرو کو اپ ٹو ڈیٹ ہائپر لنکس کے لئے، اور فالسہ قدیم ہائپر لنکس کے لئے
HyperlinksChanged اس بیان میں بیان کی گئی نئی ہائپر لنکس استعمال کرنا چاہئے کہ نہیں، جو اگلے بار اس دستاویز کو کھولا جائے تو ہائپر لنک رشتے کو اپ ڈیٹ کرنے کے لئے
AppVersion اس بیان میں بیان کی گئی ایپلیکیشن کی ورژن۔ قیمت کو XX.YYYY کی شکل میں ہونی چاہئے، جہاں X اور Y عددی قیمتیں ہیں، ورنہ فائل اس معیار کے مطابق نہیں ہوگی۔

مثال کے طور پر:

err := f.SetAppProps(&excelize.AppProperties{
    Application:       "مائیکروسافٹ ایکسل",
    ScaleCrop:         true,
    DocSecurity:       3,
    Company:           "کمپنی کا نام",
    LinksUpToDate:     true,
    HyperlinksChanged: true,
    AppVersion:        "16.0000",
})

ورک بک ایپلیکیشن خصوصیات حاصل کریں

func (f *File) GetAppProps() (*AppProperties, error)

ورک بک کی ایپلیکیشن خصوصیات حاصل کریں۔

دستاویز خصوصیات سیٹ کریں

func (f *File) SetDocProps(docProperties *DocProperties) error

کام کی کور خصوصیات کو سیٹ کریں۔ جو خصوصیات سیٹ کی جا سکتی ہیں وہ مندرجہ ذیل ہیں:

خصوصیت تفصیل
زمرہ دستاویز مواد کا زمرہ
مواد کی حالت دستاویز مواد کی حالت۔ مثال کے طور پر، قیمتیں "ڈرافٹ"، "معائنہ شدہ"، اور "حائز" ہو سکتی ہیں
تخلیق شدہ دستاویز کی تخلیق کا وقت تاریخی صیغہ ISO 8601 UTC فارمیٹ میں، مثلاً 2019-06-04T22:00:10Z
تخلیق کنندہ دستاویز کا خالق
تفصیل وسائل مواد کی تفصیل
شناختی شناکت دی گئی متن کے سر پر ایک واضح حوالہ
کی وردات دستاویز کی کی وردات
زبان دستاویز کے مواد کی اصل زبان
آخری ترمیم شدہ دستاویز کو آخری بار کس نے ترمیم کیا ہے
ترمیم شدہ دستاویز کی ترمیم کا وقت، مثال کے طور پر، ISO 8601 UTC فارمیٹ میں، مثلاً 2019-06-04T22:00:10Z
نظرثانی دستاویز کی اصلاحی نسخہ
مضمون دستاویز کا مضمون
عنوان دستاویز کا عنوان
ورژن ورژن نمبر، جو صارف یا ایپلیکیشن کی طرف سے سیٹ کیا گیا ہے

مثال کے طور پر:

err := f.SetDocProps(&excelize.DocProperties{
    Category:       "category",
    ContentStatus:  "Draft",
    Created:        "2019-06-04T22:00:10Z",
    Creator:        "Go Excelize",
    Description:    "This file created by Go Excelize",
    Identifier:     "xlsx",
    Keywords:       "Spreadsheet",
    LastModifiedBy: "Go Author",
    Modified:       "2019-06-04T22:00:10Z",
    Revision:       "0",
    Subject:        "Test Subject",
    Title:          "Test Title",
    Language:       "en-US",
    Version:        "1.0.0",
})

دستاویز خصوصیات حاصل کریں

func (f *File) GetDocProps() (*DocProperties, error)

کام کی کور خصوصیات حاصل کریں۔

کام کی کور حفاظت کریں

func (f *File) ProtectWorkbook(opts *WorkbookProtectionOptions) error

دستاویز کی ساخت کو ایک پاسورڈ کے ساتھ حفاظت کریں تاکہ دیگر صارفین کو پوشیدہ ورک شیٹ دیکھنے، ورک شیٹس ضم کرنے، منتقل کرنے یا چھپانے، اور ورک شیٹس کے نام تبدیل کرنے سے روکا جا سکے۔ AlgorithmName فیلڈ میں ہیش الگوردمز XOR، MD4، MD5، SHA-1، SHA-256، SHA-384، یا SHA-512 کا مخصوص کرنے کو دعم دیتا ہے۔ اگر کوئی ہیش الگوردم مخصوص نہیں کیا گیا ہو تو، ڈیفالٹ طور پر XOR الگوردم استعمال ہوتا ہے۔ مثال کے طور پر، ورک شیٹ کی ساخت کو ایک پاسورڈ کے ساتھ حفاظت کریں:

err := f.ProtectWorkbook(&excelize.WorkbookProtectionOptions{
    Password:      "password",
    LockStructure: true,
})

WorkbookProtectionOptions ورک شیٹ کو حفاظت دینے کے لئے اختیارات کو تعین کرتا ہے۔

type WorkbookProtectionOptions struct {
    AlgorithmName string
    Password      string
    LockStructure bool
    LockWindows   bool
}

کام کی کور حفاظت ہٹائیں

func (f *File) UnprotectWorkbook(password ...string) error

کور کی حفاظت ہٹائیں، کور کی حفاظت کو تصدیق کرنے اور ہٹانے کے لئے اختیاری پاسورڈ پیرامیٹر تعین کریں۔