- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经尝试在他们的论坛上提出问题,但尚未收到回复,希望有人能在这里帮助我。
我在 asp.net 中设置了一个自定义报告屏幕,人们可以在其中拖动标签和字段,Migradoc 通过使用文本框和顶部/左侧/宽度/高度属性将它们放置在它们被拖动的相同位置来相应地生成此屏幕/调整为。这一切都很好,但我遇到的一个问题是,如果文本比文本框长,它会离开页面,我需要页面相应地继续移动,同时将其他对象保留在原位。
我可以使用下面的代码来测量字符串:
Style style = document.Styles["Normal"];
TextMeasurement tm = new TextMeasurement(style.Font.Clone());
float fh = tm.MeasureString(value, UnitType.Millimeter).Height;
float fw = tm.MeasureString(value, UnitType.Millimeter).Width;
但它仅用于比较宽度和框架而不是高度,因为一旦放入较小的区域,它可能会有所不同。有谁知道我如何根据绑定(bind)的宽度/高度值(即在文本框架内)测量此字符串。
最佳答案
查看 XTextFormatter
类中的 CreateBlocks()
方法,以及它如何在循环中调用 MeasureString 以将文本分成多行。
恐怕你必须自己实现这样一个循环。
或者可以使用 DocumentRenderer
类的 PrepareDocument()
方法让 MigraDoc 完成工作,并在完成后查询维度。
顺便说一句:之前在论坛上有人问过类似的问题:
http://forum.pdfsharp.net/viewtopic.php?p=3590#p3590
答案包括一些源代码。
关于c# - 在 MigraDoc TextFrame 中测量字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26883653/
有没有办法不在每个页面上重复 Migradoc header ? 在我的程序中,我将图像添加到文档的标题中,如下所示: Section section = document.AddSectio
如何减少 MigraDoc 文档的上边距? 我在文档的右上角添加了一个图像,但是文档顶部和图像之间的空间太大。 这是我设置图像的方法: Section section = document.AddSe
我可以使用 MigraDoc 轻松地将图像添加到 PDF 文件的某个部分。但是,图像被页面宽度切成两半。 有没有办法强制图片调整大小,使其完全适合一页?还是必须手动完成? 如果必须手动完成,有人知道
我正在使用 MigraDoc 创建一个报告,该报告可以有 4 个表,2 行和 2 个表。 我尝试了许多不同的方法来实现这一点。 1- 我尝试在 table 上创建一个 leftIndent。 tabl
我正在尝试将图像放置为每个页面的页脚,我可以使用以下方法将页脚移近页面底部: doc.DefaultPageSetup.FooterDistance = "0cm" 但是我似乎无法找到一种方法来允许与
我想要一种在 MigraDoc 中设置相对列宽的方法,我找到了 this post就此主题而言。问题是,它对我不起作用。我从那篇文章中复制了确切的代码: Section section = docum
如何在渲染之前获取页数?我需要在我的文档中将数字写成单词。 最佳答案 对于页码作为数字: 您不必获取编号,您可以在文档中添加占位符(称为字段),并且 MigraDoc 将在呈现文档时自动插入页码。 见
我正在使用 MigraDoc 创建 PDF。根据我的要求,我必须根据页面\部分的内容添加不同的标题。我可以通过添加新部分并为每个部分定义新标题来实现它。到这里为止,一切正常。 在页脚中,我使用“Add
我有一个文本数据表,我想将某些数据缩进几个空格,但是我尝试的所有操作似乎都会导致我的字符串被自动修剪,并且前面的空格被删除。现在的 PDF 看起来像这样: http://i.imgur.com/KBK
我的任务是重构一个旧的 MigraDoc 项目,该项目由不再在我公司工作的开发人员编写,并且在使用以下代码时遇到问题.. var Split = new String[1]; Split[0] = "
我想知道是否有办法避免某些段落之间换行。例如: Paragraph PjourneyTitle = sec.AddParagraph(journeyTitle, "Heading2"); Paragr
我想在我的所有页面上添加水印并将其居中。这对于至少仅通过一组纵向页面“吸引眼球”来说是非常简单的,但在本文档中同时包含纵向和横向页面。 我的研究表明可以用这些元素来完成: myImage.Relati
有没有办法向 migradoc 表格单元格添加真正的填充?他们目前拥有的选项(LeftPadding 和 RightPadding)实际上像边距一样工作,而不像填充。如果您使用它,它还会推送背景颜色,
我一直在使用 MigraDoc 生成 PDF,除了添加图像外,我的所有布局都运行良好。对于程序的一部分,我们正在生成这些 PDF,因为我们使用的程序只将它们的信息保存为 XML,并且可以从那里将 XM
我需要找到一种方法来用 .png 图片填充整个封面,并在页面底部放置一些文本,而图片不会出现在该位置。 现在我通过使用它来拉伸(stretch): document.DefaultPageSetup.
我想创建一个 PDF 文件,该文件应包含一个表格,并在该表格下包含三个图像;图像应该有水平布局(它们应该在同一行)。如何对齐 MigraDoc 中的三个图像?如果我以这种方式添加图像 docum
我想要实现的是在页面上两次显示相同的内容,用虚线分隔,并使用填充,这样一份副本位于上半部分,第二份副本位于下半部分。类似于 firstSection.SpaceAfter = (height of p
我想在 MigraDoc 中使用不同的字体,但我很难坚持下去。目前,我正在使用以下代码: 我将其作为类范围的变量: String tPdfFont = "MonospaceTyperwrite
如何在 Migradoc 中添加一条简单的水平线,以便将线上方的内容与线下方的内容分开? Paragraph 1 Paragraph 2 Paragraph 3 ETC 最佳答案 您可以为段落或表格添
数据库中有一个 HEX 颜色代码字符串 ("#ADD8E6"),我想用它来更改 MigraDoc< 的背景颜色 单元格。我找到了 Color.Parse() 函数,但它并没有改变我的单元格的颜色。我必
我是一名优秀的程序员,十分优秀!