.HELVETICA,18,字体粗体)在CreateFont上使用的fontFile是什么?PDF规范声明了所有符合者(如iText和Adobe Reader)必须“意识到”的4种文本字体和1种符号字体(计算变体时总共14种)。HELVETICA就是其中之

.HELVETICA,18,字体粗体)在CreateFont上使用的fontFile是什么?PDF规范声明了所有符合者(如iText和Adobe Reader)必须“意识到”的4种文本字体和1种符号字体(计算变体时总共14种)。HELVETICA就是其中之,itext,Itext,.HELVETICA,18,字体粗体)在CreateFont上使用的fontFile是什么?PDF规范声明了所有符合者(如iText和Adobe Reader)必须“意识到”的4种文本字体和1种符号字体(计算变体时总共14种)。HELVETICA就是其中之一。这些核心文本字体支持7位ASCII标准,但8位部分有点灰色。基本上,如果你不指定自己的字体,你将依赖于90年代初的字体(或者80年代的字体,如果它们来自PostScript)。我已经不理解不间断连字符的问题,但我把它放在了一起,没有起作用。


.HELVETICA,18,字体粗体)在
CreateFont
上使用的
fontFile
是什么?PDF规范声明了所有符合者(如iText和Adobe Reader)必须“意识到”的4种文本字体和1种符号字体(计算变体时总共14种)。HELVETICA就是其中之一。这些核心文本字体支持7位ASCII标准,但8位部分有点灰色。基本上,如果你不指定自己的字体,你将依赖于90年代初的字体(或者80年代的字体,如果它们来自PostScript)。我已经不理解不间断连字符的问题,但我把它放在了一起,没有起作用。不,我明白是因为字体问题。不,我有一个问题,我的所有字体都声明为
font\u bigBold=新字体(font.fontfamice.HELVETICA,18,font.BOLD)
CreateFont
上使用的
fontFile
是什么?PDF规范声明了所有符合者(如iText和Adobe Reader)必须“意识到”的4种文本字体和1种符号字体(计算变体时总共14种)。HELVETICA就是其中之一。这些核心文本字体支持7位ASCII标准,但8位部分有点灰色。基本上,如果你不指定自己的字体,你将依赖90年代早期的字体(或者80年代的字体,如果它们来自PostScript)。
    Phrase p = new Phrase();
    Chunk c1 = new Chunk("FirstName LastName (2016-01-13 11:13)");
    p.Add(c1);
    Chunk c2 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c2);
    Chunk c3 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c3);
    Chunk c4 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c4);
    Chunk c5 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c5);
    Chunk c6 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c6);
    Chunk c7 = new Chunk("FirstName LastName (2016-01-13 11:13)")
    p.Add(c7);
var testString = "FirstName LastName (2016-01-13 11:13)";
var nbsp = "\u00a0";
var nbhy = "\u2011";

//With a normal space
var p1 = new Phrase();
for (var i = 0; i < 100; i++) {
    p1.Add(new Chunk(testString + " "));
}
doc.Add(p1);


//Create a font that supports our "hard hyphen"
var bf = BaseFont.CreateFont(fontFile, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
var f = new iTextSharp.text.Font(bf, 12);
testString = testString.Replace(" ", nbsp).Replace("-", nbhy);

//With a non-breaking space
var p2 = new Phrase();
for (var i = 0; i < 100; i++) {
    p2.Add(new Chunk(testString + " ", f));
}
doc.Add(p2);
public class CustomSplitCharacter : ISplitCharacter
{
    public bool IsSplitCharacter(
        int start, int current, int end, char[] cc, PdfChunk[] ck)
    {
        char c = ck == null
            ? cc[current]
            : (char)ck[Math.Min(current, ck.Length - 1)]
                .GetUnicodeEquivalent(cc[current])
        ;
        return (c == ')');
    }
}
string chunkText = "FirstName LastName (2016-01-13 11:13)";
Random random = new Random();
var font = new Font(Font.FontFamily.HELVETICA, 10, Font.BOLD); 
using (Document document = new Document())
{
    PdfWriter.GetInstance(document, stream);
    document.Open();
    Phrase phrase = new Phrase();
    for (var i = 0; i < 1000; ++i)
    {
        var asterisk = new String('*', random.Next(1, 20));
        Chunk chunk = new Chunk(
            string.Format("[{0}] {1}", asterisk, chunkText), 
            font
        );
        chunk.SetSplitCharacter(new CustomSplitCharacter());
        phrase.Add(chunk);
    }

    document.Add(phrase);
}