- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在 UILabel (iOS7) 中使用字体,遇到了一些我希望有人能解释的事情:字体的 Glyph、Ascender 和 Descender 之间有什么关系?
从我读过的文档中,上升是基线上方字体的部分,下降是基线下方的部分(返回为负数)。组合的绝对值应该是字体的最大高度。
例如,上升高度为 255,下降高度为 -64,总高度为 319。然而字形高度返回为 228.4
编辑:这是字形代码:
CTFontRef ctFont = CTFontCreateWithName((__bridge CFStringRef)(uiFont.fontName), uiFont.pointSize, NULL);
UniChar ch = [msgLabel.text characterAtIndex:0];
CGGlyph glyph;
if (CTFontGetGlyphsForCharacters (ctFont, &ch, &glyph, 1)) {
CGRect bounds = CTFontGetBoundingRectsForGlyphs (ctFont, kCTFontOrientationDefault, &glyph, nil, 1);
float glyphHeight = bounds.size.height;
}
这是升序/降序代码:
float adHeight = myLabel.font.ascender-myLabel.font.descender; //Descender is always a negative value
那么为什么从 CTFontGetBoundingRectsForGlyphs 返回的字形高度不等于 Ascender 加上 Descender?
最佳答案
字体中的每个字形(字母形状)都是不同的大小和形状,对吗?字符“A”的字形比字符“a”的字形高,“t”字形的顶部再次不同。
Font.ascender 是所有字母形状(字形)的最大值,Font.descender 是最小值。
任何特定字体都可以很容易地具有超高字形,这意味着 Font.ascender 值与不包含该字符的字符串的尺寸无关。
关于ios - iOS 中字体 Glyph Ascender 和 Descender 之间的关系是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22647439/
我有以下 SP CREATE PROCEDURE GetAllHouses set @webRegionID = 2 set @sortBy = 'case_no' set @
您好,我想知道如何在 SQL 服务器中完成。 我的代码不起作用。 SELECT * FROM TABLE_NAME WHERE NAME = 'United Kingdom' ORDER BY Nam
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭13 年前。 Improve th
我正在尝试创建一个Java程序,该程序读取键盘输入的数字字符串, 并给出最长的升序子字符串。 以下是我的代码: import java.util.Scanner; public class Ascen
我曾经在 SGS 2 I9100 (4.1.2) 上测试我的应用程序,在设备出现缺陷后我购买了华为 Ascend P6 (4.2)。我必须始终以 HiSuite 模式连接它,这会在 PC 上启动他们烦
在 Interface Builder 中,我希望能够通过 Cap Height 对齐 UILabel。在 IB 中没有办法做到这一点,所以我想我可能会扩展 UILabel,以便框架从 Cap Hei
本题其实改编自one previously asked by Mat.S (image)。虽然被删了,但我觉得这是个好问题,所以重新发一下,要求更明确,有自己的解决方案。 给定一个字母和数字列表,假设
我想知道 d3 中排序函数和升序函数之间的区别。 我正在寻找一种方法来按所选列的升序重新排列表中的数据。 谢谢。 最佳答案 Array.sort()将按字母顺序对值进行升序排序。 Array.sort
我有一个 gridview,当用户单击标题时,我需要对其元素进行排序。 它的数据源是一个List对象。 aspx 是这样定义的:
我有一个包含以下代码的条件查询: CriteriaQuery criteria = cb.createQuery(MyClass.class); Root root = criteria.from(M
我使用用户输入存储五个不同的值。并按照从命令提示符插入的方式进行显示,现在我想在显示过程中将输出组织为升序或降序顺序。我搜索了这个,但我得到了更复杂的例子。我的代码非常简单。我在学习。到目前为止,我已
我是java初学者..我刚刚开始在线学习数据结构。我想按升序打印添加到二叉树中的值。 我创建了一个方法 print 并尝试使用以下值: 9,5,2,8,3 它打印了这个输出并停止了 2 , 3 ,8
我正在为我的 iOS 应用程序使用自定义字体。我的 View 需要根据 View 的大小为字体选择不同的磅值。如果我有一个预定的 CGFloat ascender; 我基本上想确定这一点 CGFloa
在我看来这像是 Webkit 错误,但我不确定。尽管 元素已正确 border-box值,影子 DOM 以某种方式将所有重置为默认值 content-box . Firefox 是一致的。 IE/Ed
这个问题在这里已经有了答案: The model item passed into the dictionary is of type .. but this dictionary requires
我已经找了很久,但没有找到实际的答案,因为我看不到任何以升序键开头然后以降序值开头的答案。 一个更清楚的例子: d = {'banana':3, 'orange':5, 'apple':5} out:
在像堆排序或快速排序这样的排序算法中,为什么标准出版物或研究论文在可以简单地分别使用升序或降序时更喜欢术语“非降序”或“非升序”?我的意思是无论如何意思都是一样的。 最佳答案 非升序(和非降序)包括相
我有一个大表(现在约 100 万行,很快约 1000 万行)有两个排名列(除了常规数据): avg_visited,一个 0-1 的 float ,代表百分比年龄;越高越好 alexa_rank,一个
如果我运行这个: ALTER TABLE `equipos11a12` ORDER BY `ID` 它只会发生一次。如果我更改 ID,它不会按升序更改。 我必须每次都运行 alter table
在核心数据获取请求中,我想对结果进行排序,不区分大小写。所以我编码: NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc]
我是一名优秀的程序员,十分优秀!