Можно ли использовать файлы шрифтов .eot в Silverlight? - PullRequest
2 голосов
/ 31 июля 2010

Я пытаюсь выяснить, можно ли использовать в Silverlight файлы Embedded Open Type (.eot). Я нашел более старый пост , в котором говорится, что они не могут, но ему несколько лет, и учитывая, как быстро переместился SL, я не уверен, изменился ли он.

Если так, как они будут использоваться? Как <Glyph/> объект или ...?

Ответы [ 2 ]

3 голосов
/ 01 августа 2010

Нет.Это потому, что Silverlight (как Flash) считает себя «приложением», а не «документом».Существует много шуток по этому вопросу: встраивание шрифтов против ссылок и веб-шрифтов .Silverlight неправильно использует слово «встраивать», где вместо этого оно фактически «связывает».

Как и в любой хорошей технологии, возможно, возможно будет выполнить обратный инжиниринг файла EOT - эти парни из системы безопасности сделали это, используя IE: Обратное проектирование встроенной декомпрессии OpenType .Я не думаю, что это было бы незаконно в любом случае, поскольку сжатие / распаковка - это отправка в W3C на http://www.w3.org/Submission/2008/SUBM-MTX-20080305/ (хотя это может немного разозлить производителей шрифтов).Или, может быть, вы можете посмотреть на этот конвертер ttf-to-eot и сделать обратное: http://code.google.com/p/ttf2eot/

В любом случае, у вас впереди много работы, если вы хотите пойти по этому пути.

2 голосов
/ 31 июля 2010

Я так не думаю.Вы можете встроить шрифты истинного шрифта в ваше приложение Silverilght.С помощью Expression Blend это легко сделать, просто выберите шрифт и поставьте галочку напротив поля «Вставить».Вам, конечно, нужно убедиться, что вы выполняете все требования по лицензированию шрифтов для шрифтов, которые вы встраиваете в свое приложение.

Шрифты внедряются в виде сжатого ресурса в вашу dll с помощью специального действия по сборке, называемого BlendEmbeddedFont, изатем ссылаться так в вашем приложении:

<TextBlock Text="TextBlock" FontFamily="/SilverlightApplication12;component/Fonts/Fonts.zip#Segoe UI" />
...