document

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2017 License: AGPL-3.0 Imports: 21 Imported by: 0

Documentation

Overview

Package document provides creation, reading, and writing of ECMA 376 Open Office XML documents.

Example:

doc := document.New()
para := doc.AddParagraph()
run := para.AddRun()
run.SetText("foo")
doc.SaveToFile("foo.docx")

Index

Examples

Constants

View Source
const (
	FieldCurrentPage   = "PAGE"
	FieldNumberOfPages = "NUMPAGES"
	FieldDate          = "DATE"
	FieldCreateDate    = "CREATEDATE"
	FieldEditTime      = "EDITTIME"
	FieldPrintDate     = "PRINTDATE"
	FieldSaveDate      = "SAVEDATE"
	FieldTIme          = "TIME"
	FieldTOC           = "TOC"
)

Field constants

Variables

This section is empty.

Functions

This section is empty.

Types

type AnchoredDrawing

type AnchoredDrawing struct {
	// contains filtered or unexported fields
}

AnchoredDrawing is an absolutely positioned image within a document page.

func (AnchoredDrawing) GetImage

func (a AnchoredDrawing) GetImage() (common.ImageRef, bool)

GetImage returns the ImageRef associated with an AnchoredDrawing.

func (AnchoredDrawing) SetAlignment

func (a AnchoredDrawing) SetAlignment(h wml.WdST_AlignH, v wml.WdST_AlignV)

SetAlignment positions an anchored image via alignment. Offset is incompatible with SetOffset, whichever is called last is applied.

func (AnchoredDrawing) SetHAlignment

func (a AnchoredDrawing) SetHAlignment(h wml.WdST_AlignH)

SetHAlignment sets the horizontal alignment for an anchored image.

func (AnchoredDrawing) SetName

func (a AnchoredDrawing) SetName(name string)

SetName sets the name of the image, visible in the properties of the image within Word.

func (AnchoredDrawing) SetOffset

func (a AnchoredDrawing) SetOffset(x, y measurement.Distance)

SetOffset sets the offset of the image relative to the origin, which by default this is the top-left corner of the page. Offset is incompatible with SetAlignment, whichever is called last is applied.

func (AnchoredDrawing) SetOrigin

SetOrigin sets the origin of the image. It defaults to ST_RelFromHPage and ST_RelFromVPage

func (AnchoredDrawing) SetSize

func (a AnchoredDrawing) SetSize(w, h measurement.Distance)

SetSize sets the size of the displayed image on the page.

func (AnchoredDrawing) SetTextWrapNone

func (a AnchoredDrawing) SetTextWrapNone()

SetTextWrapNone unsets text wrapping so the image can float on top of the text. When used in conjunction with X/Y Offset relative to the page it can be used to place a logo at the top of a page at an absolute position that doesn't interfere with text.

func (AnchoredDrawing) SetTextWrapSquare

func (a AnchoredDrawing) SetTextWrapSquare(t wml.WdST_WrapText)

SetTextWrapSquare sets the text wrap to square with a given wrap type.

func (AnchoredDrawing) SetVAlignment

func (a AnchoredDrawing) SetVAlignment(v wml.WdST_AlignV)

SetVAlignment sets the vertical alignment for an anchored image.

func (AnchoredDrawing) SetXOffset

func (a AnchoredDrawing) SetXOffset(x measurement.Distance)

SetXOffset sets the X offset for an image relative to the origin.

func (AnchoredDrawing) SetYOffset

func (a AnchoredDrawing) SetYOffset(y measurement.Distance)

SetYOffset sets the Y offset for an image relative to the origin.

func (AnchoredDrawing) X

func (a AnchoredDrawing) X() *wml.WdAnchor

X returns the inner wrapped XML type.

type Cell

type Cell struct {
	// contains filtered or unexported fields
}

Cell is a table cell within a document (not a spreadsheet)

func (Cell) AddParagraph

func (c Cell) AddParagraph() Paragraph

AddParagraph adds a paragraph to the table cell.

func (Cell) Properties

func (c Cell) Properties() CellProperties

Properties returns the cell properties.

func (Cell) X

