3

我有一个内部网络应用程序,页面顶部有一张图片,目前包含一些带有阴影的英文文本。我现在需要为此页面提供各种语言的本地化版本。我的主要选择是:

  • 每种支持的语言都有不同的图形,包含本地化的文本。
  • 使用 CSS 将本地化文本放置在普通图像上,并使用复杂的 CSS 技术在大多数当前浏览器中获得阴影。

还有其他选择吗?这是针对教育环境的,我无法控制学生使用的浏览器。

我确实尝试了从图形中删除阴影,并将文本移动到 HTML 的标题中,但都没有吸引力。人们说它看起来像是对当前页面的廉价仿冒,这伤害了我的自尊心。

4

4 回答 4

9

就我个人而言,我是这种视觉效果的 CSS 技术的忠实粉丝。最大的好处是您将效果处理卸载到客户端,节省带宽和内容创建时间(每个区域设置的自定义文本图像是一个大订单!),并使用户更快地下载页面。

避免它的唯一原因是,如果您绝对必须在几乎不支持 CSS 的非常旧的 (IE5) 浏览器上使用投影。

编辑:只是想到了一些事情 - 我有一些像这样的情况,我需要特定的字体或一些确切的文本效果,我使用 PHP 将带有效果的文本渲染到图像并将其缓存在服务器端。这样您就可以避免内容创建过程并获得更广泛的浏览器支持,以换取带宽和服务器 CPU 时间。如果权衡是可以接受的,那是你的决定。

于 2008-10-08T14:26:45.503 回答
4

在请求服务器端为每种语言生成图像,并带有阴影。根据需要缓存它们。

如果可以使用Image Magick,可以参考本教程生成文字+阴影...

于 2008-10-08T14:27:38.200 回答
1

维护带有文本的图像可能会很痛苦——即使没有本地化,我也会避免它。

在选择您的选择之前,我会尝试两种选择:

  • 寻找一个免费的程序来生成阴影图像,只要它检测到标题有新文本,您就可以让程序使用它
  • 使用可以重复的阴影图像作为文本下方的背景图像

如果这些不起作用,我会尝试使用 CSS,但在使用它之前,您可以自己在尽可能多的浏览器中对其进行测试。

于 2008-10-08T14:28:50.007 回答
1

好吧,Safari 支持用于阴影的专有 CSS 属性,但它在其他浏览器中不起作用。CSS3 也会有阴影(实际上只有一个用于盒子,但也许它也可以用于文本,例如当盒子有透明背景时)。

但是看到大多数浏览器到目前为止甚至没有 100% 的 CSS2 支持,我想你需要选择你的两个选项之一。当然,有一个不那么复杂的 CSS 技巧来获得阴影:

为每个人投下阴影

但它们看起来不如真正的阴影好,因为它们没有模糊。此外,您需要在 HTML 中包含两次文本才能使它们起作用。

于 2008-10-08T14:31:50.187 回答