[{"data":1,"prerenderedAt":1517},["ShallowReactive",2],{"docs-zh-guide/overlay":3},{"id":4,"title":5,"body":6,"description":1510,"extension":1511,"meta":1512,"navigation":84,"path":1513,"seo":1514,"stem":1515,"__hash__":1516},"docsZh/zh/docs/2.guide/7.overlay.md","已有 PDF 叠加",{"type":7,"value":8,"toc":1500},"minimark",[9,13,22,25,41,45,205,212,296,299,306,489,504,507,513,748,751,837,844,848,1392,1396,1466,1469,1496],[10,11,12],"h2",{"id":12},"概述",[14,15,16,17,21],"p",{},"gpdf 可以打开已有的 PDF 并在其上叠加新内容，而不修改原始数据。这使用了",[18,19,20],"strong",{},"增量更新","技术 — 新对象被追加到原始 PDF 字节之后。",[14,23,24],{},"常见用例：",[26,27,28,32,35,38],"ul",{},[29,30,31],"li",{},"添加水印（\"DRAFT\"、\"CONFIDENTIAL\"）",[29,33,34],{},"插入页码",[29,36,37],{},"盖章审批标记和日期",[29,39,40],{},"为已有文档添加页眉/页脚",[10,42,44],{"id":43},"打开已有-pdf","打开已有 PDF",[46,47,52],"pre",{"className":48,"code":49,"language":50,"meta":51,"style":51},"language-go shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import gpdf \"github.com/gpdf-dev/gpdf\"\n\n// Read existing PDF bytes (from file, HTTP response, database, etc.)\npdfBytes, _ := os.ReadFile(\"input.pdf\")\n\ndoc, err := gpdf.Open(pdfBytes)\nif err != nil {\n    log.Fatal(err)\n}\n","go","",[53,54,55,79,86,93,132,137,164,181,199],"code",{"__ignoreMap":51},[56,57,60,64,68,72,76],"span",{"class":58,"line":59},"line",1,[56,61,63],{"class":62},"s7zQu","import",[56,65,67],{"class":66},"sTEyZ"," gpdf ",[56,69,71],{"class":70},"sMK4o","\"",[56,73,75],{"class":74},"sBMFI","github.com/gpdf-dev/gpdf",[56,77,78],{"class":70},"\"\n",[56,80,82],{"class":58,"line":81},2,[56,83,85],{"emptyLinePlaceholder":84},true,"\n",[56,87,89],{"class":58,"line":88},3,[56,90,92],{"class":91},"sHwdD","// Read existing PDF bytes (from file, HTTP response, database, etc.)\n",[56,94,96,99,102,105,108,111,114,118,121,123,127,129],{"class":58,"line":95},4,[56,97,98],{"class":66},"pdfBytes",[56,100,101],{"class":70},",",[56,103,104],{"class":66}," _ ",[56,106,107],{"class":70},":=",[56,109,110],{"class":66}," os",[56,112,113],{"class":70},".",[56,115,117],{"class":116},"s2Zo4","ReadFile",[56,119,120],{"class":70},"(",[56,122,71],{"class":70},[56,124,126],{"class":125},"sfazB","input.pdf",[56,128,71],{"class":70},[56,130,131],{"class":70},")\n",[56,133,135],{"class":58,"line":134},5,[56,136,85],{"emptyLinePlaceholder":84},[56,138,140,143,145,148,150,153,155,158,160,162],{"class":58,"line":139},6,[56,141,142],{"class":66},"doc",[56,144,101],{"class":70},[56,146,147],{"class":66}," err ",[56,149,107],{"class":70},[56,151,152],{"class":66}," gpdf",[56,154,113],{"class":70},[56,156,157],{"class":116},"Open",[56,159,120],{"class":70},[56,161,98],{"class":66},[56,163,131],{"class":70},[56,165,167,170,172,175,178],{"class":58,"line":166},7,[56,168,169],{"class":62},"if",[56,171,147],{"class":66},[56,173,174],{"class":70},"!=",[56,176,177],{"class":70}," nil",[56,179,180],{"class":70}," {\n",[56,182,184,187,189,192,194,197],{"class":58,"line":183},8,[56,185,186],{"class":66},"    log",[56,188,113],{"class":70},[56,190,191],{"class":116},"Fatal",[56,193,120],{"class":70},[56,195,196],{"class":66},"err",[56,198,131],{"class":70},[56,200,202],{"class":58,"line":201},9,[56,203,204],{"class":70},"}\n",[14,206,207,208,211],{},"你可以传递与 ",[53,209,210],{},"NewDocument"," 相同的选项 — 字体、默认字体等：",[46,213,215],{"className":48,"code":214,"language":50,"meta":51,"style":51},"doc, err := gpdf.Open(pdfBytes,\n    gpdf.WithFont(\"NotoSans\", fontData),\n    gpdf.WithDefaultFont(\"NotoSans\", 12),\n)\n",[53,216,217,240,267,292],{"__ignoreMap":51},[56,218,219,221,223,225,227,229,231,233,235,237],{"class":58,"line":59},[56,220,142],{"class":66},[56,222,101],{"class":70},[56,224,147],{"class":66},[56,226,107],{"class":70},[56,228,152],{"class":66},[56,230,113],{"class":70},[56,232,157],{"class":116},[56,234,120],{"class":70},[56,236,98],{"class":66},[56,238,239],{"class":70},",\n",[56,241,242,245,247,250,252,254,257,259,261,264],{"class":58,"line":81},[56,243,244],{"class":66},"    gpdf",[56,246,113],{"class":70},[56,248,249],{"class":116},"WithFont",[56,251,120],{"class":70},[56,253,71],{"class":70},[56,255,256],{"class":125},"NotoSans",[56,258,71],{"class":70},[56,260,101],{"class":70},[56,262,263],{"class":66}," fontData",[56,265,266],{"class":70},"),\n",[56,268,269,271,273,276,278,280,282,284,286,290],{"class":58,"line":88},[56,270,244],{"class":66},[56,272,113],{"class":70},[56,274,275],{"class":116},"WithDefaultFont",[56,277,120],{"class":70},[56,279,71],{"class":70},[56,281,256],{"class":125},[56,283,71],{"class":70},[56,285,101],{"class":70},[56,287,289],{"class":288},"sbssI"," 12",[56,291,266],{"class":70},[56,293,294],{"class":58,"line":95},[56,295,131],{"class":70},[10,297,298],{"id":298},"在单个页面上叠加",[14,300,301,302,305],{},"使用 ",[53,303,304],{},"Overlay(pageIndex, fn)"," 在指定页面上添加内容（从 0 开始索引）：",[46,307,309],{"className":48,"code":308,"language":50,"meta":51,"style":51},"doc.Overlay(0, func(p *template.PageBuilder) {\n    p.Absolute(document.Mm(40), document.Mm(120), func(c *template.ColBuilder) {\n        c.Text(\"DRAFT\",\n            template.FontSize(72),\n            template.TextColor(pdf.Gray(0.85)),\n        )\n    })\n})\n",[53,310,311,349,409,430,447,474,479,484],{"__ignoreMap":51},[56,312,313,315,317,320,322,325,327,330,333,336,339,341,344,347],{"class":58,"line":59},[56,314,142],{"class":66},[56,316,113],{"class":70},[56,318,319],{"class":116},"Overlay",[56,321,120],{"class":70},[56,323,324],{"class":288},"0",[56,326,101],{"class":70},[56,328,329],{"class":70}," func(",[56,331,14],{"class":332},"sHdIc",[56,334,335],{"class":70}," *",[56,337,338],{"class":74},"template",[56,340,113],{"class":70},[56,342,343],{"class":74},"PageBuilder",[56,345,346],{"class":70},")",[56,348,180],{"class":70},[56,350,351,354,356,359,361,364,366,369,371,374,377,380,382,384,386,389,391,393,396,398,400,402,405,407],{"class":58,"line":81},[56,352,353],{"class":66},"    p",[56,355,113],{"class":70},[56,357,358],{"class":116},"Absolute",[56,360,120],{"class":70},[56,362,363],{"class":66},"document",[56,365,113],{"class":70},[56,367,368],{"class":116},"Mm",[56,370,120],{"class":70},[56,372,373],{"class":288},"40",[56,375,376],{"class":70},"),",[56,378,379],{"class":66}," document",[56,381,113],{"class":70},[56,383,368],{"class":116},[56,385,120],{"class":70},[56,387,388],{"class":288},"120",[56,390,376],{"class":70},[56,392,329],{"class":70},[56,394,395],{"class":332},"c",[56,397,335],{"class":70},[56,399,338],{"class":74},[56,401,113],{"class":70},[56,403,404],{"class":74},"ColBuilder",[56,406,346],{"class":70},[56,408,180],{"class":70},[56,410,411,414,416,419,421,423,426,428],{"class":58,"line":88},[56,412,413],{"class":66},"        c",[56,415,113],{"class":70},[56,417,418],{"class":116},"Text",[56,420,120],{"class":70},[56,422,71],{"class":70},[56,424,425],{"class":125},"DRAFT",[56,427,71],{"class":70},[56,429,239],{"class":70},[56,431,432,435,437,440,442,445],{"class":58,"line":95},[56,433,434],{"class":66},"            template",[56,436,113],{"class":70},[56,438,439],{"class":116},"FontSize",[56,441,120],{"class":70},[56,443,444],{"class":288},"72",[56,446,266],{"class":70},[56,448,449,451,453,456,458,461,463,466,468,471],{"class":58,"line":134},[56,450,434],{"class":66},[56,452,113],{"class":70},[56,454,455],{"class":116},"TextColor",[56,457,120],{"class":70},[56,459,460],{"class":66},"pdf",[56,462,113],{"class":70},[56,464,465],{"class":116},"Gray",[56,467,120],{"class":70},[56,469,470],{"class":288},"0.85",[56,472,473],{"class":70},")),\n",[56,475,476],{"class":58,"line":139},[56,477,478],{"class":70},"        )\n",[56,480,481],{"class":58,"line":166},[56,482,483],{"class":70},"    })\n",[56,485,486],{"class":58,"line":183},[56,487,488],{"class":70},"})\n",[14,490,491,493,494,497,498,497,500,503],{},[53,492,343],{}," 支持与创建新页面时相同的 API — ",[53,495,496],{},"AutoRow","、",[53,499,358],{},[53,501,502],{},"Row"," 等。",[10,505,506],{"id":506},"在每一页上叠加",[14,508,301,509,512],{},[53,510,511],{},"EachPage(fn)"," 遍历所有页面：",[46,514,516],{"className":48,"code":515,"language":50,"meta":51,"style":51},"count, _ := doc.PageCount()\n\ndoc.EachPage(func(pageIndex int, p *template.PageBuilder) {\n    p.Absolute(document.Mm(170), document.Mm(285), func(c *template.ColBuilder) {\n        c.Text(fmt.Sprintf(\"%d / %d\", pageIndex+1, count),\n            template.FontSize(10),\n            template.AlignRight(),\n        )\n    }, template.AbsoluteWidth(document.Mm(20)))\n})\n",[53,517,518,540,544,580,632,683,698,710,714,743],{"__ignoreMap":51},[56,519,520,523,525,527,529,532,534,537],{"class":58,"line":59},[56,521,522],{"class":66},"count",[56,524,101],{"class":70},[56,526,104],{"class":66},[56,528,107],{"class":70},[56,530,531],{"class":66}," doc",[56,533,113],{"class":70},[56,535,536],{"class":116},"PageCount",[56,538,539],{"class":70},"()\n",[56,541,542],{"class":58,"line":81},[56,543,85],{"emptyLinePlaceholder":84},[56,545,546,548,550,553,556,559,563,565,568,570,572,574,576,578],{"class":58,"line":88},[56,547,142],{"class":66},[56,549,113],{"class":70},[56,551,552],{"class":116},"EachPage",[56,554,555],{"class":70},"(func(",[56,557,558],{"class":332},"pageIndex",[56,560,562],{"class":561},"spNyl"," int",[56,564,101],{"class":70},[56,566,567],{"class":332}," p",[56,569,335],{"class":70},[56,571,338],{"class":74},[56,573,113],{"class":70},[56,575,343],{"class":74},[56,577,346],{"class":70},[56,579,180],{"class":70},[56,581,582,584,586,588,590,592,594,596,598,601,603,605,607,609,611,614,616,618,620,622,624,626,628,630],{"class":58,"line":95},[56,583,353],{"class":66},[56,585,113],{"class":70},[56,587,358],{"class":116},[56,589,120],{"class":70},[56,591,363],{"class":66},[56,593,113],{"class":70},[56,595,368],{"class":116},[56,597,120],{"class":70},[56,599,600],{"class":288},"170",[56,602,376],{"class":70},[56,604,379],{"class":66},[56,606,113],{"class":70},[56,608,368],{"class":116},[56,610,120],{"class":70},[56,612,613],{"class":288},"285",[56,615,376],{"class":70},[56,617,329],{"class":70},[56,619,395],{"class":332},[56,621,335],{"class":70},[56,623,338],{"class":74},[56,625,113],{"class":70},[56,627,404],{"class":74},[56,629,346],{"class":70},[56,631,180],{"class":70},[56,633,634,636,638,640,642,645,647,650,652,654,658,661,663,665,667,670,673,676,678,681],{"class":58,"line":134},[56,635,413],{"class":66},[56,637,113],{"class":70},[56,639,418],{"class":116},[56,641,120],{"class":70},[56,643,644],{"class":66},"fmt",[56,646,113],{"class":70},[56,648,649],{"class":116},"Sprintf",[56,651,120],{"class":70},[56,653,71],{"class":70},[56,655,657],{"class":656},"swJcz","%d",[56,659,660],{"class":125}," / ",[56,662,657],{"class":656},[56,664,71],{"class":70},[56,666,101],{"class":70},[56,668,669],{"class":66}," pageIndex",[56,671,672],{"class":70},"+",[56,674,675],{"class":288},"1",[56,677,101],{"class":70},[56,679,680],{"class":66}," count",[56,682,266],{"class":70},[56,684,685,687,689,691,693,696],{"class":58,"line":139},[56,686,434],{"class":66},[56,688,113],{"class":70},[56,690,439],{"class":116},[56,692,120],{"class":70},[56,694,695],{"class":288},"10",[56,697,266],{"class":70},[56,699,700,702,704,707],{"class":58,"line":166},[56,701,434],{"class":66},[56,703,113],{"class":70},[56,705,706],{"class":116},"AlignRight",[56,708,709],{"class":70},"(),\n",[56,711,712],{"class":58,"line":183},[56,713,478],{"class":70},[56,715,716,719,722,724,727,729,731,733,735,737,740],{"class":58,"line":201},[56,717,718],{"class":70},"    },",[56,720,721],{"class":66}," template",[56,723,113],{"class":70},[56,725,726],{"class":116},"AbsoluteWidth",[56,728,120],{"class":70},[56,730,363],{"class":66},[56,732,113],{"class":70},[56,734,368],{"class":116},[56,736,120],{"class":70},[56,738,739],{"class":288},"20",[56,741,742],{"class":70},")))\n",[56,744,746],{"class":58,"line":745},10,[56,747,488],{"class":70},[10,749,750],{"id":750},"保存结果",[46,752,754],{"className":48,"code":753,"language":50,"meta":51,"style":51},"result, err := doc.Save()\nif err != nil {\n    log.Fatal(err)\n}\nos.WriteFile(\"output.pdf\", result, 0644)\n",[53,755,756,776,788,802,806],{"__ignoreMap":51},[56,757,758,761,763,765,767,769,771,774],{"class":58,"line":59},[56,759,760],{"class":66},"result",[56,762,101],{"class":70},[56,764,147],{"class":66},[56,766,107],{"class":70},[56,768,531],{"class":66},[56,770,113],{"class":70},[56,772,773],{"class":116},"Save",[56,775,539],{"class":70},[56,777,778,780,782,784,786],{"class":58,"line":81},[56,779,169],{"class":62},[56,781,147],{"class":66},[56,783,174],{"class":70},[56,785,177],{"class":70},[56,787,180],{"class":70},[56,789,790,792,794,796,798,800],{"class":58,"line":88},[56,791,186],{"class":66},[56,793,113],{"class":70},[56,795,191],{"class":116},[56,797,120],{"class":70},[56,799,196],{"class":66},[56,801,131],{"class":70},[56,803,804],{"class":58,"line":95},[56,805,204],{"class":70},[56,807,808,811,813,816,818,820,823,825,827,830,832,835],{"class":58,"line":134},[56,809,810],{"class":66},"os",[56,812,113],{"class":70},[56,814,815],{"class":116},"WriteFile",[56,817,120],{"class":70},[56,819,71],{"class":70},[56,821,822],{"class":125},"output.pdf",[56,824,71],{"class":70},[56,826,101],{"class":70},[56,828,829],{"class":66}," result",[56,831,101],{"class":70},[56,833,834],{"class":288}," 0644",[56,836,131],{"class":70},[14,838,839,840,843],{},"原始 PDF 内容得以保留 — ",[53,841,842],{},"Save()"," 将叠加数据追加到原始字节之后。",[10,845,847],{"id":846},"完整示例水印-页码","完整示例：水印 + 页码",[46,849,851],{"className":48,"code":850,"language":50,"meta":51,"style":51},"pdfBytes, _ := os.ReadFile(\"report.pdf\")\n\ndoc, err := gpdf.Open(pdfBytes)\nif err != nil {\n    log.Fatal(err)\n}\n\ncount, _ := doc.PageCount()\n\ndoc.EachPage(func(i int, p *template.PageBuilder) {\n    // Watermark\n    p.Absolute(document.Mm(40), document.Mm(140), func(c *template.ColBuilder) {\n        c.Text(\"CONFIDENTIAL\",\n            template.FontSize(60),\n            template.TextColor(pdf.Color{R: 0.9, G: 0.9, B: 0.9, A: 1, Space: pdf.ColorSpaceRGB}),\n        )\n    })\n\n    // Page number (bottom-right)\n    p.Absolute(document.Mm(170), document.Mm(285), func(c *template.ColBuilder) {\n        c.Text(fmt.Sprintf(\"%d / %d\", i+1, count),\n            template.FontSize(10),\n            template.AlignRight(),\n        )\n    }, template.AbsoluteWidth(document.Mm(20)))\n})\n\nresult, _ := doc.Save()\nos.WriteFile(\"report_stamped.pdf\", result, 0644)\n",[53,852,853,880,884,906,918,932,936,940,958,962,993,999,1051,1071,1087,1163,1168,1173,1178,1184,1235,1279,1294,1305,1310,1335,1340,1345,1364],{"__ignoreMap":51},[56,854,855,857,859,861,863,865,867,869,871,873,876,878],{"class":58,"line":59},[56,856,98],{"class":66},[56,858,101],{"class":70},[56,860,104],{"class":66},[56,862,107],{"class":70},[56,864,110],{"class":66},[56,866,113],{"class":70},[56,868,117],{"class":116},[56,870,120],{"class":70},[56,872,71],{"class":70},[56,874,875],{"class":125},"report.pdf",[56,877,71],{"class":70},[56,879,131],{"class":70},[56,881,882],{"class":58,"line":81},[56,883,85],{"emptyLinePlaceholder":84},[56,885,886,888,890,892,894,896,898,900,902,904],{"class":58,"line":88},[56,887,142],{"class":66},[56,889,101],{"class":70},[56,891,147],{"class":66},[56,893,107],{"class":70},[56,895,152],{"class":66},[56,897,113],{"class":70},[56,899,157],{"class":116},[56,901,120],{"class":70},[56,903,98],{"class":66},[56,905,131],{"class":70},[56,907,908,910,912,914,916],{"class":58,"line":95},[56,909,169],{"class":62},[56,911,147],{"class":66},[56,913,174],{"class":70},[56,915,177],{"class":70},[56,917,180],{"class":70},[56,919,920,922,924,926,928,930],{"class":58,"line":134},[56,921,186],{"class":66},[56,923,113],{"class":70},[56,925,191],{"class":116},[56,927,120],{"class":70},[56,929,196],{"class":66},[56,931,131],{"class":70},[56,933,934],{"class":58,"line":139},[56,935,204],{"class":70},[56,937,938],{"class":58,"line":166},[56,939,85],{"emptyLinePlaceholder":84},[56,941,942,944,946,948,950,952,954,956],{"class":58,"line":183},[56,943,522],{"class":66},[56,945,101],{"class":70},[56,947,104],{"class":66},[56,949,107],{"class":70},[56,951,531],{"class":66},[56,953,113],{"class":70},[56,955,536],{"class":116},[56,957,539],{"class":70},[56,959,960],{"class":58,"line":201},[56,961,85],{"emptyLinePlaceholder":84},[56,963,964,966,968,970,972,975,977,979,981,983,985,987,989,991],{"class":58,"line":745},[56,965,142],{"class":66},[56,967,113],{"class":70},[56,969,552],{"class":116},[56,971,555],{"class":70},[56,973,974],{"class":332},"i",[56,976,562],{"class":561},[56,978,101],{"class":70},[56,980,567],{"class":332},[56,982,335],{"class":70},[56,984,338],{"class":74},[56,986,113],{"class":70},[56,988,343],{"class":74},[56,990,346],{"class":70},[56,992,180],{"class":70},[56,994,996],{"class":58,"line":995},11,[56,997,998],{"class":91},"    // Watermark\n",[56,1000,1002,1004,1006,1008,1010,1012,1014,1016,1018,1020,1022,1024,1026,1028,1030,1033,1035,1037,1039,1041,1043,1045,1047,1049],{"class":58,"line":1001},12,[56,1003,353],{"class":66},[56,1005,113],{"class":70},[56,1007,358],{"class":116},[56,1009,120],{"class":70},[56,1011,363],{"class":66},[56,1013,113],{"class":70},[56,1015,368],{"class":116},[56,1017,120],{"class":70},[56,1019,373],{"class":288},[56,1021,376],{"class":70},[56,1023,379],{"class":66},[56,1025,113],{"class":70},[56,1027,368],{"class":116},[56,1029,120],{"class":70},[56,1031,1032],{"class":288},"140",[56,1034,376],{"class":70},[56,1036,329],{"class":70},[56,1038,395],{"class":332},[56,1040,335],{"class":70},[56,1042,338],{"class":74},[56,1044,113],{"class":70},[56,1046,404],{"class":74},[56,1048,346],{"class":70},[56,1050,180],{"class":70},[56,1052,1054,1056,1058,1060,1062,1064,1067,1069],{"class":58,"line":1053},13,[56,1055,413],{"class":66},[56,1057,113],{"class":70},[56,1059,418],{"class":116},[56,1061,120],{"class":70},[56,1063,71],{"class":70},[56,1065,1066],{"class":125},"CONFIDENTIAL",[56,1068,71],{"class":70},[56,1070,239],{"class":70},[56,1072,1074,1076,1078,1080,1082,1085],{"class":58,"line":1073},14,[56,1075,434],{"class":66},[56,1077,113],{"class":70},[56,1079,439],{"class":116},[56,1081,120],{"class":70},[56,1083,1084],{"class":288},"60",[56,1086,266],{"class":70},[56,1088,1090,1092,1094,1096,1098,1100,1102,1105,1108,1111,1114,1117,1119,1122,1124,1126,1128,1131,1133,1135,1137,1140,1142,1145,1147,1150,1152,1155,1157,1160],{"class":58,"line":1089},15,[56,1091,434],{"class":66},[56,1093,113],{"class":70},[56,1095,455],{"class":116},[56,1097,120],{"class":70},[56,1099,460],{"class":74},[56,1101,113],{"class":70},[56,1103,1104],{"class":74},"Color",[56,1106,1107],{"class":70},"{",[56,1109,1110],{"class":66},"R",[56,1112,1113],{"class":70},":",[56,1115,1116],{"class":288}," 0.9",[56,1118,101],{"class":70},[56,1120,1121],{"class":66}," G",[56,1123,1113],{"class":70},[56,1125,1116],{"class":288},[56,1127,101],{"class":70},[56,1129,1130],{"class":66}," B",[56,1132,1113],{"class":70},[56,1134,1116],{"class":288},[56,1136,101],{"class":70},[56,1138,1139],{"class":66}," A",[56,1141,1113],{"class":70},[56,1143,1144],{"class":288}," 1",[56,1146,101],{"class":70},[56,1148,1149],{"class":66}," Space",[56,1151,1113],{"class":70},[56,1153,1154],{"class":66}," pdf",[56,1156,113],{"class":70},[56,1158,1159],{"class":66},"ColorSpaceRGB",[56,1161,1162],{"class":70},"}),\n",[56,1164,1166],{"class":58,"line":1165},16,[56,1167,478],{"class":70},[56,1169,1171],{"class":58,"line":1170},17,[56,1172,483],{"class":70},[56,1174,1176],{"class":58,"line":1175},18,[56,1177,85],{"emptyLinePlaceholder":84},[56,1179,1181],{"class":58,"line":1180},19,[56,1182,1183],{"class":91},"    // Page number (bottom-right)\n",[56,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1223,1225,1227,1229,1231,1233],{"class":58,"line":1186},20,[56,1188,353],{"class":66},[56,1190,113],{"class":70},[56,1192,358],{"class":116},[56,1194,120],{"class":70},[56,1196,363],{"class":66},[56,1198,113],{"class":70},[56,1200,368],{"class":116},[56,1202,120],{"class":70},[56,1204,600],{"class":288},[56,1206,376],{"class":70},[56,1208,379],{"class":66},[56,1210,113],{"class":70},[56,1212,368],{"class":116},[56,1214,120],{"class":70},[56,1216,613],{"class":288},[56,1218,376],{"class":70},[56,1220,329],{"class":70},[56,1222,395],{"class":332},[56,1224,335],{"class":70},[56,1226,338],{"class":74},[56,1228,113],{"class":70},[56,1230,404],{"class":74},[56,1232,346],{"class":70},[56,1234,180],{"class":70},[56,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1269,1271,1273,1275,1277],{"class":58,"line":1237},21,[56,1239,413],{"class":66},[56,1241,113],{"class":70},[56,1243,418],{"class":116},[56,1245,120],{"class":70},[56,1247,644],{"class":66},[56,1249,113],{"class":70},[56,1251,649],{"class":116},[56,1253,120],{"class":70},[56,1255,71],{"class":70},[56,1257,657],{"class":656},[56,1259,660],{"class":125},[56,1261,657],{"class":656},[56,1263,71],{"class":70},[56,1265,101],{"class":70},[56,1267,1268],{"class":66}," i",[56,1270,672],{"class":70},[56,1272,675],{"class":288},[56,1274,101],{"class":70},[56,1276,680],{"class":66},[56,1278,266],{"class":70},[56,1280,1282,1284,1286,1288,1290,1292],{"class":58,"line":1281},22,[56,1283,434],{"class":66},[56,1285,113],{"class":70},[56,1287,439],{"class":116},[56,1289,120],{"class":70},[56,1291,695],{"class":288},[56,1293,266],{"class":70},[56,1295,1297,1299,1301,1303],{"class":58,"line":1296},23,[56,1298,434],{"class":66},[56,1300,113],{"class":70},[56,1302,706],{"class":116},[56,1304,709],{"class":70},[56,1306,1308],{"class":58,"line":1307},24,[56,1309,478],{"class":70},[56,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1333],{"class":58,"line":1312},25,[56,1314,718],{"class":70},[56,1316,721],{"class":66},[56,1318,113],{"class":70},[56,1320,726],{"class":116},[56,1322,120],{"class":70},[56,1324,363],{"class":66},[56,1326,113],{"class":70},[56,1328,368],{"class":116},[56,1330,120],{"class":70},[56,1332,739],{"class":288},[56,1334,742],{"class":70},[56,1336,1338],{"class":58,"line":1337},26,[56,1339,488],{"class":70},[56,1341,1343],{"class":58,"line":1342},27,[56,1344,85],{"emptyLinePlaceholder":84},[56,1346,1348,1350,1352,1354,1356,1358,1360,1362],{"class":58,"line":1347},28,[56,1349,760],{"class":66},[56,1351,101],{"class":70},[56,1353,104],{"class":66},[56,1355,107],{"class":70},[56,1357,531],{"class":66},[56,1359,113],{"class":70},[56,1361,773],{"class":116},[56,1363,539],{"class":70},[56,1365,1367,1369,1371,1373,1375,1377,1380,1382,1384,1386,1388,1390],{"class":58,"line":1366},29,[56,1368,810],{"class":66},[56,1370,113],{"class":70},[56,1372,815],{"class":116},[56,1374,120],{"class":70},[56,1376,71],{"class":70},[56,1378,1379],{"class":125},"report_stamped.pdf",[56,1381,71],{"class":70},[56,1383,101],{"class":70},[56,1385,829],{"class":66},[56,1387,101],{"class":70},[56,1389,834],{"class":288},[56,1391,131],{"class":70},[10,1393,1395],{"id":1394},"api-参考","API 参考",[1397,1398,1399,1412],"table",{},[1400,1401,1402],"thead",{},[1403,1404,1405,1409],"tr",{},[1406,1407,1408],"th",{},"方法",[1406,1410,1411],{},"说明",[1413,1414,1415,1426,1436,1446,1456],"tbody",{},[1403,1416,1417,1423],{},[1418,1419,1420],"td",{},[53,1421,1422],{},"gpdf.Open(data, opts...)",[1418,1424,1425],{},"打开已有 PDF 进行修改",[1403,1427,1428,1433],{},[1418,1429,1430],{},[53,1431,1432],{},"doc.PageCount()",[1418,1434,1435],{},"获取页面数量",[1403,1437,1438,1443],{},[1418,1439,1440],{},[53,1441,1442],{},"doc.Overlay(pageIndex, fn)",[1418,1444,1445],{},"在指定页面上添加内容（从 0 开始）",[1403,1447,1448,1453],{},[1418,1449,1450],{},[53,1451,1452],{},"doc.EachPage(fn)",[1418,1454,1455],{},"在每一页上添加内容",[1403,1457,1458,1463],{},[1418,1459,1460],{},[53,1461,1462],{},"doc.Save()",[1418,1464,1465],{},"返回修改后的 PDF 字节",[10,1467,1468],{"id":1468},"下一步",[26,1470,1471,1479,1486],{},[29,1472,1473,1478],{},[1474,1475,1477],"a",{"href":1476},"/zh/docs/guide/basic-usage","基本用法"," — 从零创建 PDF",[29,1480,1481,1485],{},[1474,1482,1484],{"href":1483},"/zh/docs/guide/styling","样式"," — 颜色、文本装饰和排版",[29,1487,1488,1491,1492,1495],{},[1474,1489,1395],{"href":1490},"/zh/docs/api-reference/gpdf"," — 完整的 ",[53,1493,1494],{},"gpdf"," 包参考",[1497,1498,1499],"style",{},"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 .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}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 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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":51,"searchDepth":81,"depth":81,"links":1501},[1502,1503,1504,1505,1506,1507,1508,1509],{"id":12,"depth":81,"text":12},{"id":43,"depth":81,"text":44},{"id":298,"depth":81,"text":298},{"id":506,"depth":81,"text":506},{"id":750,"depth":81,"text":750},{"id":846,"depth":81,"text":847},{"id":1394,"depth":81,"text":1395},{"id":1468,"depth":81,"text":1468},"打开已有的 PDF 并在其上添加文本、图片、印章和页码","md",{},"/zh/docs/guide/overlay",{"title":5,"description":1510},"zh/docs/2.guide/7.overlay","NM-oyrZysvNW_i43ecNEPUQq5U0I6UAMJFY5PolyKxw",1776529282781]