问题标签 [glyph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
193 浏览

c++ - C++ 字符串长度:数组元素与字形

string::size 是否返回表示字符串所需的数组元素数,或呈现字符串所需的字形数?wstring 的行为是否相同?

0 投票
0 回答
72 浏览

imagemagick - ImageMagick 字形宽度错误

我尝试使用不同的字体覆盖相同文本的两个版本(以创建轮廓和多色字母等文本效果)。字体是用相同的字形宽度定义的,如果我使用 Photoshop(或任何文本处理软件)生成两个文本并叠加它们,它们就非常合适。但 ImageMagick 似乎并不关心字形宽度,而是使用自己的定位系统。因此,即使仅显示一个字母的文本,这两层也不适合。ImageMagick 使用哪些字体定义?

这是我显示“4”的命令:

使用注释选项定位图层不是解决方案,因为文本是在图像处理器中动态生成的。

有任何想法吗?

0 投票
0 回答
132 浏览

jquery - JQuery 无法识别 var 中的字形

我在输入标记中有一个带有 JQuery 验证的表单我有一些字形。如果选择了输入字段,则只有默认值必须消失。

这是完整的代码:

HTML:

jQuery:

0 投票
1 回答
363 浏览

internet-explorer - @font-face 和 IE9+ 输入标签

我遇到了很多我无法理解的问题。问题是我在我们的公司网站上使用自定义字体,它在除 IE 之外的任何地方都可以正常工作。

您可以在下面的屏幕截图中看到 IE 的问题: IE问题

还有它在 chrome 中的外观 铬合金

我将尝试解释...用于输入和标签的字体是相同的。问题是所有东西都按预期显示,除了<input/>. 那么,这个字体有什么问题呢?我怎样才能找回我的西里尔字符形?我完全知道它们存在于字体中。

此字体基于MyriadPro Light字体并使用 Glyphs 进行编辑。您可以下载已编辑的字体以了解其结构。

UPD:哦,我忘了说这个字体是通过 2 个不同的转换器(FontSquirrel 和 OnlineFontConverter)为 Web 转换的,没有运气。也许问题出在那些转换器上?因为我认为,这是*.woff格式的问题。比如说,IE10 将*.woff 文件用于@font-face;

UPD2: 部分布局(html+css):

html

字体:

CSS

UPD 3:再次出现问题

不幸的是,问题仍然存在。现在另一种字体出现了问题:“Futura Round Regular”。我使用使用 fontsquirell 转换的字体。您可以在下图中看到效果:

IE问题

如您所见,输入中的部分字符串是西里尔字母,显示为“Times New Roman”,其他所有内容均按预期显示。在 IE8-10 中使用大多数西里尔字体时会出现此问题。你可以在这里下载字体包

0 投票
2 回答
2446 浏览

c++ - 将文本转换为网格

我需要将文本(字符串+字体)转换为网格(顶点、索引、三角形等),但我不需要绘制任何东西。我将从一个 API 中获取一个字符串并将其作为顶点和索引推送到另一个 API。这样做的最简单/最简单/最好的方法是什么?字体度量和文本放置当然是可用的,不需要其他转换。

我目前正在使用 VC++。但是,任何类型的开源(C/C++、C#、VB,...)和“非开放但免费”的 COM/.NET 库都会很棒。

我听说过FreeType。它会回应我的祈祷还是有更好的东西?

编辑:正如 Nico Schertler 评论的那样,DirectX -libs 中似乎有 Mesh.TextFromFont -function 可能起到了作用。谢谢你尼科!当我有时间在实践中测试它时,我会更新。

0 投票
1 回答
1835 浏览

fonts - 如何通过解析 TTF 字体文件来获取字形宽度?

为了捕获字体的字形宽度TrueType,我将相应的TTF文件转换fontforgeAFM,它是文本格式(不是二进制)。然后,解析文本文件以捕获字形宽度。

应该有更简单的方法来直接解析二进制TTF文件以捕获字形宽度。

我很欣赏 shell 脚本或 C 的策略,但是任何编程语言都可以,因为想法是关键,并且可以调整代码。

0 投票
1 回答
482 浏览

java - 在 iText 中调整 TextMatrix

我生成了一个带有一行字符 M 的 PDF。每个 M 具有一致的宽度,但每个 M 之间的距离在变化:第一对是 2px,第五个有 3px,然后接下来的四个有 2px,第十个是 3px,等等。

由于我的代码中的任何 M 或中间的任何空格绝对没有区别,唯一的结论是某些宽度值无法在坐标系中正确缩放,每隔一段时间就会产生一个额外的像素。

这是 PDF 在绘制字形时计算水平移动量的方式:

在此处输入图像描述

在计算标准 96DPI 显示器时,每个像素以 0.75 单位表示(经过彻底检查和测试)。

考虑到这一点,我需要确保 Tx 值可以被 0.75 整除。

这是我所知道的:

  1. w0 是来自宽度数组 (widths[]) 的整数
  2. Tfs 是一个可被 0.75 整除的数字(由我设置)
  3. Th 为 100(默认)
  4. Tc 和 Tw 均为 0(默认)

所以 Tj/1000 需要是一个整数,这意味着 Tj 需要能被 1000 整除。

一种方法是获取和调整 Tj 值。另一种方法是在计算 Tx 值后访问它,并将其更改为可被 0.75 整除的最接近的值。

如何在 iText 中执行此操作?

还是我的整个假设是错误的?

来源:链接(第 252 页)

0 投票
0 回答
159 浏览

.net - .Net Unicode 字符映射

假设我们有以下两个类

我们可以GlyphTypeface通过Typeface.TryGetGlyphTypeface方法创建类的实例,但在创建对象之前,GlyphTypeface我们Typeface使用以下构造函数创建对象

当我们创建对象 fontFamily 时,我们硬编码了 fontName(例如 Calibri)。 .Net用于字形索引CharacterToGlyphMap的自动填充属性。GlyphTypeface

我想知道人口是否CharacterToGlyphMap取决于字体名称(calibri)?实际问题是,当我们使用 fontname(calibri) 并尝试CharacterToGlyphMap通过印地语符号获取值时,我们得到“找不到错误键”。

0 投票
0 回答
236 浏览

c# - 将 BackwardQuadrilateralTransformation 应用于定义的 GRAFT 点

我有一小段 C# 代码,它使用 Kinect 在画布上检测多达 4 个字形并在它们之间绘制和多边形,如下所示:

在此处输入图像描述

我试图遵循这一点,以实现 2D 增强现实并在创建的多边形内投影图像。我已阅读源图像并尝试将 BackwardQuadrilateralTransformation 应用于它,但似乎无法显示转换后的图像。我可能使用了错误的方法,但我尝试转换图像并将其绘制到画布上,但没有成功。我不确定我是否只是严重误解了该方法,也许这是不可能的,任何帮助将不胜感激。如果需要,我可以提供更多示例代码。

在进一步使用代码后,我认为我已经开发了一个部分解决方案,它仍然需要一些工作,但希望这对人们阅读/调试更有帮助。

0 投票
0 回答
176 浏览

java - GlyphVector 的视觉、逻辑和像素边界是什么?

Java 中的 GlyphVector 为整个对象返回 3 种类型的边界。

三者之间有什么区别?

文档没有回答这些问题。