func (c Cell) X() *wml.CT_Tc

X returns the inner wrapped XML type.

type CellProperties

type CellProperties struct {
	// contains filtered or unexported fields
}

CellProperties are a table cells properties within a document.

func (CellProperties) SetColumnSpan

func (c CellProperties) SetColumnSpan(cols int)

SetColumnSpan sets the number of Grid Columns Spanned by the Cell

func (CellProperties) X

func (c CellProperties) X() *wml.CT_TcPr

X returns the inner wrapped XML type.

type Color

type Color struct {
	// contains filtered or unexported fields
}

Color controls the run or styles color.

func (Color) SetColor

func (c Color) SetColor(v color.Color)

SetColor sets a specific color or auto.

func (Color) SetThemeColor

func (c Color) SetThemeColor(t wml.ST_ThemeColor)

SetThemeColor sets the color from the theme.

func (Color) SetThemeShade

func (c Color) SetThemeShade(s uint8)

SetThemeShade sets the shade based off the theme color.

func (Color) X

func (c Color) X() *wml.CT_Color

X returns the inner wrapped XML type.

type Document

type Document struct {
	common.DocBase

	Settings  Settings  // document settings
	Numbering Numbering // numbering styles within the doucment
	Styles    Styles    // styles that are use and can be used within the document
	// contains filtered or unexported fields
}

Document is a text document that can be written out in the OOXML .docx format. It can be opened from a file on disk and modified, or created from scratch.

func New

func New() *Document

New constructs an empty document that content can be added to.

Example
package main

import (
	"baliance.com/gooxml/document"
)

func main() {
	doc := document.New()
	doc.AddParagraph().AddRun().AddText("Hello World!")
	doc.SaveToFile("document.docx")
}
Output:

func Open

func Open(filename string) (*Document, error)

Open opens and reads a document from a file (.docx).

Example
package main

import (
	"fmt"
	"log"

	"baliance.com/gooxml/document"
)

func main() {
	doc, err := document.Open("existing.docx")
	if err != nil {
		log.Fatalf("error opening document: %s", err)
	}
	for _, para := range doc.Paragraphs() {
		for _, run := range para.Runs() {
			fmt.Print(run.Text())
		}
		fmt.Println()
	}
}
Output:

func OpenTemplate

func OpenTemplate(filename string) (*Document, error)

OpenTemplate opens a document, removing all content so it can be used as a template. Since Word removes unused styles from a document upon save, to create a template in Word add a paragraph with every style of interest. When opened with OpenTemplate the document's styles will be available but the content will be gone.

Example
package main

import (
	"log"

	"baliance.com/gooxml/document"
)

func main() {
	doc, err := document.OpenTemplate("existing.docx")
	if err != nil {
		log.Fatalf("error opening document template: %s", err)
	}
	para := doc.AddParagraph()
	para.SetStyle("Title")
	para.AddRun().AddText("My Document Title")

	para = doc.AddParagraph()
	para.SetStyle("Subtitle")
	para.AddRun().AddText("Document Subtitle")

	para = doc.AddParagraph()
	para.SetStyle("Heading1")
	para.AddRun().AddText("Major Section")
	doc.SaveToFile("ouput.docx")
}
Output:

func Read

func Read(r io.ReaderAt, size int64) (*Document, error)

Read reads a document from an io.Reader.

func (*Document) AddFooter

func (d *Document) AddFooter() Footer

AddFooter creates a Footer associated with the document, but doesn't add it to the document for display.

func (*Document) AddHeader

func (d *Document) AddHeader() Header

AddHeader creates a header associated with the document, but doesn't add it to the document for display.

func (*Document) AddImage

func (d *Document) AddImage(i common.Image) (common.ImageRef, error)

AddImage adds an image to the document package, returning a reference that can be used to add the image to a run and place it in the document contents.

func (*Document) AddParagraph

func (d *Document) AddParagraph() Paragraph

AddParagraph adds a new paragraph to the document body.

func (*Document) AddTable

func (d *Document) AddTable() Table

AddTable adds a new table to the document body.

func (*Document) BodySection

