标签: text-rendering

css背景附件和字体

我的背景有一个非常奇怪的问题.当我将背景附件更改为固定在css中时,我的菜单中的字体因为某些我无法弄清楚的原因而变小.当我将其更改为滚动或本地时,它会恢复到所谓的大小.出现这种情况的原因是什么?

编辑

提供OP的示例:

我只在Safari(Chrome就可以)和只在某些机器上出现问题(MacBook Pros 15上可重现,非视网膜显示,但不适用于iMac和视网膜显示机).OSX:10.8.5,10.9.1 Safari版本:6.1.1,7.0.1.

不幸的是,我不能用jsfiddle重现这个问题,因为它不会发生在iframe中(iframe的内容会对它做出反应,但这强烈暗示了浏览器错误恕我直言).

以下是您可以在本地查看的示例HTML:

<html>
    <body style="background-image: url(http://static4.depositphotos.com/1000419/321/v/950/depositphotos_3210195-Art-tree-beautiful-black-silhouette.jpg); background-attachment: fixed;">
    <p style="font-family: Arial; font-size: 30px;">some fun text</p>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

在检查器中选择正文标记并切换background-attachment规则.您将看到的是字体略有变化(更纤细/更大胆).

我想知道,这是多少问题以及哪些机器受到影响,这样问题最终可能会到达一些可怜的Apple开发人员... :)

更新

有趣的事实:-webkit-transform: translateZ(0);可以用作解决方法.为什么它有效我不知道......

css safari fonts text-rendering background-attachment

5
推荐指数
1
解决办法
612
查看次数

放大后的iOS文本渲染

我写了一个函数来使用CGAffineTransformScale放大UIView.放大2倍后,所有文字看起来都很模糊.如果图像开始时分辨率较高,则图像正常.有没有办法在放大后以适当的分辨率重新渲染所有文本?

编辑: 我发现了我的问题的部分解决方案:http: //markpospesel.wordpress.com/2012/04/03/on-the-importance-of-setting-contentscalefactor-in-catiledlayer-backed-views/

  • (void)didMoveToWindow {self.contentScaleFactor = 2.0; }

通过在UIView类别中添加上述方法,UILabel,UIButton和大多数其他视图现在以高分辨率呈现.但是,这不会影响UITextView或UIWebView.这两个视图中的任何一个中的文本仍然是模糊的.

所以新的问题是,放大后如何以高分辨率重绘UITextView或UIWebView?

render text-rendering uiview cgaffinetransform ios

5
推荐指数
1
解决办法
1525
查看次数

font-size会影响连字的渲染吗?

Gecko和Webkit浏览器支持渲染连字符ff fi fl ffl via text-rendering: optimizeLegibility (字体必须有连字,例如Calibri).

MDN页面说,只有大小为20px及更高的文本才能获得连字.根据我自己的研究,这不是真的:

  • Firefox将默认渲染连字;
  • 如果您指定text-rendering: optimizeLegibility,Chrome(&Safari)将呈现连字;
  • 两个引擎似乎都不介意字体大小.

我在这里错过了什么吗?或者这只是MDN页面上的一个错误(过时?)我们应该修复它?

[编辑]补充阅读:粉碎杂志的"仔细看看字体渲染".

css gecko webkit text-rendering ligature

5
推荐指数
1
解决办法
815
查看次数

PIL切断字母顶部

我花了很多时间使用Python制作我的第一个Web应用程序,并且我使用来生成图像.在阅读了很多内容之后,我设法实现了正确的文本对齐,包装,生成具有许多扩展的文件等.

但是,PIL生成的所有文本都在顶部被截断.这是一个样本.

PIL生成图像的示例,顶部有文本切断

它应该?Ó?jygpq用各种字体说(字体名称在左边).

我在这里找到了一些帖子:用PIL修剪字体,但我想避免使用另一个模块(aggdraw); 因为我已经在PIL中找到了很多东西,所以我想坚持下去.

