Çalışma Kitabı
Options
, elektronik tabloların okunması ve yazılması için seçenekleri tanımlar.
type Options struct {
MaxCalcIterations uint
Password string
RawCellValue bool
UnzipSizeLimit int64
UnzipXMLSizeLimit int64
ShortDatePattern string
LongDatePattern string
LongTimePattern string
CultureInfo CultureName
}
MaxCalcIterations
, formüller hesaplanırken maksimum iterasyon sayısını belirtmek için kullanılır ve varsayılan değeri 0'dır.
Password
, çalışma kitabını açarken ve kaydederken kullanılan şifreyi belirtmek için kullanılır, varsayılan değeri boştur.
RawCellValue
, hücre değerlerini okurken ham değeri alıp almayacağını belirtmek için kullanılır, varsayılan değeri false
'dur (sayı formatı uygulanmıştır).
UnzipSizeLimit
, bir elektronik tablo belgesini açarken sıkıştırmanın boyut sınırını belirtmek için kullanılır ve varsayılan sınır 16GB'dır.
UnzipXMLSizeLimit
, her çalışma sayfasını ve paylaşılan dize tablosunu açarken bellek sınırını belirtmek için kullanılır ve bu değer aşıldığında çalışma sayfası XML dosyası sistem geçici dizine sıkıştırılır. Bu değer, UnzipSizeLimit
'ten küçük veya eşit olmalıdır ve varsayılan sınır 16MB'dir.
ShortDatePattern
, kısa tarih sayısal format kodunu belirtmek için kullanılır.
LongDatePattern
, uzun tarih sayısal format kodunu belirtmek için kullanılır.
LongTimePattern
, uzun zaman sayısal format kodunu belirtmek için kullanılır.
CultureInfo
, bölgesel formatı belirtmek için kullanılır ve bölgesel özgü tarih ve saat ayarlarından etkilenen sayısal formatları okurken kullanılacaktır.
Oluştur
func NewFile(opts ...Options) *File
Yeni bir Excel çalışma kitabı oluşturmak için NewFile
kullanın. Varsayılan olarak Sheet1
adında bir çalışma sayfası içerecektir.
Aç
func OpenFile(filename string, opts ...Options) (*File, error)
Mevcut bir Excel belgesini açmak için OpenFile
kullanın. Örneğin, şifre korumalı bir elektronik tablo belgesini açın:
f, err := excelize.OpenFile("Book1.xlsx", excelize.Options{Password: "şifre"})
if err != nil {
return
}
Açılan çalışma kitabını kapatmak için Close()
kullanın.
Veri Akışını Aç
func OpenReader(r io.Reader, opts ...Options) (*File, error)
OpenReader, io.Reader
'dan veri okur.
Aşağıdaki örnekte, yüklenen elektronik tablo belgelerini almak için basit bir HTTP sunucusu oluşturuyoruz, alınan belgeye yeni bir çalışma sayfası ekliyoruz ve bir indirme yanıtı döndürüyoruz:
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("YeniSayfa")
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 kullanarak test etme:
curl --location --request GET 'http://127.0.0.1:8090/process' \
--form 'file=@/tmp/template.xltx' -O -J
Kaydet
func (f *File) Save(opts ...Options) error
Düzenlemeleri bir Excel belgesine kaydetmek için Save
kullanın.
Farklı Kaydet
func (f *File) SaveAs(name string, opts ...Options) error
Excel belgesini belirtilen bir dosya olarak kaydetmek için SaveAs
kullanın.
Çalışma Kitabını Kapat
func (f *File) Close() error
Belgeyi kapatır ve açılırken oluşturulmuş olan herhangi bir sistem disk önbelleğini temizler.
Yeni Çalışma Sayfası
func (f *File) NewSheet(sheet string) (int, error)
Verilen çalışma sayfası adına göre yeni bir çalışma sayfası oluşturur ve çalışma kitabındaki çalışma sayfasının dizinini döndürür. Lütfen unutmayın ki yeni bir çalışma kitabı oluşturulduğunda içinde varsayılan olarak Sheet1
adında bir çalışma sayfası bulunacaktır.
Çalışma Sayfasını Sil
func (f *File) DeleteSheet(sheet string) error
Verilen çalışma sayfası adına göre belirtilen çalışma sayfasını siler. Bu yöntemi dikkatli kullanın çünkü silinen çalışma sayfasıyla ilişkili formüller, referanslar, grafikler ve diğer unsurları etkiler. Diğer bileşenler silinen çalışma sayfasındaki değerlere referans veriyorsa bir hata uyarısı alınır ve hatta çalışma kitabının açılamamasına neden olabilir. Yalnızca çalışma kitabı yalnızca bir çalışma sayfası içeriyorsa bu yöntemi çağırmak geçersizdir.
Çalışma Sayfasını Kopyala
func (f *File) CopySheet(from, to int) error
Verilen kaynak çalışma sayfası ve hedef çalışma sayfası dizinine göre çalışma sayfasını kopyalar. Geliştirici, hedef çalışma sayfası dizininin zaten mevcut olup olmadığını doğrulamalıdır. Şu anda, yalnızca hücre değerleri ve formülleri içeren çalışma sayfalarının kopyalanmasını destekler; tablolar, resimler, grafikler ve özet tablolar içeren çalışma sayfalarının kopyalanmasını desteklemez.
// Sheet1 adında bir çalışma sayfası zaten mevcut ...
index, err := f.NewSheet("Sheet2")
if err != nil {
fmt.Println(err)
return
}
err := f.CopySheet(1, index)
Çalışma Sayfalarını Gruplandır
func (f *File) GroupSheets(sheets []string) error
Verilen çalışma sayfası adlarına göre çalışma sayfalarını gruplar; verilen çalışma sayfaları arasında varsayılan çalışma sayfası olmalıdır.
Çalışma Sayfalarını Gruplama
func (f *File) UngroupSheets() error
Çalışma sayfalarını gruplamayı kaldırır.
Çalışma Sayfası Arka Plan Resmini Ayarla
func (f *File) SetSheetBackground(sheet, picture string) error
Verilen çalışma sayfası adına ve resim dosyası yoluna göre belirtilen çalışma sayfası için döşeli arka plan resmini ayarlar. Desteklenen resim dosyası formatları şunları içerir: BMP, EMF, EMZ, GIF, JPEG, JPG, PNG, SVG, TIF, TIFF, WMF ve WMZ.
func (f *File) SetSheetBackgroundFromBytes(sheet, extension string, picture []byte) error
Verilen çalışma sayfası adına, resim formatı uzantısına ve resim formatı verilerine göre belirtilen çalışma sayfası için döşeli arka plan resmini ayarlar. Desteklenen resim dosyası formatları şunları içerir: BMP, EMF, EMZ, GIF, JPEG, JPG, PNG, SVG, TIF, TIFF, WMF ve WMZ.
Varsayılan Çalışma Sayfasını Ayarla
func (f *File) SetActiveSheet(index int)
Verilen dizin değerine göre varsayılan çalışma sayfasını ayarlar; değer 0
'dan büyük veya eşit olmalı ve çalışma kitabındaki çalışma sayfalarının toplam sayısından küçük olmalıdır.
Varsayılan Çalışma Sayfası Dizinini Al
func (f *File) GetActiveSheetIndex() int
Varsayılan çalışma sayfasının dizinini alır; varsayılan çalışma sayfası bulunamadığında 0
döndürür.
Çalışma Sayfası Görünürlüğünü Ayarla
func (f *File) SetSheetVisible(sheet string, visible bool, veryHidden ...bool) error
Verilen çalışma sayfası adına ve görünürlük parametresine göre çalışma sayfasının görünürlüğünü ayarlar. Bir çalışma kitabı en az bir görünür çalışma sayfası içermelidir. Verilen çalışma sayfası varsayılan çalışma sayfası ise görünürlük ayarı geçersizdir. Üçüncü opsiyonel parametre olan veryHidden
, visible
parametresi false
olduğunda yalnızca geçerlidir.
Örneğin, Sheet1
adlı çalışma sayfasını gizlemek için:
err := f.SetSheetVisible("Sheet1", false)
Çalışma Sayfası Görünürlüğünü Al
func (f *File) GetSheetVisible(sheet string) (bool, error)
Verilen çalışma sayfası adına göre çalışma sayfasının görünürlük ayarını alır. Örneğin, Sheet1
adlı çalışma sayfasının görünürlük ayarını almak için:
visible, err := f.GetSheetVisible("Sheet1")
Sayfa Özelliklerini Ayarla
func (f *File) SetSheetProps(sheet string, opts *SheetPropsOptions) error
Belirtilen çalışma sayfasının özelliklerini, verilen çalışma sayfası adı ve özellik seçeneklerine dayanarak ayarlar. Desteklenen çalışma sayfası özellik seçenekleri aşağıdaki gibidir:
Özellik | Tür | Açıklama |
---|---|---|
CodeName | *string |
Kod adı |
EnableFormatConditionsCalculation | *bool |
Koşullu biçimlendirme otomatik olarak hesaplanıp hesaplanmayacağını belirtin, varsayılan değeri true olarak belirtilir |
Published | *bool |
Çalışma sayfasının yayınlanıp yayınlanmayacağını belirtin, varsayılan değeri true olarak belirtilir |
AutoPageBreaks | *bool |
Çalışma sayfasının sayfaları otomatik olarak bölmeyi belirtin, varsayılan değeri true olarak belirtilir |
FitToPage | *bool |
Sayfaya sığdırmayı etkinleştirmeyi belirtin, varsayılan değeri false olarak belirtilir |
TabColorIndexed | *int |
Geriye uyumlu dizinlenmiş renk değeri için kullanılır |
TabColorRGB | *string |
Standart ARGB renk değeri |
TabColorTheme | *int |
0 'dan başlayarak tema renk indeksi |
TabColorTint | *float64 |
Renge uygulanan tonlama değeri, varsayılan değeri 0.0 olarak belirtilir |
OutlineSummaryBelow | *bool |
Özetlemenin yönünü, detay verilerinin altında olup olmayacağını belirtin, varsayılan değeri true olarak belirtilir |
OutlineSummaryRight | *bool |
Özetlemenin yönünü, detay verilerinin sağına olup olmayacağını belirtin, varsayılan değeri true olarak belirtilir |
BaseColWidth | *uint8 |
Karakter sayısında temsil edilen temel sütun genişliği, varsayılan değeri 8 olarak belirtilir |
DefaultColWidth | *float64 |
Kenar boşluklarını ve ızgaraları içeren varsayılan sütun genişliği |
DefaultRowHeight | *float64 |
Noktalarda temsil edilen satır yüksekliği |
CustomHeight | *bool |
Özel satır yüksekliğinin uygulanıp uygulanmadığını belirtin, varsayılan değeri false olarak belirtilir |
ZeroHeight | *bool |
Satırların varsayılan olarak gizlenip gizlenmediğini belirtin, varsayılan değeri false olarak belirtilir |
ThickTop | *bool |
Satırların varsayılan olarak üst kalın kenar çizgisine sahip olup olmadığını belirtin, varsayılan değeri false olarak belirtilir |
ThickBottom | *bool |
Satırların varsayılan olarak alt kalın kenar çizgisine sahip olup olmadığını belirtin, varsayılan değeri false olarak belirtilir |
Örneğin, Sheet1
adındaki çalışma sayfasının varsayılan satırının gizli olarak ayarlanması:
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("Kitap1.xlsx")
Sayfa Özelliklerini Al
func (f *File) GetSheetProps(sheet string) (SheetPropsOptions, error)
Verilen çalışma sayfası adına dayanarak belirtilen çalışma sayfasının özelliklerini alır.
Sayfa Görünümü Özelliklerini Ayarlayın
func (f *File) SetSheetView(sheet string, viewIndex int, opts *ViewOptions) error
Verilen sayfa adı, görünüm indeksi ve görünüm seçeneklerine göre sayfa görünüm özelliklerini ayarlar. viewIndex
, negatif bir sayı olabilir, bu durumda geriye doğru sayılama yapılacaktır (-1
son görünümü temsil eder). Sayfa görünüm özelliklerini ayarlama için desteklenen seçenekler aşağıdaki gibidir:
Özellik | Tip | Açıklama |
---|---|---|
DefaultGridColor | *bool |
Varsayılan ızgara çizgisi renginin kullanılıp kullanılmayacağını belirtir, varsayılan değer true |
RightToLeft | *bool |
Sağdan sola doğru görüntülenip görüntülenmeyeceğini belirtir, varsayılan değer false |
ShowFormulas | *bool |
Çalışma sayfasının formülleri gösterip göstermeyeceğini belirtir, varsayılan değer false |
ShowGridLines | *bool |
Çalışma sayfasının ızgara çizgilerini gösterip göstermeyeceğini belirtir, varsayılan değer true |
ShowRowColHeaders | *bool |
Çalışma sayfasının satır ve sütun başlıklarını gösterip göstermeyeceğini belirtir, varsayılan değer true |
ShowRuler | *bool |
Sayfa düzeni görünümünde cetvelin gösterilip gösterilmeyeceğini belirtir, varsayılan değer true |
ShowZeros | *bool |
Hücrelerde sıfır değerlerinin gösterilip gösterilmeyeceğini belirtir, varsayılan değer true , aksi takdirde boş olarak gösterilir |
TopLeftCell | *string |
Görünür sol üst hücrenin koordinatını belirtir |
View | *string |
Çalışma sayfası görünüm türünü belirtir, enum değerleri normal , sayfaAraziÖnizlemesi ve sayfaDüzeni |
ZoomScale | *float64 |
Mevcut görünüm penceresi yakınlaştırma ölçeği yüzdesini belirtir, 10 ile 400 arasında sınırlıdır, varsayılan değer 100 |
Sayfa Görünümü Özelliklerini Alın
func (f *File) GetSheetView(sheet string, viewIndex int) (ViewOptions, error)
Verilen sayfa adı ve görünüm indeksi temel alınarak sayfa görünüm özelliklerini alır. viewIndex
, negatif bir sayı olabilir, bu durumda geriye doğru sayılama yapılacaktır (-1
son görünümü temsil eder).
Çalışma Sayfası Düzeni Ayarla
func (f *File) SetPageLayout(sheet string, opts *PageLayoutOptions) error
Verilen çalışma sayfası adı ve sayfa düzeni parametrelerine göre çalışma sayfasının sayfa düzeni özelliklerini ayarlar. Şu anda desteklenen sayfa düzeni özellikleri şunları içerir:
Size
özelliği, varsayılan sayfa düzeni boyutunun "Mektup 8½ × 11 inç" olduğu sayfa kağıdı boyutunu belirtmek için kullanılır. Aşağıdaki tablo, sayfa düzeni boyutları ile Excelize'daki endeks Size
parametresi arasındaki ilişkiyi gösterir:
Endeks | Kağıt Boyutu |
---|---|
1 | Mektup 8½ × 11 inç |
2 | Küçük mektup 8½ × 11 inç |
3 | Tabloid 11 × 17 inç |
4 | Defter 17 × 11 inç |
... | ... |
40 | Alman Standart Abanma 8.5 × 12 inç |
41 | Alman yasal kağıt abanması 8.5 × 13 inç |
42 | ISO B4 250 × 353 mm |
43 | Japon postası 100 × 148 mm |
44 | Standart kağıt 9 × 11 inç |
45 | Standart kağıt 10 × 11 inç |
46 | Standart kağıt 15 × 11 inç |
47 | Davetiye mektubu 220 × 220 mm |
50 | Başlıklı mektup büyütülmüş 9.275 × 12 inç |
51 | Ekstra büyük yasal kağıt 9.275 × 15 inç |
52 | Tabloid ekstra kağıt 11.69 × 18 inç |
53 | A4 ekstra büyük 236 × 322 mm |
54 | Başlıklı mektup manzaralı 8.275 × 11 inç |
55 | A4 manzara 210 × 297 mm |
56 | Başlıklı ekstra büyük manzara 9.275 × 12 inç |
57 | SüperA/SuperA/A4 kağıdı 227 × 356 mm |
58 | SüperB/SuperB/A3 kağıdı 305 × 487 mm |
59 | Başlıklı büyütülmüş 8.5 × 12.69 inç |
60 | A4 büyütülmüş 210 × 330 mm |
61 | A5 manzara 148 × 210 mm |
62 | JIS B5 manzara 182 × 257 mm |
63 | A3 ekstra büyük 322 × 445 mm |
64 | A5 ekstra büyük 174 × 235 mm |
65 | ISO B5 ekstra büyük 201 × 276 mm |
66 | A2 420 × 594 mm |
67 | A3 manzara 297 × 420 mm |
68 | A3 ekstra büyük manzara 322 × 445 mm |
69 | Çift Japon postası 200 × 148 mm |
70 | A6 105 × 148 mm |
71 | Japon zarfı Kaku #2 |
72 | Japon zarfı Kaku #3 |
73 | Japon zarfı Chou #3 |
74 | Japon zarfı Chou #4 |
75 | Başlıklı manzara 11 × 8½ inç |
76 | A3 manzara 420 × 297 mm |
77 | A4 manzara 297 × 210 mm |
78 | A5 manzara 210 × 148 mm |
79 | B4 (JIS) manzara 364 × 257 mm |
80 | B5 (JIS) manzara 257 × 182 mm |
81 | Japon postası manzara 148 × 100 mm |
82 | Çift Japon postası manzara 148 × 200 mm |
83 | A6 manzara 148 × 105 mm |
84 | Japon zarfı Kaku #2 manzara |
85 | Japon zarfı Kaku #3 manzara |
86 | Japon zarfı Chou #3 manzara |
| 87 | Japon Zarf Chou #4 Manzara |
| 88 | B6 (JIS) 128 × 182 mm |
| 89 | B6 (JIS) Manzara 182 × 128 mm |
| 90 | 12 × 11 inç |
| 91 | Japon Zarf You #4 |
| 92 | Japon Zarf You #4 Manzara |
| 93 | Çince 16K 146 × 215 mm |
| 94 | Çince 32K 97 × 151 mm |
| 95 | Çince Büyük 32K 97 × 151 mm |
| 96 | Çince Zarf #1 102 × 165 mm |
| 97 | Çince Zarf #2 102 × 176 mm |
| 98 | Çince Zarf #3 125 × 176 mm |
| 99 | Çince Zarf #4 110 × 208 mm |
| 100 | Çince Zarf #5 110 × 220 mm |
| 101 | Çince Zarf #6 120 × 230 mm |
| 102 | Çince Zarf #7 160 × 230 mm |
| 103 | Çince Zarf #8 120 × 309 mm |
| 104 | Çince Zarf #9 229 × 324 mm |
| 105 | Çince Zarf #10 324 × 458 mm |
| 106 | Çince 16K Manzara |
| 107 | Çince 32K Manzara |
| 108 | Çince Büyük 32K Manzara |
| 109 | Çince Zarf #1 Manzara 165 × 102 mm |
| 110 | Çince Zarf #2 Manzara 176 × 102 mm |
| 111 | Çince Zarf #3 Manzara 176 × 125 mm |
| 112 | Çince Zarf #4 Manzara 208 × 110 mm |
| 113 | Çince Zarf #5 Manzara 220 × 110 mm |
| 114 | Çince Zarf #6 Manzara 230 × 120 mm |
| 115 | Çince Zarf #7 Manzara 230 × 160 mm |
| 116 | Çince Zarf #8 Manzara 309 × 120 mm |
| 117 | Çince Zarf #9 Manzara 324 × 229 mm |
| 118 | Çince Zarf #10 Manzara 458 × 324 mm |
`Orientation` özelliği, sayfa düzeni yönünü belirtmek için kullanılır, varsayılan sayfa düzeni yönü "dik"tir ve isteğe bağlı değerler `dik` ve `manzara`dır.
`FirstPageNumber` özelliği, başlangıç sayı numarasını belirtmek için kullanılır, varsayılan otomatiktir.
`AdjustTo` özelliği, sayfa ölçekleme oranını belirtmek için kullanılır, 10 ila 400 arasında bir aralığa sahiptir, yani, %10 ila %400 arasında ölçeklendirme yapar ve normal boyut için varsayılan değer `100` dur. `FitToHeight` veya `FitToWidth` ayarı bu özelliği geçersiz kılar.
`FitToHeight` özelliği, sayfa genişliğini ayarlamak için sayfa ölçeklemesini belirtmek için kullanılır, varsayılan değeri `1`dir.
`FitToWidth` özelliği, sayfa yüksekliğini ayarlamak için sayfa ölçeklemesini belirtmek için kullanılır, varsayılan değeri `1`dir.
`BlackAndWhite` özelliği, tek renkli baskıyı belirtmek için kullanılır, varsayılan kapalıdır.
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)
}
Çalışma Sayfası Düzenini Al
func (f *File) GetPageLayout(sheet string) (PageLayoutOptions, error)
Verilen çalışma sayfası adı ve sayfa düzeni parametreleri üzerine çalışma sayfasının sayfa düzeni özelliklerini alın.
Çalışma Sayfası Kenar Boşluklarını Ayarla
func (f *File) SetPageMargins(sheet string, opts *PageLayoutMarginsOptions) error
Verilen çalışma sayfası adı ve kenar boşluğu parametrelerine göre çalışma sayfasının kenar boşluklarını ayarlayın. Desteklenen kenar boşluğu seçenekleri şunlardır:
Seçenek | Tür | Açıklama |
---|---|---|
Alt | *float64 |
Alt kenar boşluğu |
Alt Bilgi | *float64 |
Alt bilgi kenar boşluğu |
Üst Bilgi | *float64 |
Üst bilgi kenar boşluğu |
Sol | *float64 |
Sol kenar boşluğu |
Sağ | *float64 |
Sağ kenar boşluğu |
Üst | *float64 |
Üst kenar boşluğu |
Yatay | *bool |
Sayfa yatayda merkezlenme |
Dikey | *bool |
Sayfa dikeyde merkezlenme |
Çalışma Sayfası Kenar Boşluklarını Al
func (f *File) GetPageMargins(sheet string) (PageLayoutMarginsOptions, error)
Verilen çalışma sayfası adı ve kenar boşluğu parametreleri üzerine çalışma sayfasının kenar boşluklarını alın.
Çalışma Kitabı Özelliklerini Ayarla
func (f *File) SetWorkbookProps(opts *WorkbookPropsOptions) error
SetWorkbookProps, çalışma kitabının özelliklerini ayarlamak için kullanılır. Desteklenen çalışma kitabı özellikleri şunlardır:
Özellik | Tür | Açıklama |
---|---|---|
Date1904 | *bool |
Çalışma kitabının 1904 tarih sistemini kullanıp kullanmadığını gösterir |
FiltreGizliliği | *bool |
Filtre gizliliği, uygulamanın çalışma kitabında kişisel bilgileri kontrol edip etmediğini belirtir |
KodAdı | *string |
Kod adı |
Çalışma Kitabı Özelliklerini Al
func (f *File) GetWorkbookProps() (WorkbookPropsOptions, error)
GetWorkbookProps, çalışma kitabının özelliklerini almak için kullanılır.
Başlık ve Altbilgi Ayarlama
func (f *Dosya) SetBaslikAltbilgi(sayfa string, secenekler *BaslikAltbilgiSecenekleri) hata
Belirtilen çalışma sayfası adı ve kontrol karakterlerine göre çalışma sayfasının başlık ve altbilgisini ayarlar.
Başlık ve altbilgi aşağıdaki alanları içerir:
Alan | Açıklama |
---|---|
Kenar Boşluklarıyla Hizala | Başlık ve altbilgiyi sayfa kenar boşluklarıyla hizalar |
Farklı İlk | İlk sayfa için başlık ve altbilgiyi ayarlar |
Farklı Tek Çift | Tek ve çift sayfalar için başlık ve altbilgiyi ayarlar |
Belgeyle Ölçekle | Başlık ve altbilgiyi belgeyle ölçekler |
Tek Altbilgi | Tek sayfa altbilgisi, FarklıTekÇift değeri false olduğunda ilk sayfa için altbilgiyi ayarlamak için kullanılır |
Tek Başlık | Tek sayfa başlığı, FarklıTekÇift değeri false olduğunda ilk sayfa için başlığı ayarlamak için kullanılır |
Çift Altbilgi | Çift sayfa altbilgisi |
Çift Başlık | Çift sayfa başlığı |
İlk Sayfa Altbilgisi | İlk sayfa altbilgisi için kontrol karakteri |
İlk Sayfa Başlığı | İlk sayfa başlığı için kontrol karakteri |
Aşağıdaki tablodaki format kodları, 6 adet dize tipi alan için kullanılabilir: TekBaşlık
, TekAltbilgi
, ÇiftBaşlık
, ÇiftAltbilgi
, İlkSayfaAltı
ve İlkSayfaBaşlık
Format Kodu | Açıklama |
---|---|
&& |
Karakter "&" |
&font-boyutu |
Metin font boyutu, font boyutu nokta cinsinden ondalık bir değerdir |
&"font adı,font tipi" |
Metin font adı dizesi, font adı ve metin font tipi dizesi, font tipi |
&"-,Normal" |
Normal metin formatı. Kalın ve italik modları kapatır |
&A |
Geçerli çalışma sayfası adı |
&B veya &"-,Kalın" |
Kalın metin formatı, kapalı veya açık, varsayılan olarak kapalı |
&D |
Geçerli tarih |
&C |
Merkezi bölüm |
&E |
Metin için çift altı çizgi |
&F |
Geçerli çalışma kitabı dosya adı |
&G |
Nesneyi arka plan olarak belirtir (şu anda desteklenmemektedir) |
&H |
Metin gölgesi |
&I veya &"-,İtalik" |
İtalik metin |
&K |
RGB renk formatında font rengi, tema renkleri TTSNNN olarak belirtilir, burada TT tema renk kimliğidir, S ton veya tonu belirtir, "+" ve "-" ise ton değerini belirtir |
&L |
Sol bölüm |
&N |
Toplam sayfa sayısı |
&O |
Metin dış çizgisi formatı |
&P[[+\|-]n] |
İsteğe bağlı bir sonek yoksa, geçerli sayfa numarası (ondalık) |
&R |
Sağ bölüm |
&S |
Metin üzeri çizgi |
&T |
Geçerli saat |
&U |
Metine tek altı çizgi ekler. Varsayılan mod kapalıdır |
&X |
Üstsimge formatı |
&Y |
Altsimge formatı |
&Z |
Geçerli çalışma kitabı dosya yolu |
Örnek olarak:
hata := f.SetBaslikAltbilgi("Sayfa1", &excelize.BaslikAltbilgiSecenekleri{
FarklıIlk: true,
FarklıTekÇift: true,
TekBaşlık: "&R&P",
TekAltbilgi: "&C&F",
ÇiftBaşlık: "&L&P",
ÇiftAltbilgi: "&L&D&R&T",
İlkSayfaBaşlık: `&COdak &"-,Kalın"Kalın&"-,Normal"BaşlıkU+000A&D`,
})
Yukarıdaki örnek aşağıdaki formatı içerir:
- İlk sayfanın kendi başlık ve altbilgisi vardır
- Tek ve çift sayfaların farklı başlık ve altbilgisi vardır
- Tek sayfa başlık sağ kenarda mevcut sayfa numarasını içerir
- Tek sayfa altbilgi orta bölümde geçerli çalışma kitabı dosya adını içerir
- Çift sayfa başlık sol bölümde mevcut sayfa numarasını içerir
- Çift sayfa altbilgi sol bölümde mevcut tarihi, sağ bölümde mevcut saati içerir
- İlk sayfa merkez bölümündeki ilk satırın metni "Orta Kalın Başlık", ikinci satırda tarih bulunur
- İlk sayfada altbilgi bulunmamaktadır
Adı Ayarla
func (f *File) SetDefinedName(definedName *DefinedName) error
Verilen adı ve varsayılan kapsamın çalışma kitabı olduğu varsayılan ad ve referans aralığını ayarlayın. Örneğin:
err := f.SetDefinedName(&excelize.DefinedName{
Name: "Miktar",
RefersTo: "Sayfa1!$A$2:$D$5",
Comment: "tanımlanan ad yorumu",
Scope: "Sayfa2",
})
Çalışma sayfasının yazdırma alanını ve başlıklarını ayarlama:
if err := f.SetDefinedName(&excelize.DefinedName{
Name: "_xlnm.Print_Area",
RefersTo: "Sayfa1!$A$1:$Z$100",
Scope: "Sayfa1",
}); err != nil {
fmt.Println(err)
}
if err := f.SetDefinedName(&excelize.DefinedName{
Name: "_xlnm.Print_Titles",
RefersTo: "Sayfa1!$A:$A,Sayfa1!$1:$1",
Scope: "Sayfa1",
}); err != nil {
fmt.Println(err)
}
Adı Al
func (f *File) GetDefinedName() []DefinedName
Kapsam içindeki çalışma kitabı ve çalışma sayfasının adlarını alın.
Adı Sil
func (f *File) DeleteDefinedName(definedName *DefinedName) error
Verilen ad ve ad kapsamına dayalı olarak tanımlanan adı silin, varsayılan kapsamın çalışma kitabı olduğu. Örneğin:
err := f.DeleteDefinedName(&excelize.DefinedName{
Name: "Miktar",
Scope: "Sayfa2",
})
Çalışma Kitabı Uygulama Özelliklerini Ayarla
func (f *File) SetAppProps(appProperties *AppProperties) error
Çalışma kitabının uygulama özelliklerini ayarlayın. Ayarlanabilecek özellikler şunları içerir:
Özellik | Açıklama |
---|---|
Uygulama | Bu belgeyi oluşturan uygulamanın adı |
ScaleCrop | Belgenin küçük resminin görüntülenmesini belirtir. Belge küçük resmi ölçeklendirmek için true , ve kırpma için false olarak ayarlayın |
DocSecurity | Sayısal bir değer olarak temsil edilen belge güvenlik seviyesi |
Şirket | Belge ile ilişkili şirketin adı |
BağlantılarGüncel | Belgedeki bağlantıların güncel olup olmadığını belirler. Güncel bağlantılar için true , ve eski bağlantılar için false olarak ayarlayın |
Bağlantılar Değiştirildi | Bu bölümde belirtilen yeni bağlantıların bir sonraki belge açıldığında bağlantı ilişkilerini güncellemek için kullanılıp kullanılmayacağını belirtir |
Uygulama Sürümü | Bu belgeyi oluşturan uygulamanın sürümünü belirtir. Değer, XX.YYYY formatında olmalıdır, burada X ve Y sayısal değerlerdir, aksi takdirde dosya standarta uygun olmayacaktır |
Örneğin:
err := f.SetAppProps(&excelize.AppProperties{
Application: "Microsoft Excel",
ScaleCrop: true,
DocSecurity: 3,
Company: "Şirket Adı",
LinksUpToDate: true,
HyperlinksChanged: true,
AppVersion: "16.0000",
})
Çalışma Kitabı Uygulama Özelliklerini Al
func (f *File) GetAppProps() (*AppProperties, error)
Çalışma kitabının uygulama özelliklerini alın.
Belge özelliklerini ayarla
func (f *File) SetDocProps(docProperties *DocProperties) error
Çalışma kitabının temel özelliklerini ayarlayın. Ayarlanabilen özellikler şunları içerir:
Özellik | Açıklama |
---|---|
Kategori | Belge içeriğinin kategorisi |
İçerikDurumu | Belge içeriğinin durumu. Örneğin, değerler "Taslak", "İncelenen" ve "Nihai" olabilir |
Oluşturulma | Belgenin oluşturulma zamanı, ISO 8601 UTC formatında temsil edilir, örneğin 2019-06-04T22:00:10Z |
Oluşturan | Belgeyi oluşturan kişi |
Açıklama | Kaynak içeriğinin açıklaması |
Tanımlayıcı | Belirli bir bağlamda kaynağa açık bir referans |
Anahtar Kelimeler | Belgenin anahtar kelimeleri |
Dil | Belge içeriğinin asıl dili |
SonDeğiştiren | Belgeyi son değiştiren kullanıcı |
Değiştirilme | Belgenin değiştirilme zamanı, ISO 8601 UTC formatında temsil edilir, örneğin 2019-06-04T22:00:10Z |
Revizyon | Belgenin revizyon sürümü |
Konu | Belgenin konusu |
Başlık | Belgenin başlığı |
Versiyon | Kullanıcı veya uygulama tarafından belirlenen sürüm numarası |
Örneğin:
err := f.SetDocProps(&excelize.DocProperties{
Category: "kategori",
ContentStatus: "Taslak",
Created: "2019-06-04T22:00:10Z",
Creator: "Go Excelize",
Description: "Bu dosya Go Excelize tarafından oluşturuldu",
Identifier: "xlsx",
Keywords: "Çalışma Kitabı",
LastModifiedBy: "Go Yazarı",
Modified: "2019-06-04T22:00:10Z",
Revision: "0",
Subject: "Test Konu",
Title: "Test Başlık",
Language: "tr-TR",
Version: "1.0.0",
})
Belge özelliklerini al
func (f *File) GetDocProps() (*DocProperties, error)
Çalışma kitabının temel özelliklerini alın.
Çalışma kitabını koru
func (f *File) ProtectWorkbook(opts *WorkbookProtectionOptions) error
Diğer kullanıcıların gizli çalışma sayfalarını görüntülemesini, çalışma sayfalarını eklemesini, taşımasını veya gizlemesini ve çalışma sayfalarını yeniden adlandırmasını önlemek için çalışma kitabının yapısını bir şifre ile koruyun. AlgorithmName
alanı XOR, MD4, MD5, SHA-1, SHA-256, SHA-384 veya SHA-512 hash algoritmalarını belirtmeyi destekler. Herhangi bir hash algoritması belirtilmemişse varsayılan olarak XOR algoritması kullanılır. Örneğin, çalışma kitabının yapısını bir şifre ile koruma:
err := f.ProtectWorkbook(&excelize.WorkbookProtectionOptions{
Password: "şifre",
LockStructure: true,
})
WorkbookProtectionOptions, çalışma kitabını korumak için seçenekleri tanımlar.
type WorkbookProtectionOptions struct {
AlgorithmName string
Password string
LockStructure bool
LockWindows bool
}
Çalışma kitabının korumasını kaldır
func (f *File) UnprotectWorkbook(password ...string) error
Çalışma kitabının korumasını kaldırın, opsiyonel bir şifre parametresi belirterek çalışma kitabının korumasını doğrulayın ve kaldırın.