func (d *Document) BodySection() Section

BodySection returns the default body section used for all preceding paragraphs until the previous Section. If there is no previous sections, the body section applies to the entire document.

func (*Document) FormFields

func (d *Document) FormFields() []FormField

FormFields extracts all of the fields from a document. They can then be manipulated via the methods on the field and the document saved.

Example
package main

import (
	"log"

	"baliance.com/gooxml/document"
)

func main() {
	doc, err := document.Open("invitation.docx")
	if err != nil {
		log.Fatalf("error opening document form: %s", err)
	}
	for _, field := range doc.FormFields() {
		switch field.Name() {
		case "attendingEvent":
			if field.Type() == document.FormFieldTypeCheckBox {
				field.SetChecked(true)
			}
		case "name":
			if field.Type() == document.FormFieldTypeText {
				field.SetValue("John Smith")
			}
		}
	}
	doc.SaveToFile("invitation-respoonse.docx")
}
Output:

func (*Document) GetImageByRelID

func (d *Document) GetImageByRelID(relID string) (common.ImageRef, bool)

GetImageByRelID returns an ImageRef with the associated relation ID in the document.

func (*Document) InsertParagraphAfter added in v0.4.0

func (d *Document) InsertParagraphAfter(relativeTo Paragraph) Paragraph

InsertParagraphAfter adds a new empty paragraph after the relativeTo paragraph.

func (*Document) InsertParagraphBefore added in v0.4.0

func (d *Document) InsertParagraphBefore(relativeTo Paragraph) Paragraph

InsertParagraphBefore adds a new empty paragraph before the relativeTo paragraph.

func (*Document) Paragraphs

func (d *Document) Paragraphs() []Paragraph

Paragraphs returns all of the paragraphs in the document body.

func (*Document) Save

func (d *Document) Save(w io.Writer) error

Save writes the document to an io.Writer in the Zip package format.

func (*Document) SaveToFile

func (d *Document) SaveToFile(path string) error

SaveToFile writes the document out to a file.

func (*Document) StructuredDocumentTags added in v0.4.0

func (d *Document) StructuredDocumentTags() []StructuredDocumentTag

StructuredDocumentTags returns the structured document tags in the document which are commonly used in document templates.

func (*Document) Validate

func (d *Document) Validate() error

Validate validates the structure and in cases where it't possible, the ranges of elements within a document. A validation error dones't mean that the document won't work in MS Word or LibreOffice, but it's worth checking into.

func (*Document) X

func (d *Document) X() *wml.Document

X returns the inner wrapped XML type.

type Fonts

type Fonts struct {
	// contains filtered or unexported fields
}

Fonts allows manipulating a style or run's fonts.

func (Fonts) SetASCIITheme

func (f Fonts) SetASCIITheme(t wml.ST_Theme)

SetASCIITheme sets the font ASCII Theme.

func (Fonts) SetCSTheme

func (f Fonts) SetCSTheme(t wml.ST_Theme)

SetCSTheme sets the font complex script theme.

func (Fonts) SetEastAsiaTheme

func (f Fonts) SetEastAsiaTheme(t wml.ST_Theme)

SetEastAsiaTheme sets the font East Asia Theme.

func (Fonts) SetHANSITheme

func (f Fonts) SetHANSITheme(t wml.ST_Theme)

SetHANSITheme sets the font H ANSI Theme.

func (Fonts) X

func (f Fonts) X() *wml.CT_Fonts

X returns the inner wrapped XML type.

type Footer struct {
	// contains filtered or unexported fields
}

Footer is a footer for a document section.

func (Footer) AddParagraph

func (h Footer) AddParagraph() Paragraph

AddParagraph adds a paragraph to the footer.

func (Footer) Index

func (h Footer) Index() int

Index returns the index of the footer within the document. This is used to form its zip packaged filename as well as to match it with its relationship ID.

func (Footer) X

func (h Footer) X() *wml.Ftr

X returns the inner wrapped XML type.

type FormField

type FormField struct {
	// contains filtered or unexported fields
}

FormField is a form within a document. It references the document, so changes to the form field wil be reflected in the document if it is saved.

func (FormField) IsChecked

func (f FormField) IsChecked() bool

IsChecked returns true if a FormFieldTypeCheckBox is checked.

func (FormField) Name

func (f FormField) Name() string

Name returns the name of the field.

func (FormField) PossibleValues

func (f FormField) PossibleValues() []string

PossibleValues returns the possible values for a FormFieldTypeDropDown.

func (FormField) SetChecked

func (f FormField) SetChecked(b bool)

SetChecked marks a FormFieldTypeCheckBox as checked or unchecked.

func (FormField) SetValue

func (f FormField) SetValue(v string)

SetValue sets the value of a FormFieldTypeText or FormFieldTypeDropDown. For FormFieldTypeDropDown, the value must be one of the fields possible values.

func (FormField) Type

func (f FormField) Type() FormFieldType

Type returns the type of the field.

func (FormField) Value

func (f FormField) Value() string

Value returns the tring value of a FormFieldTypeText or FormFieldTypeDropDown.

type FormFieldType

type FormFieldType byte

FormFieldType is the type of the form field.

const (
	FormFieldTypeUnknown FormFieldType = iota
	FormFieldTypeText
	FormFieldTypeCheckBox
	FormFieldTypeDropDown
)

Form Field Type constants

func (FormFieldType) String

func (i FormFieldType) String() string
type Header struct {
	// contains filtered or unexported fields
}

Header is a header for a document section.

func (Header) AddParagraph

func (h Header) AddParagraph() Paragraph

AddParagraph adds a paragraph to the header.

func (Header) Index

func (h Header) Index() int

Index returns the index of the header within the document. This is used to form its zip packaged filename as well as to match it with its relationship ID.

func (Header) X

func (h Header) X() *wml.Hdr

X returns the inner wrapped XML type.

type Numbering

type Numbering struct {
	// contains filtered or unexported fields
}

Numbering is the document wide numbering styles contained in numbering.xml.

func NewNumbering

func NewNumbering() Numbering

NewNumbering constructs a new numbering.

func (Numbering) Clear

func (n Numbering) Clear()

Clear resets the numbering.

func (Numbering) InitializeDefault

func (n Numbering) InitializeDefault()

InitializeDefault constructs a default numbering.

func (Numbering) X

func (n Numbering) X() *wml.Numbering

X returns the inner wrapped XML type.

type Paragraph

type Paragraph struct {
	// contains filtered or unexported fields
}

Paragraph is a paragraph within a document.

func (Paragraph) AddRun

func (p Paragraph) AddRun() Run

AddRun adds a run to a paragraph.

func (Paragraph) InsertRunAfter added in v0.4.0

func (p Paragraph) InsertRunAfter(relativeTo Run) Run

InsertRunAfter inserts a run in the paragraph after the relative run.

func (Paragraph) InsertRunBefore added in v0.4.0

func (p Paragraph) InsertRunBefore(relativeTo Run) Run

InsertRunBefore inserts a run in the paragraph before the relative run.

func (Paragraph) Properties

func (p Paragraph) Properties() ParagraphProperties

Properties returns the paragraph properties.

func (Paragraph) Remove added in v0.4.0

func (p Paragraph) Remove()

Remove removes the paragraph from its parent element, effectively deleting it from a document.

func (Paragraph) Runs

func (p Paragraph) Runs() []Run

Runs returns all of the runs in a paragraph.

func (Paragraph) SetStyle

func (p Paragraph) SetStyle(s string)

SetStyle sets the style of a paragraph and is identical to setting it on the paragraph's Properties()

func (Paragraph) Style

func (p Paragraph) Style() string

Style returns the style for a paragraph, or an empty string if it is unset.

func (Paragraph) X

func (p Paragraph) X() *wml.CT_P

X returns the inner wrapped XML type.

type ParagraphProperties

type ParagraphProperties struct {
	// contains filtered or unexported fields
}

ParagraphProperties are the properties for a paragraph.

func (ParagraphProperties) AddSection

AddSection adds a new document section with an optional section break. If t is ST_SectionMarkUnset, then no break will be inserted.

