如何使用 PoDoFo 库嵌入 Base14 字体
How to embed Base14 fonts using the PoDoFo library
我正在使用 PoDoFo 库生成 PDF 文档。除了 Base14 字体("Courier"、"Helvetica"、"Times"、"Symbol"、"ZapfDingbats")之外的所有字体都被嵌入。
如何嵌入这4种Base14字体?
默认情况下,CreateFont()
函数使用 EFontCreationFlags::eFontCreationFlags_AutoSelectBase14
属性(因此不必给出)。
PoDoFo::PdfDocument *pDocument;
...
pDocument->CreateFont("Times", false, false, false,
PoDoFo::PdfEncodingFactory::GlobalIdentityEncodingInstance(),
PoDoFo::PdfFontCache::eFontCreationFlags_AutoSelectBase14
);
此属性使函数自动检查字体是否为Base14 字体,如果是,则PoDoFo 不会嵌入该字体。使用 PdfFontCache::eFontCreationFlags_None 标志嵌入字体。
PoDoFo::PdfDocument *pDocument;
...
pDocument->CreateFont("Times", false, false, false,
PoDoFo::PdfEncodingFactory::GlobalIdentityEncodingInstance(),
PoDoFo::PdfFontCache::eFontCreationFlags_None
);
我正在使用 PoDoFo 库生成 PDF 文档。除了 Base14 字体("Courier"、"Helvetica"、"Times"、"Symbol"、"ZapfDingbats")之外的所有字体都被嵌入。 如何嵌入这4种Base14字体?
默认情况下,CreateFont()
函数使用 EFontCreationFlags::eFontCreationFlags_AutoSelectBase14
属性(因此不必给出)。
PoDoFo::PdfDocument *pDocument;
...
pDocument->CreateFont("Times", false, false, false,
PoDoFo::PdfEncodingFactory::GlobalIdentityEncodingInstance(),
PoDoFo::PdfFontCache::eFontCreationFlags_AutoSelectBase14
);
此属性使函数自动检查字体是否为Base14 字体,如果是,则PoDoFo 不会嵌入该字体。使用 PdfFontCache::eFontCreationFlags_None 标志嵌入字体。
PoDoFo::PdfDocument *pDocument;
...
pDocument->CreateFont("Times", false, false, false,
PoDoFo::PdfEncodingFactory::GlobalIdentityEncodingInstance(),
PoDoFo::PdfFontCache::eFontCreationFlags_None
);