2010-07-30 2 views
0

Я использую GD для изменения шрифта на комментариях пользователя. То, что я до сих пор работает для , единственное сообщение, но мне нужны все сообщений выводятся в одно изображение. Это возможно?PHP и библиотека GD

+0

Вам нужно будет отправить код. – Fosco

+0

хотя почему вы показываете комментарии, размещенные на сайте, как изображение, а не как текст? –

+0

Mark, я использую только GD для изменения шрифта в сообщениях. Есть ли лучший способ справиться с этим? – Jim

ответ

5

Не используйте GD. Вместо этого используйте CSS для управления шрифтами. Например, выход ваш комментарий внутри DIV с классом:

<div class="comment"><?=$comment_text></div> 

И тогда в вашем CSS:

div.comment { font-family: "Courier New"; } 
div.comment * { font-family: inherit !important; } 

Что это будет сделать, это заставить шрифт внутри вашего комментария к Courier New, даже если комментарий содержит HTML, который использует тег <font> или задает шрифт в атрибуте style.

В первом правиле стиля указано, что все элементы <div> с классом comment будут использовать Courier New в качестве своего шрифта. Второе правило сообщает всем потомкам этого div (т. Е. Любые элементы в div) наследовать стиль шрифта, а !important сообщает браузеру, что это правило должно отменять любое другое правило font-family для элемента.


Обновления на основе вашего комментария:

Если вы хотите использовать шрифт, который вы думаете, что большинство пользователей не будут иметь, вы можете решить эту проблему с помощью CSS, указав @font-face декларацию и хостинг файл шрифта на вашем сервере.

Посмотрите на Bulletproof @font-face syntax на пример того, как вы можете использовать @font-face в кросс-браузерном режиме. Там также есть @font-face generator, который вы можете использовать.

+0

Даниэль, спасибо за фрагмент. Если я что-то не упустил, это не сработает, потому что TTF, который я использую, тот, который не будет в системе пользователей. Твои мысли? – Jim

+0

Большинство шрифтов являются собственностью, и, если у вас нет согласия правообладателей, вы не можете распространять файл шрифта. – jmz

+0

@jmz Я так понимаю, я делаю предположение, что @Jim способен распространять шрифт. В любом случае, это не легальность, а техника. –

0

Джим, вам лучше прекратить использовать GD и посмотреть тег <font> в документах HTML. Или пусть сервер питается ресурсами, а пользователи потребляют трафик.

Если вам действительно нужно придерживаться GD по какой-либо причине, просто укажите как некоторый код. В частности, запрос MySQL до вывода изображения.

P.S. Все возможно.

+2

Не используйте тег , используйте CSS. – siride

+0

Я не говорил, чтобы использовать его. –

+0

Спасибо, Андрейс. Мне не нужно использовать GD, и я заметил, что во время компиляции сообщений он медленный. Я хотел бы иметь еще одну альтернативу, например, кто-то предложил sIFR. – Jim

Смежные вопросы