func (ParagraphProperties) AddTabStop

func (p ParagraphProperties) AddTabStop(position measurement.Distance, justificaton wml.ST_TabJc, leader wml.ST_TabTlc)

AddTabStop adds a tab stop to the paragraph. It controls the position of text when using Run.AddTab()

func (ParagraphProperties) SetHeadingLevel

func (p ParagraphProperties) SetHeadingLevel(idx int)

SetHeadingLevel sets a heading level and style based on the level to a paragraph. The default styles for a new gooxml document support headings from level 1 to 8.

func (ParagraphProperties) SetKeepOnOnePage

func (p ParagraphProperties) SetKeepOnOnePage(b bool)

SetKeepOnOnePage controls if all lines in a paragraph are kept on the same page.

func (ParagraphProperties) SetKeepWithNext

func (p ParagraphProperties) SetKeepWithNext(b bool)

SetKeepWithNext controls if this paragraph should be kept with the next.

func (ParagraphProperties) SetPageBreakBefore

func (p ParagraphProperties) SetPageBreakBefore(b bool)

SetPageBreakBefore controls if there is a page break before this paragraph.

func (ParagraphProperties) SetSpacing

func (p ParagraphProperties) SetSpacing(before, after measurement.Distance)

SetSpacing sets the spacing that comes before and after the paragraph.

func (ParagraphProperties) SetStyle

func (p ParagraphProperties) SetStyle(s string)

SetStyle sets the style of a paragraph.

func (ParagraphProperties) SetWindowControl

func (p ParagraphProperties) SetWindowControl(b bool)

SetWindowControl controls if the first or last line of the paragraph is allowed to dispay on a separate page.

func (ParagraphProperties) Style

func (p ParagraphProperties) Style() string

Style returns the style for a paragraph, or an empty string if it is unset.

func (ParagraphProperties) X

X returns the inner wrapped XML type.

type ParagraphStyleProperties

type ParagraphStyleProperties struct {
	// contains filtered or unexported fields
}

ParagraphStyleProperties is the styling information for a paragraph.

func (ParagraphStyleProperties) AddTabStop

func (p ParagraphStyleProperties) AddTabStop(position measurement.Distance, justificaton wml.ST_TabJc, leader wml.ST_TabTlc)

AddTabStop adds a tab stop to the paragraph.

func (ParagraphStyleProperties) SetContextualSpacing

func (p ParagraphStyleProperties) SetContextualSpacing(b bool)

SetContextualSpacing controls whether to Ignore Spacing Above and Below When Using Identical Styles

func (ParagraphStyleProperties) SetKeepNext

func (p ParagraphStyleProperties) SetKeepNext(b bool)

SetKeepNext controls if the paragraph is kept with the next paragraph.

func (ParagraphStyleProperties) SetKeepOnOnePage

func (p ParagraphStyleProperties) SetKeepOnOnePage(b bool)

SetKeepOnOnePage controls if all lines in a paragraph are kept on the same page.

func (ParagraphStyleProperties) SetOutlineLevel

func (p ParagraphStyleProperties) SetOutlineLevel(lvl int)

SetOutlineLevel sets the outline level of this style.

func (ParagraphStyleProperties) SetSpacing

func (p ParagraphStyleProperties) SetSpacing(before, after measurement.Distance)

SetSpacing sets the spacing that comes before and after the paragraph.

func (ParagraphStyleProperties) X

X returns the inner wrapped XML type.

type Row

type Row struct {
	// contains filtered or unexported fields
}

Row is a row within a table within a document.

func (Row) AddCell

func (r Row) AddCell() Cell

AddCell adds a cell to a row and returns it

func (Row) X

func (r Row) X() *wml.CT_Row

X returns the inner wrapped XML type.

type Run

type Run struct {
	// contains filtered or unexported fields
}

Run is a run of text within a paragraph that shares the same formatting.

func (Run) AddBreak

func (r Run) AddBreak()

AddBreak adds a line break to a run.

func (Run) AddDrawingAnchored

func (r Run) AddDrawingAnchored(img common.ImageRef) (AnchoredDrawing, error)

