问题标签 [drawtext]
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.
android - Android 画布中的平滑非常缓慢的文本动画,SUBPIXEL_TEXT_FLAG 不起作用
我无法在 Canvas 中实现平滑非常缓慢的文本动画,因为Canvas.drawText
不想在“像素之间”绘制。例如,给定 4 个连续帧,其中我绘制 Y 偏移量为 0、0.5、1、1.5 的文本,画布实际上将分别在偏移量 0、0、1、1 处绘制它,这导致动画为“生涩”。有一个名为Paint.SUBPIXEL_TEXT_FLAG
应该保持浮点精度的标志。
我找到了一个相关线程,其中 Romain Guy 说 Android 目前不支持此标志:Android中某些 Paint 常量的含义。
我的问题是:是否有任何现有的解决方法?
注意:在另一个位图中绘制一次文本,然后用浮点偏移量绘制这个位图而不是绘制文本似乎也不起作用。
c++ - QPainter::drawText,获取每个字符的边界框
我正在使用 QPainter 在 QImage 上绘制多行文本。但是,我还需要在每个字符的边界框周围显示一个彩色矩形。
所以我需要知道每个角色在绘制时的边界框。
例如,对于
考虑到换行符、自动换行、制表符等,我需要得到 10 个矩形。
例如,第二个'l'
的矩形将在第一个的矩形下方'l'
,而不是在 的右侧'e'
,因为换行符。
类似于这张图片中红色矩形的坐标(我是手工放置的,所以它们并不是真正的正确位置):
android - 如何在android中的指定矩形中绘制文本?
有没有一种方法可以在指定的矩形中绘制文本?我正在使用直接绘制到画布(ImageView)
但这将整个文本绘制在一行中。我想用指定的 (x,y) ,(x1,y1) 限制来包装文本。我不想使用 textviews 或任何其他视图。
我只想在图像上绘制文本。
有什么方法可以做到这一点吗?
提前致谢
java - 如何将文本渲染到位图并绘制它
我是 android 新手,我的小组目前正在使用 opengl es 2.0 使用 GlSurfaceView 创建一个图形应用程序。
我们最近在绘图上显示了网格和刻度线,现在我被分配了实现数字刻度并将 x 和 y 轴标记为“X”和“Y”的任务。
经过大量研究后,我决定通过将一串字符渲染为位图来实现这一点。我在实现这一目标时遇到了很多问题。我了解基本概念。我知道我需要字母数字字符“0123456789”和“XY”和“-”(用于 -x 和 -y 刻度)。我已经看到了许多不同的例子,并在这里广泛尝试遵循 JVitella 的例子
我开始掌握这个概念,但就我的字符串而言,我知道我有 13 个字符,那么我的位图应该有多大?
同样在 Jvitelas 示例中,我对代码感到目瞪口呆:
我不明白到底发生了什么,当我编写代码时,我在上下文中收到语法错误。
对于我的应用程序,我知道我需要将字符串保存到一个位图中,就像这样。我会创建一个位图,但它应该有多大?然后我从位图和 canvas.drawText 创建一个画布到位图中。
基本上我在问:
- 如何实现上面的以下位图?
- 我将如何从位图中绘制单个数字?
- 我将如何绘制多于一位的数字?
ios - iOS:使用 LineWidth 1px 在 UIView 上绘制文本
我有一个场景,我必须在 UIView 上绘制文本。我的代码是
使用此代码,我可以实现:
但是,由于我使用的 FontSize 为 500,因此文本 lineWidth 很大。我想将 lineWidth 减小到 1px。
请就如何实现这一目标提出建议。
- 除了常规的,还有其他方法吗
drawInRect
? - CoreText 会帮我找到解决方案吗
谢谢。
编辑
使用 UIBezierPath 作为字形,我能够得到字符的路径。但是实现的路径是通过角色的边界。因此,我得到的文本为:
这可以做成单行吗?
android - Canvas.drawText 导致文本重叠
我正在尝试在同一位置绘制不同的文本。我正在以下代码中创建字体和绘制对象并绘制文本。它工作正常直到这里。它使用我指定的字体绘制文本。但是当我绘制文本时另一次在同一位置它与较早的文本重叠。
知道如何删除较早的文本并将新文本添加到相同的位置。
ffmpeg - ffmpeg 将 4 个视频多路复用为 1 和 drawtext 问题
我有四个视频,我想将它们多路复用成一个视频,并将文本放在每个象限的左上角。我可以成功混合视频,使得 vid1 在左上角,vid2 在右上角,vid3 在左下角,vid4 在右下角。
但是,我什至无法使用 drawtext 命令显示简单的文本。
我想将原始视频文件的名称放在每个象限中。
目前我的命令是这样的:
如果我删除 drawtext 命令,我会得到相同的结果:不错的 4-Up 视频,但没有文本。我的假设是,对于其他象限,我会在输入流中添加另一个 drawtext 命令#,例如
任何帮助表示赞赏!
python - 将电影文件与文本文件合并
当前状态:我有一部在显微镜上录制的电影和一个包含两列的 .txt 文件:时间和温度。该文件与视频同步。我想“编辑”视频,所以有一个文本框,温度会随着电影的播放而更新。
目前,我的方法是使用ffmpeg
. 我设法画了一些文字,似乎一切都按预期工作。
问题是:我找不到有关如何动态更新该文本的任何参考。我正在使用一些 Python 来读取文件并ffmpeg
使用subprocess启动。
我想问是否有人知道一些解决方法。也许其他一些方法。
android - Nexus 7 上的 Android 4.2:canvas.drawText() 无法正常工作
我的应用程序面临一个严重的问题,该应用程序发布在 Google Play 上,显然在除 > 4.0 之外的所有版本的 Android 上都可以正常工作。
这是我的 Android 4.0 HTC 手机的屏幕截图:
这就是我在 Nexus 7、Android 4.2.1 上得到的(在模拟器中的行为相同):
我看到使用绘制的每个文本都有相同的行为canvas.drawText()
用于绘制文本的 Paint 是:
在 logCat(4.2.1 模拟器)中,我看到了很多
我在清单中使用这些设置:
android - 在视图画布上绘制文本时文本颜色太深
我使用以下代码在视图画布上绘制文本:
问题:
文本以深灰色而不是白色 (0xFFFFFFFF) 显示。为什么这样?
我尝试使用 setShadowLayer() 或 paint.setAntiAlias(false) 来解决问题,不幸的是没有成功。