扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:奚江华 来源:msdn中国 2007年11月20日
关键字:
请在 TextBlockDownloaderODTTF.xaml.js 程式中建立 Downloader 相关程式:
TextBlockDownloaderODTTF.xaml.js
以下是引用片段: var delegate1; var delegate2; // Loaded 事件的事件处理常式 function handleLoad(sender, eventArgs) { // 取得Silverlight Plugin的参考。 var slPlugin = sender.getHost(); // 建立Downloader 物件 var downloader = slPlugin.createObject("downloader"); // 建立DownloadProgressChanged 与Completed 事件委派。 delegate1 = downloader.addEventListener("downloadProgressChanged", onDownloadProgressChanged); delegate2 = downloader.addEventListener("completed", onCompleted); // 初始化下载要求 downloader.open("GET", "Fonts/EmbededChinese.zip"); // 开始传送下载 downloader.send(); } // Completed 事件处理常式 function onCompleted(sender, eventArgs) { // 取消DownloadProgressChanged 事件与其事件处理常式的委派关係 sender.removeEventListener("downloadProgressChanged", delegate1); // 取消Completed 事件与其事件处理常式的委派关係。 sender.removeEventListener("completed", delegate2); var textblock = sender.findName("myTextBlock"); textblock.setFontSource(sender); textblock.TextWrapping="Wrap"; textblock.fontFamily="Microsoft JhengHei"; // 将Downloader 物件设定成null sender = null; } // 负责更新进度列 function onDownloadProgressChanged(sender, eventArgs) { var progressText = sender.findName("progressText"); var progressRectangle = sender.findName("progressRectangle"); // 计算下载的百分比 var percentage = Math.floor(sender.downloadProgress * 100); // 更新进度列的Rectangle 与TextBlock 物件 progressText.text = percentage + "%"; progressRectangle.width = percentage * 2; } |
程式说明:
正黑体字型的
图 8 TextBlock 显示部分嵌入 ODTTF 字型档
警告:
ODTTF 档的名称不可以任意做更改,否则便无法作用。
若要使用到的中文字都必须事先出现在 ODTTF 档之中,不可以临时使用未曾事先输入的中文字
ODTTF 字型档除了事先製作外,也可以动态产生,请参考另一位微软
http://www.microsoft.com/taiwan/msdn/columns/huang_jhong_cheng/Silverlight_cht_solutions.htm
(二)Path 向量绘图物件
将中文字型转换成 Path 向量绘图物件,其原理是将中文字转换成大量的绘图座标资讯,并且透过 Path 几何绘图物件来显示这些座标资料。但是使用这个方法有一点要特别注意,一旦将文字转换成 Path 物件之后,它就是图形,无论它是不是向量与否,它已不再是文字了,因此不能被检索查询,也不能以字串的型式存入资料库,更不可被 Search Engine 搜寻引擎所爬文检索。故倘若您的网站很在意是否能被搜寻引擎爬文检索,进而影响您的网站或商品在搜寻引擎网站可以被使用者或顾客查询到,就要特别意识到避免使用这个方法。
然而将中文字型转换成 Path 向量绘图物件有两个简单的基本型式,第一是使用像 Expression Blend 2 这类的工具将文字转换成 Path 物件,第二个方式是撰写一个 Web Services,透过程式呼叫 Web Services 将转换后的 Path 物件回传给 Silverlight
图 9 中文字型转换成 Path 向量图形
范例五 使用 Blend 2 将中文字型转换成 Path 向量绘图物件
本范例将示范使用 Blend 2 将中
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者