gpt4 book ai didi

dynamic - 当文本需要超过一页时,如何使 ABCPdf 自动写入新页面?

转载 作者:行者123 更新时间:2023-12-02 15:02:04 24 4
gpt4 key购买 nike

我处理动态输入文本,因此应该动态创建页面。如果第 1 页已经满了,它应该写入一个新页面,所以这意味着我可以根据处理的数据拥有第 2 页、第 3 页等等。

目前,我的文字已被截断。只写入Page 1,其余数据不写入。

我当前的代码如下:

//add page 1
theDoc.Page = theDoc.AddPage();
theDoc.AddImageHtml(html, true, 826, true);

//continue adding page if needed
while (theDoc.GetInfo(theID, "Truncated") == "1")
{
theDoc.Page = theDoc.AddPage();
theDoc.AddImageHtml(html, true, 826, true);
}

//save file
String pdfFilePath = WebConfigurationManager.AppSettings["pdfFilePath"];
Guid fileName = Guid.NewGuid();
pdfLink = pdfFilePath + fileName.ToString() + ".pdf";
theDoc.Save(pdfLink);
theDoc.Clear();

变量 html 包含所有数据(网页),我可能在 while 循环中遗漏了一些内容。任何帮助表示赞赏!谢谢

最佳答案

Found it, Use Chainable and then Flatten()

theDoc.Page = theDoc.AddPage();
int theID;
theID = theDoc.AddImageUrl("http://www.yahoo.com/");

while (true) {
theDoc.FrameRect(); // add a black border
if (!theDoc.Chainable(theID))
break;
theDoc.Page = theDoc.AddPage();
theID = theDoc.AddImageToChain(theID);
}

for (int i = 1; i <= theDoc.PageCount; i++) {
theDoc.PageNumber = i;
theDoc.Flatten();
}

关于dynamic - 当文本需要超过一页时,如何使 ABCPdf 自动写入新页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23535842/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com