问题标签 [formatted-text]

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 回答
779 浏览

wpf - 如何在 Canvas (MVVM) 上使用 ItemsControl 定位 FormattedText

对 XAML 使用带有 ItemsControl 的 MVVM 模式,我试图将 FormattedText 字符串的左上墨点准确定位在指定矩形的左上角。(矩形由 InkAnalyzer.Location.GetBounds() 给出)。

由于我无法弄清楚(或在 Google 上找到)的原因,FormattedText 字符串始终位于矩形左上角的右下角,距离似乎与用于打印的字体大小成正比。

如何实现 FormattedText 的定位以击中矩形的左上角?

任何帮助是极大的赞赏。

XAML

C#

0 投票
0 回答
70 浏览

wpf - 视图模型使用视图调度程序的最佳方式是什么?

以下代码位于视图模型中:

我正在使用 FormattedText 创建一个显示列表。在离开创建格式化文本的方法之前(即,在方法完成时的正常渲染机制之前),我需要获得显示内容的最终指标。我一直在使用调度程序尝试这些方面的东西,但似乎无法获得最终的计量标准。无论我如何设置调度程序或如何调用它,StringViewModel 的实际格式化文本 ft 始终为空。我正在收集该操作是在调度程序进行渲染之前执行的。(净 4.0)

请提供任何帮助。如何才能做到这一点?任何想法都会很棒!

字符串视图模型:

编辑:

以上所有代码都在 View Model 中,而不是后面的代码,如果我将其更改为

其中 ObservableCollection Strings 和 theView 是对视图的引用,所有工作都正确。

那么,不让视图模型“知道”视图但使用视图的调度程序来测量渲染文本的推荐方法是什么?

0 投票
0 回答
85 浏览

wpf - 如何从 FormattedText 中仅获取大写 X 高度?

我的结论是这无法完成,因为我似乎无法访问格式化文本对象的上升高度。作为一个粗略的近似值,我正在使用:

有没有更好(更准确)的方法?任何帮助表示赞赏。

0 投票
1 回答
862 浏览

wpf - 如何在图像中呈现带有 RenderTargetBitmap 的 FormattedText?

我在谷歌上找不到答案。

我有很多字符串要在画布上呈现。每个字符串都将使用从 ItemsControl 调用的字符串转换器中的 FormattedText() 方法创建。

代码的问题在于,它需要 RenderTargetBitmap() 中的一个大得离谱的宽度和高度来显示不同位置的所有字符串,即使每个字符串的实际宽度约为 700,实际高度为 40。(看起来像虽然 RenderTargetBitmap() 需要足够大,不仅可以容纳字符串,还可以容纳该字符串在绘图上下文中的位置)。

您如何创建一个仅包含格式化文本的正确实际高度和宽度的单个格式化文本字符串的图像,然后将该图像正确定位在“左上角”点?

从 ItemsControl 调用的转换器定义为:

附录:

我写了这个解决了这个问题,但没有回答我的问题。(删除了 gt 和 lt 符号)。

  1. 将 itemscontrol 更改为包括:

    ItemsControl.ItemContainerStyle Style TargetType="{x:Type FrameworkElement} Setter Property="Canvas.Top" Value="{Binding topleft.Y}" Setter Property="Canvas.Left" Value="{Binding topleft.X}" Setter属性="高度" 值="{绑定英尺高度}"

  2. 移除了转换器的所有定位。转换器现在读取为

    /li>
0 投票
1 回答
576 浏览

wpf - 如何在 WPF 中的 FormattedText 的简单自定义控件中设置依赖属性 AddOwner

知道这个话题已经被讨论过很多次了。我想我已经研究了其中的大部分。但我似乎无法使用 AddOwner() 完成这项工作。我是新手。

我希望制作一个非常简单的自定义控件来显示 FormattedText。即使从 XAML 调用依赖项属性,它们也不会设置,并且它们的新设置在构造函数中不可用。

我究竟做错了什么?(也许问题应该是如何正确使用 AddOwner() ?)。

感谢您的任何帮助。

0 投票
2 回答
2067 浏览

c# - 如何为格式化文本垂直文本对齐?

是否可以在 c# 中将垂直文本对齐设置为格式化文本,例如我的格式化文本是