AddDrawingAnchored adds an anchored (floating) drawing from an ImageRef.

func (Run) AddField

func (r Run) AddField(code string)

AddField adds a field (automatically computed text) to the document.

func (Run) AddFieldWithFormatting

func (r Run) AddFieldWithFormatting(code string, fmt string)

AddFieldWithFormatting adds a field (automatically computed text) to the document with field specifc formatting.

func (Run) AddTab

func (r Run) AddTab()

AddTab adds tab to a run and can be used with the the Paragraph's tab stops.

func (Run) AddText

func (r Run) AddText(s string)

AddText adds tet to a run.

func (Run) ClearColor

func (r Run) ClearColor()

ClearColor clears the text color.

func (Run) ClearContent added in v0.4.0

func (r Run) ClearContent()

ClearContent clears any content in the run (text, tabs, breaks, etc.)

func (Run) DrawingAnchored

func (r Run) DrawingAnchored() []AnchoredDrawing

DrawingAnchored returns a slice of AnchoredDrawings.

func (Run) IsBold

func (r Run) IsBold() bool

IsBold returns true if the run has been set to bold.

func (Run) IsItalic

func (r Run) IsItalic() bool

IsItalic returns true if the run was set to bold.

func (Run) Remove added in v0.4.0

func (r Run) Remove()

Remove removes the run from its parent paragraph. This effectively deletes it from a document.

func (Run) SetAllCaps

func (r Run) SetAllCaps(b bool)

SetAllCaps sets the run to all caps.

func (Run) SetBold

func (r Run) SetBold(b bool)

SetBold sets the run to bold.

func (Run) SetColor

func (r Run) SetColor(c color.Color)

SetColor sets the text color.

func (Run) SetDoubleStrikeThrough

func (r Run) SetDoubleStrikeThrough(b bool)

SetDoubleStrikeThrough sets the run to double strike-through.

func (Run) SetEffect

func (r Run) SetEffect(e wml.ST_TextEffect)

SetEffect sets a text effect on the run.

func (Run) SetEmboss

func (r Run) SetEmboss(b bool)

SetEmboss sets the run to embossed text.

func (Run) SetFontFamily

func (r Run) SetFontFamily(family string)

SetFontFamily sets the Ascii & HAnsi fonly family for a run.

func (Run) SetFontSize

func (r Run) SetFontSize(sz measurement.Distance)

SetFontSize sets the font size.

func (Run) SetHighlight

func (r Run) SetHighlight(c wml.ST_HighlightColor)

SetHighlight highlights text in a specified color.

func (Run) SetImprint

func (r Run) SetImprint(b bool)

SetImprint sets the run to imprinted text.

func (Run) SetItalic

func (r Run) SetItalic(b bool)

SetItalic sets the run to italic.

func (Run) SetOutline

func (r Run) SetOutline(b bool)

SetOutline sets the run to outlined text.

func (Run) SetShadow

func (r Run) SetShadow(b bool)

SetShadow sets the run to shadowed text.

func (Run) SetSmallCaps

func (r Run) SetSmallCaps(b bool)

SetSmallCaps sets the run to small caps.

func (Run) SetStrikeThrough

func (r Run) SetStrikeThrough(b bool)

SetStrikeThrough sets the run to strike-through.

func (Run) SetUnderline

func (r Run) SetUnderline(style wml.ST_Underline, c color.Color)

SetUnderline sets the run to underline with a particular style and color.

func (Run) Text

func (r Run) Text() string

Text returns the underlying tet in the run.

func (Run) X

func (r Run) X() *wml.CT_R

X returns the inner wrapped XML type.

type RunStyleProperties

type RunStyleProperties struct {
	// contains filtered or unexported fields
}

RunStyleProperties controls run styling properties

func (RunStyleProperties) Color

func (r RunStyleProperties) Color() Color

Color returns the style's Color.

func (RunStyleProperties) Fonts

func (r RunStyleProperties) Fonts() Fonts

Fonts returns the style's Fonts.

func (RunStyleProperties) SetCharacterSpacing

func (r RunStyleProperties) SetCharacterSpacing(size measurement.Distance)