我尝试了很多不同大小的字体,但文字仍然被切断了.我甚至尝试使用PIL字体,但它仍然无效.[还将OTF转换为BDF,并转换为PIL].

这是在Ubuntu上.我接下来应该尝试什么?

python fonts text-rendering python-imaging-library

5
推荐指数
1
解决办法
1605
查看次数

Freetype 缓存子系统教程

我正在尝试在我的项目中使用FreeType 2.4.11使用 openGL 渲染文本。

虽然我只初始化了一次库、面对并将charmap 设置为unicode。每次绘制的字符循环中使用 FT_Load_Char 和 glTexImage2D 都会将文本渲染速度减慢到不可接受的水平。

我需要一些正确的示例来说明如何在FreeType CacheSubSystem中缓存字形以避免渲染延迟

unicode的library、face、charmap一次性初始化如下

        if(m_FontLibrary == NULL)
        {
            if(!FT_Init_FreeType(&m_FontLibrary)) 
            {   
                if(!FT_New_Face(m_FontLibrary, "C:\\Windows\\winsxs\\amd64_microsoft-windows-f..etype-timesnewroman_31bf3856ad364e35_6.1.7601.17514_none_3b958c66aff6cdb7\\times.ttf", 0, &m_FontFace)) 
                {
                    FT_Set_Pixel_Sizes(m_FontFace, 0, 48);             
                    if(!FT_Load_Char(m_FontFace, 'X', FT_LOAD_RENDER)) 
                    {   
                        m_FontGlyph = m_FontFace->glyph;  

                        if(!FT_Select_Charmap(m_FontFace, FT_ENCODING_UNICODE))
                        {
                            loaded = true;
                        }
                    }
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

在屏幕刷新率上,rendermodel函数调用DrawText函数,该函数循环遍历字符并加载字形并构造用于渲染的图像。

const char *text = "Tetrode\0";
        const char *p; 
        for(p = text; *p; p++) 
        {  
            // Load a single glyph into the glyph slot of a face object, according to its character …
Run Code Online (Sandbox Code Playgroud)

c++ opengl graphics freetype text-rendering

5
推荐指数
1
解决办法
3549
查看次数

将Graphics2D绘制到另一个Graphics2D

有可能从一个画Graphics2D到另一个Graphics2D吗?

让我解释。我已经打印问题,当我显示JTextAreaJTextPanel屏幕,internaly其使用sun.java2d.SunGraphics2D,但是当IM打印的使用sun.print.PeekGraphicssun.awt.windows.WPathGraphics。问题出在某种字体上,例如Arial。在某些尺寸下,线被切掉。我已经tryed了很多办法来呈现在印刷文本,Graphics2D.drawStringSwingUtilities2.drawStringTextLayout.drawString,但在某些情况下,线依然切割,或线不被切断,但某种理由让disapear空格。

因此,我的想法是尝试使用sun.java2d.SunGraphics2D渲染组件,然后通过sun.print.PeekGraphics或将表面“复制”到打印机sun.awt.windows.WPathGraphics

提前致谢。

java printing swing text-rendering graphics2d

5
推荐指数
1
解决办法
1653
查看次数

使用TextRenderer将文本绘制到位图

我正在尝试使用绘制一些文本TextRenderer(因为这有利于使用Graphics.DrawString)到Bitmap,但是它具有一些非常不良的效果。

范例程式码

using (Bitmap buffer = new Bitmap(this.ClientRectangle.Width, this.ClientRectangle.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb))
{
    using (Graphics graphics = Graphics.FromImage(buffer))
    {
        // Produces the result below
        graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit;
        // Produces clean text, but I'd really like ClearType!
        graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
        TextRenderer.DrawText(graphics, "Hello World", this.Font, this.ClientRectangle, Color.Black);
    }
    e.Graphics.DrawImageUnscaled(buffer, this.ClientRectangle);
}
Run Code Online (Sandbox Code Playgroud)

结果

在此处输入图片说明

我不确定该如何解决...帮助!

我不想使用,Graphics.DrawString因为我想要正确的GDI(而不是GDI +)渲染。

注意:我刚刚意识到,我在这个问题上留下了一个空白。有人指出,呈现ClearType文本在他们的机器上可以正常工作...

我正在尝试将文本呈现为透明(Color.Transparent)位图。如果我用纯色做,一切正常!(但是我必须渲染为透明的位图)。

c# gdi+ gdi bitmap text-rendering

5
推荐指数
1
解决办法
7161
查看次数

是否有TextFormatFlags组合允许文本换行和结束省略号?

我无法将一些字符串渲染代码放在一起,这些代码可以为我提供所有目标.到目前为止,只能权衡利弊.

我正在拍摄一些行为与Windows7桌面快捷方式相同的方式,因为文本上方有一个图像,文本可以包装一次,任何更多的椭圆截断.

如:

在此输入图像描述

我使用TextRenderer.DrawText,我已经试过的各种组合TextFormatFlags,但我只能得到任何一个包装无限期文本,停在一个单一的线路之间,其省略号文本.

一些例子.提供给界限TextRenderer是,在所有情况下,的边界内ClipRectangle,其中我画的表面.它试图呈现的文本是"这是一个名为#1的组的相当长的名称.".

这段代码:

TextFormatFlags flags = TextFormatFlags.HorizontalCenter | 
     TextFormatFlags.NoPadding | TextFormatFlags.WordBreak | 
     TextFormatFlags.EndEllipsis;
Rectangle rect = new Rectangle(x, y, this.Width - 6, this.Height - y);
TextRenderer.DrawText(e.Graphics, _text, Font, rect, _textColor, flags);
Run Code Online (Sandbox Code Playgroud)

...产生这个:

在此输入图像描述

只需删除TextFormatFlags.WordBreak标志就会产生:

在此输入图像描述

我怎么能这样做,比如我尽可能在RectangleI pass 的范围内进行包装,然后在发生截断时结束椭圆?

c# text-rendering

5
推荐指数
1
解决办法
1488
查看次数

Chrome:Webfont已关闭1个字符,但有时仅限

有时,我的网页上的文字会被一个字符(在Chrome中)关闭,我在下面附上了几张图片来复制问题.我可以通过本页获得最多成功来重现此错误:http://identity-dev.github.io/id-bower/docs/

对

错误

错误

注意:"Type"变为"Sxod","Kit"变为"Jhs"

它似乎也保留了原始宽度,所以它就像它知道那里应该有什么字符.

编辑已添加的字体代码:

@font-face{
    font-family: "Proxima";
    src: url('#{$font-path}/proxima-nova.eot' + '?#iefix');
    src: url('#{$font-path}/proxima-nova.svg') format("svg"),
         url('#{$font-path}/proxima-nova.eot' + '?#iefix') format("eot"),
         url('#{$font-path}/proxima-nova.woff') format("woff"),
         url('#{$font-path}/proxima-nova.ttf') format("truetype");
    font-weight: normal;
    font-style: none;
}
Run Code Online (Sandbox Code Playgroud)

css text google-chrome text-rendering webfonts

5
推荐指数
1
解决办法
65
查看次数

我可以在Qt Quick Controls 2中全局切换到本机文本呈现吗?

我想对应用程序中的所有文本使用本机渲染。对于每个TextLabel等等元素,我可以执行此操作

Text {
    renderType: Text.NativeRendering
}
Run Code Online (Sandbox Code Playgroud)

触发本机渲染。我还可以在整个应用程序中使用软件渲染器:

QQuickWindow::setSceneGraphBackend(QSGRendererInterface::Software);
Run Code Online (Sandbox Code Playgroud)

但是,由于软件渲染器存在一些错误以及一些性能问题,我想避免这种情况。

是否有全局开关可以更改渲染类型?

qt text-rendering qml qtquick2 qtquickcontrols2

5
推荐指数
2
解决办法
1849
查看次数