我需要将垂直对齐中心的格式化文本与特定的矩形区域对齐。

0 投票
0 回答
923 浏览

python - 在 Python、列和粗体文本中创建 RTF

我希望能够编写一个格式化的文本文件,我不需要太花哨的东西。只要能够左/右对齐、粗体文本斜体等。行和列将是一个不错的选择。

有这方面的图书馆吗?

例如,我想生成一个包含如下行的输出文件:

我每天从一个包含每个字段的列表中编写这些行,如下所示:

['12-12-12', 'Task 1', 'Task 2', '1.2 hrs', '0.0 miles']

我还有一个放在桌子上方的标题。我认为这将我限制为文本文件,而不是 Excel 文档。

我不致力于 rtf 文件,只是采用这种粗略的格式,所以如果你能想到另一种方法来做到这一点,那也可能会有所帮助。

我在网上找到了几个第三方库,比如 PyRTF,但它似乎已经过时了,因为它的最后一次更新是在 2005 年 5 月。

我在 Stackoverflow 上找到的问题也是如此。所以,如果有人能发现这是重复的,请告诉我。

0 投票
1 回答
3015 浏览

vba - 如何使用vba更快地将格式化文本从excel复制到word

问题: 我想使用 excelvba 脚本将格式化文本从 excel 复制到 word。脚本尽职尽责地复制信息,但速度太慢了。

你能给我一个提示如何加快速度吗?

到目前为止,我的方法记录在这个虚拟文档中。该脚本假定单元格 C1:C100 包含格式化文本。

一般信息。 我正在编写一个将格式化的文本块复制到 word 文档的 excelvba makro。每个文本块有两个版本。宏跟踪单词样式的变化。(删除:文本颜色红色和删除线等)并将结果复制到第三列。这部分就像一个魅力。然后将第三列复制到word文档中。这部分适用于我的机器(i7-3770,ssd,8 Gb Ram),但不适用于必须使用脚本(amd Athlon 220)的可怜的灵魂机器,生产大小为 700-1000 个文本块,100-1000 个字符每个。

0 投票
1 回答
350 浏览

python - 在 python 中渲染格式化文本(目前使用 pyglet)

我正在使用 pyglet 制作游戏。在某些时候,该游戏将有一些“核心”RPG 规则的游戏内帮助/参考,以及描述等(游戏使用 Pathfinder SRD)。所以有长格式的文本(有不同的大小、颜色等)。我打算提供的样式示例(将进行进一步格式化): 游戏内 SRD

目前我正在使用 pyglet 的格式化文档模型(纯文本,带有一些 python 生成的样式/格式字段):

  • 如果我文本存储在 json 中(在类、种族等的特定键下),这种一次性处理可能需要几秒钟;将文本存储在 .py 的正文中(例如这个,有 5k 行),在字典中,是值得的,有什么理由不这样做吗?
  • 在运行时使用解码pyglet.text.decode_attributed需要一些时间。但是考虑到完成后游戏参考可能会有一百个“页面”,运行前解码(解码整个字典或 json)将花费大量的游戏前时间。那么预解码,还是即时解码(这意味着如果我不制作有效的代码,某些文本可能会被冗余重新编码)?pyglet 上的线程不可靠...
  • pyglet.text.layout.ScrollableTextLayout在大块文本上渲染和稍后切换文档内容需要 1-2 秒,如果文本之前没有解码则更多;
  • 或者也许有任何其他库可用于在 pyglet 的上下文中呈现文本(进行一些调整)......但是考虑一下,在当前格式中,我能够在“参考”视图上显示整个内容或从中提取少量文本作为工具提示,例如...
  • 一些最后的考虑:性能很重要,因为我的目标是低规格的机器。该游戏将是图形 roguelike / 2d rpg,需要的不仅仅是 libtcod/curses,但不需要 3d 图形,这就是我现在使用 pyglet 的原因。但具体而言,格式化文本方面让我感到不安。
0 投票
0 回答
650 浏览

c# - 字符串作为几何

我正在尝试在 a 中放置一个简单stringRectangle。我正在GeometryGroup为此目的使用,这是我的代码:

出于某种原因,我得到的文本加倍(见附图)。

在此处输入图像描述

我不能将Label-style 文本转换Geometry为与 一起打印Rectangle吗?