翻譯|使用教程|編輯:董玉霞|2022-05-05 15:45:21.407|閱讀 718 次
概述:本文主要介紹了如何在FastReport .Net中自定義字體
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
現(xiàn)代電子報(bào)告的要求相當(dāng)高——它們不僅要顯示必要的信息,而且要有一定的設(shè)計(jì)、數(shù)據(jù)格式和圖形內(nèi)容。現(xiàn)代報(bào)告是具有設(shè)計(jì)元素的復(fù)雜文檔。報(bào)告生成器的快速發(fā)展增加了對(duì)文檔的要求。
報(bào)表中的特定字體可以是公司要求或設(shè)計(jì)元素,許多報(bào)告生成器用戶(hù)希望能夠使用自定義字體, 報(bào)表開(kāi)發(fā)工具FastReport.NET 可以滿(mǎn)足這個(gè)需求。
現(xiàn)在不必安裝字體即可在報(bào)告中使用它們,可以在構(gòu)建之前將它們添加到報(bào)告中。將報(bào)告導(dǎo)出為 PDF 格式允許在文檔中包含自定義字體。看一個(gè)示例,說(shuō)明如何將 ttf 字體添加到報(bào)表以及如何將報(bào)表導(dǎo)出為包含這些字體的 PDF。
//讓我們創(chuàng)建一個(gè)報(bào)告Report report = Report();
//我們從文件夾中獲取所需字體的文件var fonts = Directory.GetFiles("Fonts");
//每種字體都添加到報(bào)表生成器配置中foreach (var font in fonts) { Config.PrivateFontCollection.AddFontFile(font); }// 讓我們從 Fonts 文件夾報(bào)告中加載一個(gè)包含設(shè)置字體的文本對(duì)象的報(bào)告模板。report.Load(@"test.frx");
//準(zhǔn)備報(bào)告report.Prepare();
//創(chuàng)建一個(gè)用于導(dǎo)出為 PDF 的對(duì)象并設(shè)置要包含在文檔中的字體var export = PDFExport { EmbeddingFonts = true };//讓我們導(dǎo)出報(bào)告報(bào)告。導(dǎo)出(導(dǎo)出,文件。report.Export(export, File.Create(@"test.pdf"));
報(bào)告模板有什么用?為了在設(shè)計(jì)器中創(chuàng)建報(bào)表時(shí)使用非標(biāo)準(zhǔn)字體,仍然需要在系統(tǒng)中安裝它們(雙擊ttf字體)。如果在沒(méi)有使用該模板的字體的系統(tǒng)中打開(kāi)報(bào)告模板,將看到字體已被標(biāo)準(zhǔn)字體替換。但是,如果在文本編輯器中打開(kāi)模板,將看到實(shí)際的字體設(shè)置:
<TextObject Name="Text8" Left="359.1" Width="179.55" Height="18.9" Text="Roboto-Black.ttf" Font="Roboto Black, 10pt"/>
因此,如果有一個(gè)帶有系統(tǒng)中未安裝字體的報(bào)表模板,將無(wú)法在不丟失字體設(shè)置的情況下對(duì)其進(jìn)行編輯,但如果將這些字體添加到 FastReport.NET 配置中,可以構(gòu)建并導(dǎo)出它。
假設(shè)在安裝了字體的系統(tǒng)上創(chuàng)建了一個(gè)報(bào)告模板。在上面的代碼中,將字體添加到配置中:
在將報(bào)告導(dǎo)出為 PDF 之前顯示報(bào)告。添加一行“report.Show();”。這是報(bào)告中字體的樣子:
這是 PDF 文檔中字體的外觀:
因此,如果不需要開(kāi)發(fā)帶有非標(biāo)準(zhǔn)字體的報(bào)表,而只是顯示或?qū)С鏊鼈儯敲葱枰谙到y(tǒng)中安裝這些字體,使用自定義字體分發(fā)報(bào)告,這會(huì)很方便。
本文主要介紹了如何在FastReport .Net中自定義字體,更多FastReport .Net使用教程可點(diǎn)擊了解。
FastReport .NetQQ群:702295239 歡迎進(jìn)群一起討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn