- 浏览: 245069 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (293)
- web (1)
- [随笔分类]项目管理 (30)
- [随笔分类]WCF (14)
- 未分类 (1)
- [随笔分类]Linq (4)
- [随笔分类]C#基础 (24)
- 项目 (1)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (8)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (9)
- [随笔分类]Ubuntu (4)
- ASP.Net (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (30)
- [随笔分类]ASP.NET MVC (20)
- [随笔分类]ASP.NET (3)
- [随笔分类]程序员厨房 (4)
- [随笔分类]英语学习 (28)
- [网站分类]4.其他技术区 (1)
- [随笔分类]Silverlight (12)
- [随笔分类]CodeSmith (8)
- [随笔分类]其他 (4)
- [随笔分类]Ruby (4)
- [发布至博客园首页] (34)
- [网站分类]其他技术区 (3)
- [随笔分类]Ruby on Rails (2)
- [网站分类].NET新手区 (33)
- [随笔分类]TDD (1)
- [随笔分类]不谈技术 (2)
- [网站分类]非技术区 (7)
最新评论
-
yicone:
You make a mistake when paste t ...
WCF步步为营(一):简单示例 -
jinweijie:
你好,这个实现不错,但是在用了scriptmanager以后就 ...
在服务器端保存ViewState
silverlight显示中文字(二):使用TextBlock+Downloader
(一),建立一个Silverlight1.0 site.
(二)修改page.xaml为如下内容
<!----><Canvas xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<!-- 進度列指示器 -->
<Canvas x:Name="ProgressIndicator" Canvas.Left="10"
Canvas.Top="10" Canvas.ZIndex="1">
<Rectangle x:Name="progressRectangle"
Canvas.Left="10"
Height="10" Width="0"
Fill="Maroon" />
<Rectangle
Canvas.Top ="-1"
Canvas.Left="9" Height="12"
Width="202"
StrokeThickness="1" Stroke="Black" />
<TextBlock
x:Name="progressText"
Canvas.Top ="-4" Canvas.Left="230"
Text="0%" FontSize="12" />
</Canvas>
<Canvas Name="myCanvas" Background="LightBlue" Width="600"
Height="400" Canvas.Top="0" Canvas.ZIndex="0" >
<TextBlock Name="myTextBlock"
TextWrapping="Wrap" Width="343" FontSize="30"
Canvas.Top="100" Canvas.Left="100" Loaded="handleLoad" Height="150.1"
Text="国足继续恐韩">
</TextBlock>
</Canvas>
</Canvas>
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
<!-- 進度列指示器 -->
<Canvas x:Name="ProgressIndicator" Canvas.Left="10"
Canvas.Top="10" Canvas.ZIndex="1">
<Rectangle x:Name="progressRectangle"
Canvas.Left="10"
Height="10" Width="0"
Fill="Maroon" />
<Rectangle
Canvas.Top ="-1"
Canvas.Left="9" Height="12"
Width="202"
StrokeThickness="1" Stroke="Black" />
<TextBlock
x:Name="progressText"
Canvas.Top ="-4" Canvas.Left="230"
Text="0%" FontSize="12" />
</Canvas>
<Canvas Name="myCanvas" Background="LightBlue" Width="600"
Height="400" Canvas.Top="0" Canvas.ZIndex="0" >
<TextBlock Name="myTextBlock"
TextWrapping="Wrap" Width="343" FontSize="30"
Canvas.Top="100" Canvas.Left="100" Loaded="handleLoad" Height="150.1"
Text="国足继续恐韩">
</TextBlock>
</Canvas>
</Canvas>
(3)
在page.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", "simhei.zip");
//下载未压缩的TTF字型也可以
//downloader.open("GET", "simhei.ttf");
// 开始下载
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.fontFamily="SimHei";
//将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;
}
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", "simhei.zip");
//下载未压缩的TTF字型也可以
//downloader.open("GET", "simhei.ttf");
// 开始下载
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.fontFamily="SimHei";
//将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;
}
(4) 压缩完整的simHei.ttf为simHei.zip,拷贝到项目的目录
(5)选择Test.site,先看到下面的第一章图,等下载完后,就会显示正常了
有朋友问了,那能不能只下载部分使用的字体呢? 我想是可以的,但是按照之前的方法却怎么也显示不出来,那位朋友知道是什么原因,麻烦告诉我一生,谢谢。
还有当我创建Silver Light Application(Orcas)项目,也就是1.1的项目时,不管是完整的,部分的都不行。
发表评论
-
ASP.Net2.0使用Log4Net(一)
2007-11-24 15:40 1653第一种方法 在web.config中写配置文件 L ... -
ASP.Net2.0使用Log4Net(二)
2007-11-24 17:39 898(二)使用单独的配置文件,不放在web.config里 1. ... -
UML学习笔记
2007-11-25 09:55 675一、UML中的关系 依赖: 如果对象X发生变化,引起另一个对 ... -
NBear学习笔记(一)
2007-12-01 21:14 1092使用已有数据库。(之前先设计实体,再自动生成数据库,发现每次 ... -
NBear学习笔记(二)
2007-12-02 17:14 814本篇演示一对多关系,和两个表联合查询。 使用已有数据库,我们演 ... -
NBear学习笔记(三)
2007-12-04 22:11 850上一篇一对多的关系说的不是很清楚,这篇补充一下。 这篇我们创建 ... -
CSS使用总结
2007-12-12 21:10 633在分配ID和类名时,尽可能保持与表现形式无关,例如con ... -
ASP.NET2.0缓存技术
2007-12-12 23:33 684ASP.NET2.0提供如下缓存方式: Output Cac ... -
VS2008正式版创建silverlight项目失败的解决办法
2008-02-16 09:49 806安装microsoft express blend2 最新的试 ... -
vista英文版语言包安装
2008-02-17 21:35 1071最近,需要给老外截英文vista的一些图,但是系统装的是中文版 ... -
SilverLight显示中文字(一)
2008-02-18 14:42 933我们知道silverlight只提供了一下几种字体, 当我们 ... -
SilverLight显示中文字(三) :使用Path和图形
2008-02-18 16:59 664使用path将文字转换为路径 用Direct select ... -
在Silverlight1.1中定义与调用Javascript事件的方法
2008-02-20 13:19 674我们在silverlight1.0 想调用javascrip ... -
在线流程图制作工具
2008-02-26 22:32 12231. DrawAnywhere , 的在线流程图制作工具。 D ... -
VS2008下开发ASP.Net2.0 and AJAX1.0的程序
2008-03-05 13:57 1027为什么要在vs2008下开发ASP.Net2.0 and AJ ... -
VS2008开发Silverlight2程序:环境安装
2008-03-06 13:36 1666微软在MIX08大会,发布了Silverlight 2 Bet ... -
ASP.NET 2.0 XML 系列(1): XML介绍
2008-03-15 12:40 6961.1 简介 XML的一个强大之处在于它的强大可扩展性。XM ... -
ASP.NET 2.0 XML 系列(2): XML技术
2008-03-15 14:13 6671. DTD XML最强大之处是允许自定义标签,但是对 ... -
ASP.NET 2.0 XML 系列(3): .Net Framework中XML类
2008-03-15 14:52 589System.Xml包含了一些和XML文档的读写操作相关的类, ... -
ASP.NET 2.0 XML 系列(4):用XmlReader类介绍
2008-03-15 16:02 1325(本文摘自MSDN) XmlReader 类是一个提供 ...
相关推荐
安卓刷机必备工具!刷机有风险,操作需谨慎!
阿德 这是 + 。 目标? 键入adl ,按回车键,选择节目,观看节目,以尽可能少的输入来更新剧集编号。 特征 从您的帐户中获取当前正在观看的动漫; 更改Trackma使用的帐户的选项;... 不显示详细的vlc输
从任何网页轻松下载视频、MP3或Flash游戏。下载音乐,高清下载,是最流行的视频下载工具。
下载网页上的视频,包括批量下载并组合.ts文件。内有文档
SMD Downloader工具无任何加密F339使用SMD Downloader刷机工具SMD+教程,昨天刷机成功!!
软件名称: Visual Studio 2010 Help Downloader 原 名 称: Visual Studio 2010 Help Downloader 原 官 网: http://vshelpdownloader.codeplex.com/ (已失效) 软件版本: 2.0.0.0 Beta 基础版本: 1.0.0.3 Beta ...
python库。 资源全名:python-file-downloader-1.0.0.tar.gz
SMD Downloader工具无任何加密F339使用SMD Downloader刷机工具SMD+教程,昨天刷机成功!!
Melon Google Books Downloader mgbd.exe Melon Google Books Downloader mgbd.exe
软件名称: Visual Studio 2010 Help Downloader 原 名 称: Visual Studio 2010 Help Downloader 原 官 网: http://vshelpdownloader.codeplex.com/ (已失效) 软件版本: 2.0.0.5 Beta 基础版本: 1.0.0.3 Beta ...
用于Instagram:trade_mark:的图像下载器是一个Lite插件,可让您轻松地从...为了报告错误,请在附件的首页(http://mybrowseraddon.com/image-downloader-for-instagram.html)中填写错误报告表格。 支持语言:English
VSO Downloader不仅是一个在线视频下载器,也是个支持非视频文件下载。最大特点是支持视频播放时候广告屏蔽播放。 VSO Downloader 功能特点: 1、尽可能少的消耗系统资源。 2、断点续传。视频下载中断后...
软件名称: Visual Studio 2010 Help Downloader 原 名 称: Visual Studio 2010 Help Downloader 原 官 网: http://vshelpdownloader.codeplex.com/ (已失效) 软件版本: 2.0.0.2 Beta 基础版本: 1.0.0.3 Beta ...
python库。 资源全名:census-data-downloader-0.0.14.tar.gz
DownLoader_DownLoader带进度条的下载程序Demo源码.rar
一款专业的功能强大的在线视频下载器VSO Downloader,它堪称是一款万能的视频下载工具,能够下载国内外在线视频网站的视频,支持所有的浏览器,能够自动侦测网页中的视频,全自动下载视频而无需复制视频链接地址。...
python库,解压后可用。 资源全名:cryptoasset_data_downloader-1.0.6-py3-none-any.whl
名称:APK Downloader ---------------------------------------- 版本:1.2.1 作者:https://apkcombo.com/ 分类:开发者工具 ---------------------------------------- 概述:在线从Google Play 下载APK & OBB...
资源来自pypi官网。 资源全名:cryptoasset_data_downloader-1.0.6-py3-none-any.whl
请注意,您必须在 laracasts 上拥有一个帐户才能使用此实用程序。 运行刮刀 为您的系统下载适当的预编译包并运行它: ./laracasts-downloader myusername mypassword dest/ 从源代码运行: go run laracasts-...