我正在嘗試使用 PDFBox 向 PDF 頁面添加文本行。我正在使用以下代碼
PDPageContentStream cs = new PDPageContentStream(document, page, PDPageContentStream.AppendMode.APPEND, false);
cs.beginText();
cs.setFont(font, fontSize);
cs.newLineAtOffset(posX, posY);
cs.showText(text);
cs.endText();
cs.close();
這在大多數檔案上都可以正常作業,但是我遇到了一個特定檔案的問題,其中文本顯示為白色(不確定為什么以這種方式呈現文本)并且由于頁面背景本身是白色而不可見,所以我想要做的理想是為這個文本設定一個固定的黑色。怎么做到呢?
uj5u.com熱心網友回復:
正如Tilman Hausherr和其他人在評論中指出的那樣,問題在于以追加模式打開流而不將 resetContext 引數設定為 true 會導致呈現文本的許多問題,因此使用
PDPageContentStream(document, page, PDPageContentStream.AppendMode.APPEND, false, true)
代替
PDPageContentStream(document, page, PDPageContentStream.AppendMode.APPEND, false)
解決了無法正確呈現文本的問題。另外,如果要為文本設定自定義顏色,則需要呼叫
cs.setNonStrokingColor(r, g, b);
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/365512.html
上一篇:kpathsea:運行mktexfmtxelatex.fmt找不到格式檔案`xelatex.fmt'
下一篇:自定義Angular編譯器錯誤
