Убедитесь, что текстовое поле в базе данных Sql Server использует определенный шрифт - PullRequest
0 голосов
/ 27 января 2010

Краткая справочная информация: Я наконец-то выделила ошибку, которая у меня есть. Проблема заключается в том, что мои веб-пользователи, которые обращаются к моему приложению ASP.NET с помощью Safari, хранят свой контент другим шрифтом, чем все остальные пользователи. Это проблема, потому что стороннее приложение, которое я использую для динамического создания PDF-файлов, распознает только 2 шрифта (arial и times new roman), и независимо от того, что вставляет Safari, это другой шрифт.

Решение: Я надеюсь установить в Sql Server столбец для хранения только одного шрифта. Если это невозможно, я могу удалить этот пост и найти другое решение, но этот будет наиболее эффективным на милю.

EDIT: Одна вещь, которую я забыл, это интересно. Единственные символы, на которых, кажется, установлен неправильный шрифт, это одинарные кавычки и двойные кавычки *

Ответы [ 2 ]

2 голосов
/ 27 января 2010

Проблема не имеет ничего общего со шрифтами. Текстовые поля базы данных не хранят информацию о шрифте, если вы не храните текст в кодировке RTF или HTML.

Проблема в том, что существует несколько типов цитат. Обычно в программировании мы имеем дело с символом 39 для одинарной кавычки и символом 34 для двойной кавычки.

Текстовые процессоры (и, вероятно, Safari) часто автоматически заменяют эти цитаты на фигурные версии. Смотрите таблицу ниже:

Char    Value
34      Plain double quote
39      Plain single quote (apostrophe)
145     Curly left single quote
146     Curly right single quote
147     Curly left double quote
148     Curly right double quote

Если вы хотите стандартизировать эти значения в своей базе данных, замените фигурные версии на простые версии перед вставкой в ​​базу данных.

1 голос
/ 27 января 2010

Единственное, о чем я могу подумать, это то, что ваши пользователи «другого шрифта» каким-то образом передают различную информацию, и текст не понимается как ASCII.

SQL Server хранит только строки, он не будет хранить информацию о шрифте. Но ... попробуйте сохранить данные в столбце varbinary (max) и посмотреть, работает ли это для вас. Вы можете поместить абсолютно все в varbinary (max) ... и если это не решит ваше решение (как я сомневаюсь, это будет), вы можете двигаться дальше и решить, что не так с вашим приложением ASP.Net.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...