SetCharacterSpacing sets the run's Character Spacing Adjustment.

func (RunStyleProperties) SetKerning

func (r RunStyleProperties) SetKerning(size measurement.Distance)

SetKerning sets the run's font kerning.

func (RunStyleProperties) SetSize

func (r RunStyleProperties) SetSize(size measurement.Distance)

SetSize sets the font size for a run.

func (RunStyleProperties) X

func (r RunStyleProperties) X() *wml.CT_RPr

X returns the inner wrapped XML type.

type Section

type Section struct {
	// contains filtered or unexported fields
}

Section is the beginning of a new section.

func (Section) SetFooter

func (s Section) SetFooter(f Footer, t wml.ST_HdrFtr)

SetFooter sets a section footer.

func (Section) SetHeader

func (s Section) SetHeader(h Header, t wml.ST_HdrFtr)

SetHeader sets a section header.

func (Section) X

func (s Section) X() *wml.CT_SectPr

X returns the internally wrapped *wml.CT_SectPr.

type Settings

type Settings struct {
	// contains filtered or unexported fields
}

Settings controls the document settings.

func NewSettings

func NewSettings() Settings

NewSettings constructs a new empty Settings

func (Settings) SetUpdateFieldsOnOpen

func (s Settings) SetUpdateFieldsOnOpen(b bool)

SetUpdateFieldsOnOpen controls if fields are recalculated upon opening the document. This is useful for things like a table of contents as the library only adds the field code and relies on Word/LibreOffice to actually compute the content.

func (Settings) X

func (s Settings) X() *wml.Settings

X returns the inner wrapped XML type.

type StructuredDocumentTag added in v0.4.0

type StructuredDocumentTag struct {
	// contains filtered or unexported fields
}

StructuredDocumentTag are a tagged bit of content in a document.

func (StructuredDocumentTag) Paragraphs added in v0.4.0

func (s StructuredDocumentTag) Paragraphs() []Paragraph

Paragraphs returns the paragraphs within a structured document tag.

type Style

type Style struct {
	// contains filtered or unexported fields
}

Style is a style within the styles.xml file.

func (Style) Name

func (s Style) Name() string

Name returns the name of the style if set.

func (Style) ParagraphProperties

func (s Style) ParagraphProperties() ParagraphStyleProperties

ParagraphProperties returns the paragraph style properties.

func (Style) RunProperties

func (s Style) RunProperties() RunStyleProperties

RunProperties returns the run style.

func (Style) SetBasedOn

func (s Style) SetBasedOn(name string)

SetBasedOn sets the style that this style is based on.

func (Style) SetLinkedStyle

func (s Style) SetLinkedStyle(name string)

SetLinkedStyle sets the style that this style is linked to.

func (Style) SetName

func (s Style) SetName(name string)

SetName sets the name of the style.

func (Style) SetNextStyle

func (s Style) SetNextStyle(name string)

SetNextStyle sets the style that the next paragraph will use.

func (Style) SetPrimaryStyle

func (s Style) SetPrimaryStyle(b bool)

SetPrimaryStyle marks the style as a primary style.

func (Style) SetSemiHidden

func (s Style) SetSemiHidden(b bool)

SetSemiHidden controls if the style is hidden in the UI.

func (Style) SetUISortOrder

func (s Style) SetUISortOrder(order int)

SetUISortOrder controls the order the style is displayed in the UI.

func (Style) SetUnhideWhenUsed

func (s Style) SetUnhideWhenUsed(b bool)

SetUnhideWhenUsed controls if a semi hidden style becomes visible when used.

func (Style) StyleID

func (s Style) StyleID() string

StyleID returns the style ID.

func (Style) Type

func (s Style) Type() wml.ST_StyleType

Type returns the type of the style.

func (Style) X

func (s Style) X() *wml.CT_Style

X returns the inner wrapped XML type.

type Styles

type Styles struct {
	// contains filtered or unexported fields
}

Styles is the document wide styles contained in styles.xml.

func NewStyles

func NewStyles() Styles

NewStyles constructs a new empty Styles

func (Styles) AddStyle

