[{"data":1,"prerenderedAt":1674},["ShallowReactive",2],{"docs-en-api-reference/document":3},{"id":4,"title":5,"body":6,"description":1667,"extension":1668,"meta":1669,"navigation":889,"path":1670,"seo":1671,"stem":1672,"__hash__":1673},"docs/docs/3.api-reference/2.document.md","Document Model",{"type":7,"value":8,"toc":1638},"minimark",[9,14,23,52,56,216,221,261,265,269,272,308,312,431,521,525,588,598,602,606,649,653,677,680,711,715,817,821,826,1033,1036,1083,1086,1125,1129,1192,1195,1199,1237,1240,1266,1270,1325,1391,1395,1399,1452,1456,1488,1492,1495,1557,1560,1564,1635],[10,11,13],"h2",{"id":12},"overview","Overview",[15,16,17,18,22],"p",{},"The ",[19,20,21],"code",{},"document"," package (Layer 2) provides types for page sizes, units, styles, and the document node tree. Most users interact with these types for configuration rather than direct tree manipulation.",[24,25,30],"pre",{"className":26,"code":27,"language":28,"meta":29,"style":29},"language-go shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import \"github.com/gpdf-dev/gpdf/document\"\n","go","",[19,31,32],{"__ignoreMap":29},[33,34,37,41,45,49],"span",{"class":35,"line":36},"line",1,[33,38,40],{"class":39},"s7zQu","import",[33,42,44],{"class":43},"sMK4o"," \"",[33,46,48],{"class":47},"sBMFI","github.com/gpdf-dev/gpdf/document",[33,50,51],{"class":43},"\"\n",[10,53,55],{"id":54},"page-sizes","Page Sizes",[24,57,59],{"className":26,"code":58,"language":28,"meta":29,"style":29},"var (\n    A4     = Size{Width: 595.28, Height: 841.89}   // 210mm x 297mm\n    A3     = Size{Width: 841.89, Height: 1190.55}   // 297mm x 420mm\n    Letter = Size{Width: 612, Height: 792}           // 8.5\" x 11\"\n    Legal  = Size{Width: 612, Height: 1008}          // 8.5\" x 14\"\n)\n",[19,60,61,69,113,145,178,210],{"__ignoreMap":29},[33,62,63,66],{"class":35,"line":36},[33,64,65],{"class":43},"var",[33,67,68],{"class":43}," (\n",[33,70,72,76,79,82,85,88,91,95,98,101,103,106,109],{"class":35,"line":71},2,[33,73,75],{"class":74},"sTEyZ","    A4     ",[33,77,78],{"class":43},"=",[33,80,81],{"class":47}," Size",[33,83,84],{"class":43},"{",[33,86,87],{"class":74},"Width",[33,89,90],{"class":43},":",[33,92,94],{"class":93},"sbssI"," 595.28",[33,96,97],{"class":43},",",[33,99,100],{"class":74}," Height",[33,102,90],{"class":43},[33,104,105],{"class":93}," 841.89",[33,107,108],{"class":43},"}",[33,110,112],{"class":111},"sHwdD","   // 210mm x 297mm\n",[33,114,116,119,121,123,125,127,129,131,133,135,137,140,142],{"class":35,"line":115},3,[33,117,118],{"class":74},"    A3     ",[33,120,78],{"class":43},[33,122,81],{"class":47},[33,124,84],{"class":43},[33,126,87],{"class":74},[33,128,90],{"class":43},[33,130,105],{"class":93},[33,132,97],{"class":43},[33,134,100],{"class":74},[33,136,90],{"class":43},[33,138,139],{"class":93}," 1190.55",[33,141,108],{"class":43},[33,143,144],{"class":111},"   // 297mm x 420mm\n",[33,146,148,151,153,155,157,159,161,164,166,168,170,173,175],{"class":35,"line":147},4,[33,149,150],{"class":74},"    Letter ",[33,152,78],{"class":43},[33,154,81],{"class":47},[33,156,84],{"class":43},[33,158,87],{"class":74},[33,160,90],{"class":43},[33,162,163],{"class":93}," 612",[33,165,97],{"class":43},[33,167,100],{"class":74},[33,169,90],{"class":43},[33,171,172],{"class":93}," 792",[33,174,108],{"class":43},[33,176,177],{"class":111},"           // 8.5\" x 11\"\n",[33,179,181,184,186,188,190,192,194,196,198,200,202,205,207],{"class":35,"line":180},5,[33,182,183],{"class":74},"    Legal  ",[33,185,78],{"class":43},[33,187,81],{"class":47},[33,189,84],{"class":43},[33,191,87],{"class":74},[33,193,90],{"class":43},[33,195,163],{"class":93},[33,197,97],{"class":43},[33,199,100],{"class":74},[33,201,90],{"class":43},[33,203,204],{"class":93}," 1008",[33,206,108],{"class":43},[33,208,209],{"class":111},"          // 8.5\" x 14\"\n",[33,211,213],{"class":35,"line":212},6,[33,214,215],{"class":43},")\n",[217,218,220],"h3",{"id":219},"size","Size",[24,222,224],{"className":26,"code":223,"language":28,"meta":29,"style":29},"type Size struct {\n    Width, Height float64  // in points (1pt = 1/72 inch)\n}\n",[19,225,226,239,256],{"__ignoreMap":29},[33,227,228,231,233,236],{"class":35,"line":36},[33,229,230],{"class":43},"type",[33,232,81],{"class":47},[33,234,235],{"class":43}," struct",[33,237,238],{"class":43}," {\n",[33,240,241,244,246,249,253],{"class":35,"line":71},[33,242,243],{"class":74},"    Width",[33,245,97],{"class":43},[33,247,248],{"class":74}," Height ",[33,250,252],{"class":251},"spNyl","float64",[33,254,255],{"class":111},"  // in points (1pt = 1/72 inch)\n",[33,257,258],{"class":35,"line":115},[33,259,260],{"class":43},"}\n",[10,262,264],{"id":263},"units-and-values","Units and Values",[217,266,268],{"id":267},"value","Value",[15,270,271],{},"A dimension with a unit:",[24,273,275],{"className":26,"code":274,"language":28,"meta":29,"style":29},"type Value struct {\n    Amount float64\n    Unit   Unit\n}\n",[19,276,277,288,296,304],{"__ignoreMap":29},[33,278,279,281,284,286],{"class":35,"line":36},[33,280,230],{"class":43},[33,282,283],{"class":47}," Value",[33,285,235],{"class":43},[33,287,238],{"class":43},[33,289,290,293],{"class":35,"line":71},[33,291,292],{"class":74},"    Amount ",[33,294,295],{"class":251},"float64\n",[33,297,298,301],{"class":35,"line":115},[33,299,300],{"class":74},"    Unit   ",[33,302,303],{"class":47},"Unit\n",[33,305,306],{"class":35,"line":147},[33,307,260],{"class":43},[217,309,311],{"id":310},"unit-constructors","Unit Constructors",[313,314,315,331],"table",{},[316,317,318],"thead",{},[319,320,321,325,328],"tr",{},[322,323,324],"th",{},"Function",[322,326,327],{},"Unit",[322,329,330],{},"Example",[332,333,334,351,367,383,399,415],"tbody",{},[319,335,336,342,345],{},[337,338,339],"td",{},[19,340,341],{},"Pt(v)",[337,343,344],{},"Points (1/72 inch)",[337,346,347,350],{},[19,348,349],{},"Pt(12)"," — native PDF unit",[319,352,353,358,361],{},[337,354,355],{},[19,356,357],{},"Mm(v)",[337,359,360],{},"Millimeters",[337,362,363,366],{},[19,364,365],{},"Mm(20)"," — 20mm margin",[319,368,369,374,377],{},[337,370,371],{},[19,372,373],{},"Cm(v)",[337,375,376],{},"Centimeters",[337,378,379,382],{},[19,380,381],{},"Cm(2.5)"," — 2.5cm",[319,384,385,390,393],{},[337,386,387],{},[19,388,389],{},"In(v)",[337,391,392],{},"Inches",[337,394,395,398],{},[19,396,397],{},"In(1)"," — 1 inch",[319,400,401,406,409],{},[337,402,403],{},[19,404,405],{},"Em(v)",[337,407,408],{},"Relative to font size",[337,410,411,414],{},[19,412,413],{},"Em(2)"," — 2x font size",[319,416,417,422,425],{},[337,418,419],{},[19,420,421],{},"Pct(v)",[337,423,424],{},"Percentage of parent",[337,426,427,430],{},[19,428,429],{},"Pct(50)"," — 50%",[24,432,434],{"className":26,"code":433,"language":28,"meta":29,"style":29},"// Usage examples\ndocument.Mm(20)   // 20 millimeters\ndocument.Pt(12)   // 12 points\ndocument.In(0.5)  // half inch\ndocument.Pct(50)  // 50% of parent\n",[19,435,436,441,464,483,502],{"__ignoreMap":29},[33,437,438],{"class":35,"line":36},[33,439,440],{"class":111},"// Usage examples\n",[33,442,443,445,448,452,455,458,461],{"class":35,"line":71},[33,444,21],{"class":74},[33,446,447],{"class":43},".",[33,449,451],{"class":450},"s2Zo4","Mm",[33,453,454],{"class":43},"(",[33,456,457],{"class":93},"20",[33,459,460],{"class":43},")",[33,462,463],{"class":111},"   // 20 millimeters\n",[33,465,466,468,470,473,475,478,480],{"class":35,"line":115},[33,467,21],{"class":74},[33,469,447],{"class":43},[33,471,472],{"class":450},"Pt",[33,474,454],{"class":43},[33,476,477],{"class":93},"12",[33,479,460],{"class":43},[33,481,482],{"class":111},"   // 12 points\n",[33,484,485,487,489,492,494,497,499],{"class":35,"line":147},[33,486,21],{"class":74},[33,488,447],{"class":43},[33,490,491],{"class":450},"In",[33,493,454],{"class":43},[33,495,496],{"class":93},"0.5",[33,498,460],{"class":43},[33,500,501],{"class":111},"  // half inch\n",[33,503,504,506,508,511,513,516,518],{"class":35,"line":180},[33,505,21],{"class":74},[33,507,447],{"class":43},[33,509,510],{"class":450},"Pct",[33,512,454],{"class":43},[33,514,515],{"class":93},"50",[33,517,460],{"class":43},[33,519,520],{"class":111},"  // 50% of parent\n",[217,522,524],{"id":523},"value-methods","Value Methods",[24,526,528],{"className":26,"code":527,"language":28,"meta":29,"style":29},"func (v Value) Resolve(parentSize, fontSize float64) float64\nfunc (v Value) IsAuto() bool\n",[19,529,530,567],{"__ignoreMap":29},[33,531,532,535,538,542,544,546,549,551,554,556,559,562,564],{"class":35,"line":36},[33,533,534],{"class":43},"func",[33,536,537],{"class":43}," (",[33,539,541],{"class":540},"sHdIc","v ",[33,543,268],{"class":47},[33,545,460],{"class":43},[33,547,548],{"class":450}," Resolve",[33,550,454],{"class":43},[33,552,553],{"class":540},"parentSize",[33,555,97],{"class":43},[33,557,558],{"class":540}," fontSize",[33,560,561],{"class":251}," float64",[33,563,460],{"class":43},[33,565,566],{"class":251}," float64\n",[33,568,569,571,573,575,577,579,582,585],{"class":35,"line":71},[33,570,534],{"class":43},[33,572,537],{"class":43},[33,574,541],{"class":540},[33,576,268],{"class":47},[33,578,460],{"class":43},[33,580,581],{"class":450}," IsAuto",[33,583,584],{"class":43},"()",[33,586,587],{"class":251}," bool\n",[15,589,590,593,594,597],{},[19,591,592],{},"Resolve()"," converts any unit to points. ",[19,595,596],{},"IsAuto()"," checks for auto-sized values.",[10,599,601],{"id":600},"edges-box-model","Edges (Box Model)",[217,603,605],{"id":604},"edges","Edges",[24,607,609],{"className":26,"code":608,"language":28,"meta":29,"style":29},"type Edges struct {\n    Top, Right, Bottom, Left Value\n}\n",[19,610,611,622,645],{"__ignoreMap":29},[33,612,613,615,618,620],{"class":35,"line":36},[33,614,230],{"class":43},[33,616,617],{"class":47}," Edges",[33,619,235],{"class":43},[33,621,238],{"class":43},[33,623,624,627,629,632,634,637,639,642],{"class":35,"line":71},[33,625,626],{"class":74},"    Top",[33,628,97],{"class":43},[33,630,631],{"class":74}," Right",[33,633,97],{"class":43},[33,635,636],{"class":74}," Bottom",[33,638,97],{"class":43},[33,640,641],{"class":74}," Left ",[33,643,644],{"class":47},"Value\n",[33,646,647],{"class":35,"line":115},[33,648,260],{"class":43},[217,650,652],{"id":651},"uniformedges","UniformEdges",[24,654,656],{"className":26,"code":655,"language":28,"meta":29,"style":29},"func UniformEdges(v Value) Edges\n",[19,657,658],{"__ignoreMap":29},[33,659,660,662,665,667,670,672,674],{"class":35,"line":36},[33,661,534],{"class":43},[33,663,664],{"class":450}," UniformEdges",[33,666,454],{"class":43},[33,668,669],{"class":540},"v",[33,671,283],{"class":47},[33,673,460],{"class":43},[33,675,676],{"class":47}," Edges\n",[15,678,679],{},"Creates edges with the same value on all sides:",[24,681,683],{"className":26,"code":682,"language":28,"meta":29,"style":29},"document.UniformEdges(document.Mm(20))  // 20mm on all sides\n",[19,684,685],{"__ignoreMap":29},[33,686,687,689,691,693,695,697,699,701,703,705,708],{"class":35,"line":36},[33,688,21],{"class":74},[33,690,447],{"class":43},[33,692,652],{"class":450},[33,694,454],{"class":43},[33,696,21],{"class":74},[33,698,447],{"class":43},[33,700,451],{"class":450},[33,702,454],{"class":43},[33,704,457],{"class":93},[33,706,707],{"class":43},"))",[33,709,710],{"class":111},"  // 20mm on all sides\n",[217,712,714],{"id":713},"custom-edges","Custom Edges",[24,716,718],{"className":26,"code":717,"language":28,"meta":29,"style":29},"document.Edges{\n    Top:    document.Mm(25),\n    Right:  document.Mm(15),\n    Bottom: document.Mm(25),\n    Left:   document.Mm(15),\n}\n",[19,719,720,731,752,773,793,813],{"__ignoreMap":29},[33,721,722,724,726,728],{"class":35,"line":36},[33,723,21],{"class":47},[33,725,447],{"class":43},[33,727,605],{"class":47},[33,729,730],{"class":43},"{\n",[33,732,733,735,737,740,742,744,746,749],{"class":35,"line":71},[33,734,626],{"class":74},[33,736,90],{"class":43},[33,738,739],{"class":74},"    document",[33,741,447],{"class":43},[33,743,451],{"class":450},[33,745,454],{"class":43},[33,747,748],{"class":93},"25",[33,750,751],{"class":43},"),\n",[33,753,754,757,759,762,764,766,768,771],{"class":35,"line":115},[33,755,756],{"class":74},"    Right",[33,758,90],{"class":43},[33,760,761],{"class":74},"  document",[33,763,447],{"class":43},[33,765,451],{"class":450},[33,767,454],{"class":43},[33,769,770],{"class":93},"15",[33,772,751],{"class":43},[33,774,775,778,780,783,785,787,789,791],{"class":35,"line":147},[33,776,777],{"class":74},"    Bottom",[33,779,90],{"class":43},[33,781,782],{"class":74}," document",[33,784,447],{"class":43},[33,786,451],{"class":450},[33,788,454],{"class":43},[33,790,748],{"class":93},[33,792,751],{"class":43},[33,794,795,798,800,803,805,807,809,811],{"class":35,"line":180},[33,796,797],{"class":74},"    Left",[33,799,90],{"class":43},[33,801,802],{"class":74},"   document",[33,804,447],{"class":43},[33,806,451],{"class":450},[33,808,454],{"class":43},[33,810,770],{"class":93},[33,812,751],{"class":43},[33,814,815],{"class":35,"line":212},[33,816,260],{"class":43},[10,818,820],{"id":819},"style","Style",[15,822,17,823,825],{},[19,824,820],{}," struct controls all visual properties:",[24,827,829],{"className":26,"code":828,"language":28,"meta":29,"style":29},"type Style struct {\n    // Font\n    FontFamily     string\n    FontSize       float64\n    FontWeight     FontWeight    // WeightNormal (400) or WeightBold (700)\n    FontStyle      FontStyle     // StyleNormal or StyleItalic\n\n    // Color\n    Color          pdf.Color\n    Background     *pdf.Color\n\n    // Text layout\n    TextAlign      TextAlign     // AlignLeft, AlignCenter, AlignRight, AlignJustify\n    LineHeight     float64\n    LetterSpacing  float64\n    TextIndent     Value\n    TextDecoration TextDecoration\n    VerticalAlign  VerticalAlign\n\n    // Box model\n    Margin  Edges\n    Padding Edges\n    Border  BorderEdges\n}\n",[19,830,831,842,847,855,862,873,884,891,897,911,926,931,937,949,957,965,973,982,991,996,1002,1011,1019,1028],{"__ignoreMap":29},[33,832,833,835,838,840],{"class":35,"line":36},[33,834,230],{"class":43},[33,836,837],{"class":47}," Style",[33,839,235],{"class":43},[33,841,238],{"class":43},[33,843,844],{"class":35,"line":71},[33,845,846],{"class":111},"    // Font\n",[33,848,849,852],{"class":35,"line":115},[33,850,851],{"class":74},"    FontFamily     ",[33,853,854],{"class":251},"string\n",[33,856,857,860],{"class":35,"line":147},[33,858,859],{"class":74},"    FontSize       ",[33,861,295],{"class":251},[33,863,864,867,870],{"class":35,"line":180},[33,865,866],{"class":74},"    FontWeight     ",[33,868,869],{"class":47},"FontWeight",[33,871,872],{"class":111},"    // WeightNormal (400) or WeightBold (700)\n",[33,874,875,878,881],{"class":35,"line":212},[33,876,877],{"class":74},"    FontStyle      ",[33,879,880],{"class":47},"FontStyle",[33,882,883],{"class":111},"     // StyleNormal or StyleItalic\n",[33,885,887],{"class":35,"line":886},7,[33,888,890],{"emptyLinePlaceholder":889},true,"\n",[33,892,894],{"class":35,"line":893},8,[33,895,896],{"class":111},"    // Color\n",[33,898,900,903,906,908],{"class":35,"line":899},9,[33,901,902],{"class":74},"    Color          ",[33,904,905],{"class":47},"pdf",[33,907,447],{"class":43},[33,909,910],{"class":47},"Color\n",[33,912,914,917,920,922,924],{"class":35,"line":913},10,[33,915,916],{"class":74},"    Background     ",[33,918,919],{"class":43},"*",[33,921,905],{"class":47},[33,923,447],{"class":43},[33,925,910],{"class":47},[33,927,929],{"class":35,"line":928},11,[33,930,890],{"emptyLinePlaceholder":889},[33,932,934],{"class":35,"line":933},12,[33,935,936],{"class":111},"    // Text layout\n",[33,938,940,943,946],{"class":35,"line":939},13,[33,941,942],{"class":74},"    TextAlign      ",[33,944,945],{"class":47},"TextAlign",[33,947,948],{"class":111},"     // AlignLeft, AlignCenter, AlignRight, AlignJustify\n",[33,950,952,955],{"class":35,"line":951},14,[33,953,954],{"class":74},"    LineHeight     ",[33,956,295],{"class":251},[33,958,960,963],{"class":35,"line":959},15,[33,961,962],{"class":74},"    LetterSpacing  ",[33,964,295],{"class":251},[33,966,968,971],{"class":35,"line":967},16,[33,969,970],{"class":74},"    TextIndent     ",[33,972,644],{"class":47},[33,974,976,979],{"class":35,"line":975},17,[33,977,978],{"class":74},"    TextDecoration ",[33,980,981],{"class":47},"TextDecoration\n",[33,983,985,988],{"class":35,"line":984},18,[33,986,987],{"class":74},"    VerticalAlign  ",[33,989,990],{"class":47},"VerticalAlign\n",[33,992,994],{"class":35,"line":993},19,[33,995,890],{"emptyLinePlaceholder":889},[33,997,999],{"class":35,"line":998},20,[33,1000,1001],{"class":111},"    // Box model\n",[33,1003,1005,1008],{"class":35,"line":1004},21,[33,1006,1007],{"class":74},"    Margin  ",[33,1009,1010],{"class":47},"Edges\n",[33,1012,1014,1017],{"class":35,"line":1013},22,[33,1015,1016],{"class":74},"    Padding ",[33,1018,1010],{"class":47},[33,1020,1022,1025],{"class":35,"line":1021},23,[33,1023,1024],{"class":74},"    Border  ",[33,1026,1027],{"class":47},"BorderEdges\n",[33,1029,1031],{"class":35,"line":1030},24,[33,1032,260],{"class":43},[217,1034,945],{"id":1035},"textalign",[24,1037,1039],{"className":26,"code":1038,"language":28,"meta":29,"style":29},"const (\n    AlignLeft    TextAlign = iota  // default\n    AlignCenter\n    AlignRight\n    AlignJustify\n)\n",[19,1040,1041,1048,1064,1069,1074,1079],{"__ignoreMap":29},[33,1042,1043,1046],{"class":35,"line":36},[33,1044,1045],{"class":43},"const",[33,1047,68],{"class":43},[33,1049,1050,1053,1055,1058,1061],{"class":35,"line":71},[33,1051,1052],{"class":74},"    AlignLeft    ",[33,1054,945],{"class":47},[33,1056,1057],{"class":43}," =",[33,1059,1060],{"class":43}," iota",[33,1062,1063],{"class":111},"  // default\n",[33,1065,1066],{"class":35,"line":115},[33,1067,1068],{"class":74},"    AlignCenter\n",[33,1070,1071],{"class":35,"line":147},[33,1072,1073],{"class":74},"    AlignRight\n",[33,1075,1076],{"class":35,"line":180},[33,1077,1078],{"class":74},"    AlignJustify\n",[33,1080,1081],{"class":35,"line":212},[33,1082,215],{"class":43},[217,1084,869],{"id":1085},"fontweight",[24,1087,1089],{"className":26,"code":1088,"language":28,"meta":29,"style":29},"const (\n    WeightNormal FontWeight = 400\n    WeightBold   FontWeight = 700\n)\n",[19,1090,1091,1097,1109,1121],{"__ignoreMap":29},[33,1092,1093,1095],{"class":35,"line":36},[33,1094,1045],{"class":43},[33,1096,68],{"class":43},[33,1098,1099,1102,1104,1106],{"class":35,"line":71},[33,1100,1101],{"class":74},"    WeightNormal ",[33,1103,869],{"class":47},[33,1105,1057],{"class":43},[33,1107,1108],{"class":93}," 400\n",[33,1110,1111,1114,1116,1118],{"class":35,"line":115},[33,1112,1113],{"class":74},"    WeightBold   ",[33,1115,869],{"class":47},[33,1117,1057],{"class":43},[33,1119,1120],{"class":93}," 700\n",[33,1122,1123],{"class":35,"line":147},[33,1124,215],{"class":43},[217,1126,1128],{"id":1127},"textdecoration","TextDecoration",[24,1130,1132],{"className":26,"code":1131,"language":28,"meta":29,"style":29},"const (\n    DecorationNone          TextDecoration = 0\n    DecorationUnderline     TextDecoration = 1\n    DecorationStrikethrough TextDecoration = 2\n    DecorationOverline      TextDecoration = 4\n)\n",[19,1133,1134,1140,1152,1164,1176,1188],{"__ignoreMap":29},[33,1135,1136,1138],{"class":35,"line":36},[33,1137,1045],{"class":43},[33,1139,68],{"class":43},[33,1141,1142,1145,1147,1149],{"class":35,"line":71},[33,1143,1144],{"class":74},"    DecorationNone          ",[33,1146,1128],{"class":47},[33,1148,1057],{"class":43},[33,1150,1151],{"class":93}," 0\n",[33,1153,1154,1157,1159,1161],{"class":35,"line":115},[33,1155,1156],{"class":74},"    DecorationUnderline     ",[33,1158,1128],{"class":47},[33,1160,1057],{"class":43},[33,1162,1163],{"class":93}," 1\n",[33,1165,1166,1169,1171,1173],{"class":35,"line":147},[33,1167,1168],{"class":74},"    DecorationStrikethrough ",[33,1170,1128],{"class":47},[33,1172,1057],{"class":43},[33,1174,1175],{"class":93}," 2\n",[33,1177,1178,1181,1183,1185],{"class":35,"line":180},[33,1179,1180],{"class":74},"    DecorationOverline      ",[33,1182,1128],{"class":47},[33,1184,1057],{"class":43},[33,1186,1187],{"class":93}," 4\n",[33,1189,1190],{"class":35,"line":212},[33,1191,215],{"class":43},[15,1193,1194],{},"Decorations can be combined with bitwise OR.",[217,1196,1198],{"id":1197},"verticalalign","VerticalAlign",[24,1200,1202],{"className":26,"code":1201,"language":28,"meta":29,"style":29},"const (\n    VAlignTop    VerticalAlign = iota  // default\n    VAlignMiddle\n    VAlignBottom\n)\n",[19,1203,1204,1210,1223,1228,1233],{"__ignoreMap":29},[33,1205,1206,1208],{"class":35,"line":36},[33,1207,1045],{"class":43},[33,1209,68],{"class":43},[33,1211,1212,1215,1217,1219,1221],{"class":35,"line":71},[33,1213,1214],{"class":74},"    VAlignTop    ",[33,1216,1198],{"class":47},[33,1218,1057],{"class":43},[33,1220,1060],{"class":43},[33,1222,1063],{"class":111},[33,1224,1225],{"class":35,"line":115},[33,1226,1227],{"class":74},"    VAlignMiddle\n",[33,1229,1230],{"class":35,"line":147},[33,1231,1232],{"class":74},"    VAlignBottom\n",[33,1234,1235],{"class":35,"line":180},[33,1236,215],{"class":43},[15,1238,1239],{},"Used for table cell vertical alignment:",[24,1241,1243],{"className":26,"code":1242,"language":28,"meta":29,"style":29},"template.TableCellVAlign(document.VAlignMiddle)\n",[19,1244,1245],{"__ignoreMap":29},[33,1246,1247,1250,1252,1255,1257,1259,1261,1264],{"class":35,"line":36},[33,1248,1249],{"class":74},"template",[33,1251,447],{"class":43},[33,1253,1254],{"class":450},"TableCellVAlign",[33,1256,454],{"class":43},[33,1258,21],{"class":74},[33,1260,447],{"class":43},[33,1262,1263],{"class":74},"VAlignMiddle",[33,1265,215],{"class":43},[10,1267,1269],{"id":1268},"document-metadata","Document Metadata",[24,1271,1273],{"className":26,"code":1272,"language":28,"meta":29,"style":29},"type DocumentMetadata struct {\n    Title    string\n    Author   string\n    Subject  string\n    Creator  string\n    Producer string\n}\n",[19,1274,1275,1286,1293,1300,1307,1314,1321],{"__ignoreMap":29},[33,1276,1277,1279,1282,1284],{"class":35,"line":36},[33,1278,230],{"class":43},[33,1280,1281],{"class":47}," DocumentMetadata",[33,1283,235],{"class":43},[33,1285,238],{"class":43},[33,1287,1288,1291],{"class":35,"line":71},[33,1289,1290],{"class":74},"    Title    ",[33,1292,854],{"class":251},[33,1294,1295,1298],{"class":35,"line":115},[33,1296,1297],{"class":74},"    Author   ",[33,1299,854],{"class":251},[33,1301,1302,1305],{"class":35,"line":147},[33,1303,1304],{"class":74},"    Subject  ",[33,1306,854],{"class":251},[33,1308,1309,1312],{"class":35,"line":180},[33,1310,1311],{"class":74},"    Creator  ",[33,1313,854],{"class":251},[33,1315,1316,1319],{"class":35,"line":212},[33,1317,1318],{"class":74},"    Producer ",[33,1320,854],{"class":251},[33,1322,1323],{"class":35,"line":886},[33,1324,260],{"class":43},[24,1326,1328],{"className":26,"code":1327,"language":28,"meta":29,"style":29},"template.WithMetadata(document.DocumentMetadata{\n    Title:  \"Quarterly Report\",\n    Author: \"ACME Corp\",\n})\n",[19,1329,1330,1350,1370,1386],{"__ignoreMap":29},[33,1331,1332,1334,1336,1339,1341,1343,1345,1348],{"class":35,"line":36},[33,1333,1249],{"class":74},[33,1335,447],{"class":43},[33,1337,1338],{"class":450},"WithMetadata",[33,1340,454],{"class":43},[33,1342,21],{"class":47},[33,1344,447],{"class":43},[33,1346,1347],{"class":47},"DocumentMetadata",[33,1349,730],{"class":43},[33,1351,1352,1355,1357,1360,1364,1367],{"class":35,"line":71},[33,1353,1354],{"class":74},"    Title",[33,1356,90],{"class":43},[33,1358,1359],{"class":43},"  \"",[33,1361,1363],{"class":1362},"sfazB","Quarterly Report",[33,1365,1366],{"class":43},"\"",[33,1368,1369],{"class":43},",\n",[33,1371,1372,1375,1377,1379,1382,1384],{"class":35,"line":115},[33,1373,1374],{"class":74},"    Author",[33,1376,90],{"class":43},[33,1378,44],{"class":43},[33,1380,1381],{"class":1362},"ACME Corp",[33,1383,1366],{"class":43},[33,1385,1369],{"class":43},[33,1387,1388],{"class":35,"line":147},[33,1389,1390],{"class":43},"})\n",[10,1392,1394],{"id":1393},"image-types","Image Types",[217,1396,1398],{"id":1397},"imagefitmode","ImageFitMode",[24,1400,1402],{"className":26,"code":1401,"language":28,"meta":29,"style":29},"const (\n    FitContain  ImageFitMode = iota  // Scale to fit within bounds (preserve ratio)\n    FitCover                          // Scale to fill bounds (may crop)\n    FitStretch                        // Stretch to fill (distort)\n    FitOriginal                       // Use original image dimensions\n)\n",[19,1403,1404,1410,1424,1432,1440,1448],{"__ignoreMap":29},[33,1405,1406,1408],{"class":35,"line":36},[33,1407,1045],{"class":43},[33,1409,68],{"class":43},[33,1411,1412,1415,1417,1419,1421],{"class":35,"line":71},[33,1413,1414],{"class":74},"    FitContain  ",[33,1416,1398],{"class":47},[33,1418,1057],{"class":43},[33,1420,1060],{"class":43},[33,1422,1423],{"class":111},"  // Scale to fit within bounds (preserve ratio)\n",[33,1425,1426,1429],{"class":35,"line":115},[33,1427,1428],{"class":74},"    FitCover                          ",[33,1430,1431],{"class":111},"// Scale to fill bounds (may crop)\n",[33,1433,1434,1437],{"class":35,"line":147},[33,1435,1436],{"class":74},"    FitStretch                        ",[33,1438,1439],{"class":111},"// Stretch to fill (distort)\n",[33,1441,1442,1445],{"class":35,"line":180},[33,1443,1444],{"class":74},"    FitOriginal                       ",[33,1446,1447],{"class":111},"// Use original image dimensions\n",[33,1449,1450],{"class":35,"line":212},[33,1451,215],{"class":43},[217,1453,1455],{"id":1454},"imageformat","ImageFormat",[24,1457,1459],{"className":26,"code":1458,"language":28,"meta":29,"style":29},"const (\n    ImageFormatJPEG ImageFormat = iota\n    ImageFormatPNG\n)\n",[19,1460,1461,1467,1479,1484],{"__ignoreMap":29},[33,1462,1463,1465],{"class":35,"line":36},[33,1464,1045],{"class":43},[33,1466,68],{"class":43},[33,1468,1469,1472,1474,1476],{"class":35,"line":71},[33,1470,1471],{"class":74},"    ImageFormatJPEG ",[33,1473,1455],{"class":47},[33,1475,1057],{"class":43},[33,1477,1478],{"class":43}," iota\n",[33,1480,1481],{"class":35,"line":115},[33,1482,1483],{"class":74},"    ImageFormatPNG\n",[33,1485,1486],{"class":35,"line":147},[33,1487,215],{"class":43},[10,1489,1491],{"id":1490},"node-types","Node Types",[15,1493,1494],{},"The document tree is composed of nodes:",[24,1496,1498],{"className":26,"code":1497,"language":28,"meta":29,"style":29},"const (\n    NodeDocument NodeType = iota\n    NodePage\n    NodeBox\n    NodeText\n    NodeImage\n    NodeTable\n    NodeList\n    NodeRichText\n)\n",[19,1499,1500,1506,1518,1523,1528,1533,1538,1543,1548,1553],{"__ignoreMap":29},[33,1501,1502,1504],{"class":35,"line":36},[33,1503,1045],{"class":43},[33,1505,68],{"class":43},[33,1507,1508,1511,1514,1516],{"class":35,"line":71},[33,1509,1510],{"class":74},"    NodeDocument ",[33,1512,1513],{"class":47},"NodeType",[33,1515,1057],{"class":43},[33,1517,1478],{"class":43},[33,1519,1520],{"class":35,"line":115},[33,1521,1522],{"class":74},"    NodePage\n",[33,1524,1525],{"class":35,"line":147},[33,1526,1527],{"class":74},"    NodeBox\n",[33,1529,1530],{"class":35,"line":180},[33,1531,1532],{"class":74},"    NodeText\n",[33,1534,1535],{"class":35,"line":212},[33,1536,1537],{"class":74},"    NodeImage\n",[33,1539,1540],{"class":35,"line":886},[33,1541,1542],{"class":74},"    NodeTable\n",[33,1544,1545],{"class":35,"line":893},[33,1546,1547],{"class":74},"    NodeList\n",[33,1549,1550],{"class":35,"line":899},[33,1551,1552],{"class":74},"    NodeRichText\n",[33,1554,1555],{"class":35,"line":913},[33,1556,215],{"class":43},[15,1558,1559],{},"Most users don't interact with nodes directly — the template builder creates them automatically.",[10,1561,1563],{"id":1562},"geometry-types","Geometry Types",[24,1565,1567],{"className":26,"code":1566,"language":28,"meta":29,"style":29},"type Rectangle struct {\n    X, Y, Width, Height float64\n}\n\ntype Point struct {\n    X, Y float64\n}\n",[19,1568,1569,1580,1601,1605,1609,1620,1631],{"__ignoreMap":29},[33,1570,1571,1573,1576,1578],{"class":35,"line":36},[33,1572,230],{"class":43},[33,1574,1575],{"class":47}," Rectangle",[33,1577,235],{"class":43},[33,1579,238],{"class":43},[33,1581,1582,1585,1587,1590,1592,1595,1597,1599],{"class":35,"line":71},[33,1583,1584],{"class":74},"    X",[33,1586,97],{"class":43},[33,1588,1589],{"class":74}," Y",[33,1591,97],{"class":43},[33,1593,1594],{"class":74}," Width",[33,1596,97],{"class":43},[33,1598,248],{"class":74},[33,1600,295],{"class":251},[33,1602,1603],{"class":35,"line":115},[33,1604,260],{"class":43},[33,1606,1607],{"class":35,"line":147},[33,1608,890],{"emptyLinePlaceholder":889},[33,1610,1611,1613,1616,1618],{"class":35,"line":180},[33,1612,230],{"class":43},[33,1614,1615],{"class":47}," Point",[33,1617,235],{"class":43},[33,1619,238],{"class":43},[33,1621,1622,1624,1626,1629],{"class":35,"line":212},[33,1623,1584],{"class":74},[33,1625,97],{"class":43},[33,1627,1628],{"class":74}," Y ",[33,1630,295],{"class":251},[33,1632,1633],{"class":35,"line":886},[33,1634,260],{"class":43},[819,1636,1637],{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}",{"title":29,"searchDepth":71,"depth":71,"links":1639},[1640,1641,1644,1649,1654,1660,1661,1665,1666],{"id":12,"depth":71,"text":13},{"id":54,"depth":71,"text":55,"children":1642},[1643],{"id":219,"depth":115,"text":220},{"id":263,"depth":71,"text":264,"children":1645},[1646,1647,1648],{"id":267,"depth":115,"text":268},{"id":310,"depth":115,"text":311},{"id":523,"depth":115,"text":524},{"id":600,"depth":71,"text":601,"children":1650},[1651,1652,1653],{"id":604,"depth":115,"text":605},{"id":651,"depth":115,"text":652},{"id":713,"depth":115,"text":714},{"id":819,"depth":71,"text":820,"children":1655},[1656,1657,1658,1659],{"id":1035,"depth":115,"text":945},{"id":1085,"depth":115,"text":869},{"id":1127,"depth":115,"text":1128},{"id":1197,"depth":115,"text":1198},{"id":1268,"depth":71,"text":1269},{"id":1393,"depth":71,"text":1394,"children":1662},[1663,1664],{"id":1397,"depth":115,"text":1398},{"id":1454,"depth":115,"text":1455},{"id":1490,"depth":71,"text":1491},{"id":1562,"depth":71,"text":1563},"API reference for the document model layer (Layer 2)","md",{},"/docs/api-reference/document",{"title":5,"description":1667},"docs/3.api-reference/2.document","6bYt0ERWrmkDlkl95dmGkdUd-XfVfzLTVH8GypN51PI",1776526793778]