1234567891011121314151617181920212223242526272829303132333435 |
- package gofpdf
- // Adapted from http://www.fpdf.org/en/script/script61.php by Wirus and released with the FPDF license.
- // SubWrite prints text from the current position in the same way as Write().
- // ht is the line height in the unit of measure specified in New(). str
- // specifies the text to write. subFontSize is the size of the font in points.
- // subOffset is the vertical offset of the text in points; a positive value
- // indicates a superscript, a negative value indicates a subscript. link is the
- // identifier returned by AddLink() or 0 for no internal link. linkStr is a
- // target URL or empty for no external link. A non--zero value for link takes
- // precedence over linkStr.
- //
- // The SubWrite example demonstrates this method.
- func (f *Fpdf) SubWrite(ht float64, str string, subFontSize, subOffset float64, link int, linkStr string) {
- if f.err != nil {
- return
- }
- // resize font
- subFontSizeOld := f.fontSizePt
- f.SetFontSize(subFontSize)
- // reposition y
- subOffset = (((subFontSize - subFontSizeOld) / f.k) * 0.3) + (subOffset / f.k)
- subX := f.x
- subY := f.y
- f.SetXY(subX, subY-subOffset)
- //Output text
- f.write(ht, str, link, linkStr)
- // restore y position
- subX = f.x
- subY = f.y
- f.SetXY(subX, subY+subOffset)
- // restore font size
- f.SetFontSize(subFontSizeOld)
- }
|