func (s Styles) AddStyle(styleID string, t wml.ST_StyleType, isDefault bool) Style

AddStyle adds a new empty style.

func (Styles) Clear

func (s Styles) Clear()

Clear clears the styes.

func (Styles) InitializeDefault

func (s Styles) InitializeDefault()

InitializeDefault constructs the default styles.

func (Styles) ParagraphStyles

func (s Styles) ParagraphStyles() []Style

ParagraphStyles returns only the paragraph styles.

func (Styles) Styles

func (s Styles) Styles() []Style

Styles returns all styles.

func (Styles) X

func (s Styles) X() *wml.Styles

X returns the inner wrapped XML type.

type Table

type Table struct {
	// contains filtered or unexported fields
}

Table is a table within a document.

func (Table) AddRow

func (t Table) AddRow() Row

AddRow adds a row to a table.

func (Table) Properties

func (t Table) Properties() TableProperties

Properties returns the table properties.

func (Table) X

func (t Table) X() *wml.CT_Tbl

X returns the inner wrapped XML type.

type TableBorders

type TableBorders struct {
	// contains filtered or unexported fields
}

TableBorders allows manipulation of borders on a table.

func (TableBorders) SetAll

func (b TableBorders) SetAll(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetAll sets all of the borders to a given value.

func (TableBorders) SetBottom

func (b TableBorders) SetBottom(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetBottom sets the bottom border to a specified type, color and thickness.

func (TableBorders) SetInsideHorizontal

func (b TableBorders) SetInsideHorizontal(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetInsideHorizontal sets the interior horizontal borders to a specified type, color and thickness.

func (TableBorders) SetInsideVertical

func (b TableBorders) SetInsideVertical(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetInsideVertical sets the interior vertical borders to a specified type, color and thickness.

func (TableBorders) SetLeft

func (b TableBorders) SetLeft(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetLeft sets the left border to a specified type, color and thickness.

func (TableBorders) SetRight

func (b TableBorders) SetRight(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetRight sets the right border to a specified type, color and thickness.

func (TableBorders) SetTop

func (b TableBorders) SetTop(t wml.ST_Border, c color.Color, thickness measurement.Distance)

SetTop sets the top border to a specified type, color and thickness.

func (TableBorders) X

X returns the inner wml.CT_TblBorders

type TableProperties

type TableProperties struct {
	// contains filtered or unexported fields
}

TableProperties are the properties for a table within a document

func (TableProperties) Borders

func (t TableProperties) Borders() TableBorders

Borders allows manipulation of the table borders.

func (TableProperties) SetCellSpacing

func (t TableProperties) SetCellSpacing(m measurement.Distance)

SetCellSpacing sets the cell spacing within a table.

func (TableProperties) SetCellSpacingAuto

func (t TableProperties) SetCellSpacingAuto()

SetCellSpacingAuto sets the cell spacing within a table to automatic.

func (TableProperties) SetCellSpacingPercent

func (t TableProperties) SetCellSpacingPercent(pct float64)

SetCellSpacingPercent sets the cell spacing within a table to a percent width.

func (TableProperties) SetWidth

func (t TableProperties) SetWidth(d measurement.Distance)

SetWidth sets the table with to a specified width.

func (TableProperties) SetWidthAuto

func (t TableProperties) SetWidthAuto()

SetWidthAuto sets the the table width to automatic.

func (TableProperties) SetWidthPercent

func (t TableProperties) SetWidthPercent(pct float64)

SetWidthPercent sets the table to a width percentage.

func (TableProperties) X

func (t TableProperties) X() *wml.CT_TblPr

X returns the inner wrapped XML type.

type TableWidth

type TableWidth struct {
	// contains filtered or unexported fields
}

TableWidth controls width values in table settings.

func NewTableWidth

func NewTableWidth() TableWidth

NewTableWidth returns a newly intialized TableWidth

func (TableWidth) SetValue

func (s TableWidth) SetValue(m measurement.Distance)

SetValue sets the width value.

func (TableWidth) X

func (s TableWidth) X() *wml.CT_TblWidth

X returns the inner wrapped XML type.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL