如何设置MigraDoc的页面大小?

2023-12-19

抱歉,我只是 PDFsharp 的初学者。

如何设置文档的PageSize?就说A4吧。怎么设置呢?这是我的代码。谢谢。

    Document document = new Document();

    // Add a section to the document
    Section section = document.AddSection();
    section.AddParagraph("dddddd");


    // Add a section to the document
    var table = section.AddTable();
    table.AddColumn("8cm");
    table.AddColumn("8cm");

    var row = table.AddRow();
    var paragraph = row.Cells[0].AddParagraph("Left text");
    paragraph.AddTab();
    paragraph.AddText("Right text");
    paragraph.Format.ClearAll();
    // TabStop at column width minus inner margins and borders:
    paragraph.Format.AddTabStop("27.7cm", TabAlignment.Right);
    row.Cells[1].AddParagraph("Second column");
    table.Borders.Width = 1;

A4 是默认尺寸。

每个部分都有一个PageSetup属性,您可以在其中设置页面大小、边距等。

var section = document.LastSection;
section.PageSetup.PageFormat = PageFormat.A4;
section.PageSetup.TopMargin = "3cm";

你不应该修改DefaultPageSetup,使用Clone()反而。PageFormat不适用于Clone(), 因为PageWidth and PageHeight设置为默认尺寸 A4。
要获得 Letter 格式,您可以使用此代码覆盖PageWidth and PageHeight:

var section = document.LastSection;
section.PageSetup = Document.DefaultPageSetup.Clone();
section.PageSetup.PageFormat = PageFormat.Letter; // Has no effect after Clone(), just for documentation purposes.
section.PageSetup.PageWidth = Unit.FromPoint(612);
section.PageSetup.PageHeight = Unit.FromPoint(792);
section.PageSetup.TopMargin = "3cm";

要获得信件格式,您可以使用此代码重置PageWidth and PageHeight使PageFormat再次工作:

var section = document.LastSection;
section.PageSetup = Document.DefaultPageSetup.Clone();
section.PageSetup.PageWidth = Unit.Empty;
section.PageSetup.PageHeight = Unit.Empty;
section.PageSetup.PageFormat = PageFormat.Letter;
section.PageSetup.TopMargin = "3cm";

创建一个Clone()如果您的代码使用例如,则很有用左右边距来计算表格宽度等。如果您显式设置所有边距或不使用边距进行计算,则无需创建克隆。
如果你需要Clone()您可以使用此处显示的方法来设置页面大小。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置MigraDoc的页面大小? 的相关文章

  • 在 Web 浏览器中禁用 F5 [重复]

    这个问题在这里已经有答案了 可能的重复 禁用浏览器的后退按钮 https stackoverflow com questions 961188 disable browsers back button 如何禁用浏览器上的 F5 刷新 htt
  • 从 Invoke 方法获取 RETURN

    我正在尝试从另一个线程上的列表框项目中读取值 我尝试创建一种新方法来运行调用命令 我可以设法将命令发送到列表框 例如通过调用方法添加 但我似乎无法得到响应 我似乎无法获取该项目的值 我尝试了几种方法 一旦我将它从空变为字符串 事情就开始变得
  • C# 和月历,选择多个日期

    我正在制作一个程序 可以帮助人们用 C 为某个部门 预订 订单 他们需要能够选择不同月份的多个日期 我更愿意拥有它 这样他们就可以单击一个日期 然后按住 Shift 键单击另一个日期以选择这两个日期之间的所有日期 并控制单击以进行单选 取消
  • 使用 Xamarin.Forms 和 Zxing 生成 QR 码

    我在网上看到了很多关于这个的内容 旧帖子 但似乎没有什么对我有用 我正在尝试从字符串中生成二维码并将其显示在应用程序中 这就是我一开始的情况 qrCode new ZXingBarcodeImageView BarcodeFormat Ba
  • C# Outlook 从收件人获取 CompanyName 属性

    我目前正在使用 C 编写 Outlook 2010 AddIn 我想要的是从我从 AppointmentItem 中提取的 Recipient 对象中获取 CompanyName 属性 因此 有了 AppointmentItem 的收件人
  • 如何调整 Windows 窗体以适应任何屏幕分辨率?

    我知道这是重复的问题 但我检查了所有其他相关问题 他们的答案没有帮助 结果仍然与屏幕截图 2 中所示相同 我是 C Windows 窗体新手 如截图1所示 我有Form1有一些控件 每组控件都放在一个面板中 我在 PC1 中设计了应用程序
  • C++中的类要具备什么条件才能成为容器?

    我是 C 编程新手 偶然发现了这个术语containers举例如下vector deque map etc 一个企业的最低要求应该是什么class应该满足被称为container in C 我将从 范围 这个概念开始 Range 只有两个方
  • 在 Mac OS X 上安装 libxml2 时出现问题

    我正在尝试在我的 Mac 操作系统 10 6 4 上安装 libxml2 我实际上正在尝试在 Python 中运行 Scrapy 脚本 这需要我安装 Twisted Zope 现在还需要安装 libxml2 我已经下载了最新版本 2 7 7
  • 类中是否可以有虚拟类声明?

    我正在为个人项目中框架的各个组件设置一个接口 我突然想到了一些我认为可能对接口有用的东西 我的问题是这是否可能 class a public virtual class test 0 class b public a public clas
  • C 类型命名约定,_t 或 ALLCAPS

    我一直想知道是否有任何命名约定 例如何时对类型使用全部大写以及何时追加 t 什么时候不使用任何东西 我知道当时 K R 发布了各种有关如何使用 C 的文档 但我找不到任何相关内容 在 C 标准库类型中 t看起来漂亮占主导地位 time t
  • 为什么 std::function 不是有效的模板参数,而函数指针却是?

    我已经定义了名为的类模板CallBackAtInit其唯一目的是在初始化时调用函数 构造函数 该函数在模板参数中指定 问题是模板不接受std function作为参数 但它们接受函数指针 为什么 这是我的代码 include
  • 如何在新窗口中打开图像或pdf文件?

    我有一个 gridview 它包含文件名和文件路径 图像和 pdf 格式文件 其中我使用了模板字段 在该字段下放置了 1 个图像按钮 单击该图像按钮 即 查看 按钮 时 我想在新窗口中打开所选文件 这是我的代码 protected void
  • MSChart 控件中的自定义 X/Y 网格线

    我有一个带有简单 2D 折线图的 C Windows 窗体 我想向其中添加自定义 X 或 Y 轴标记 并绘制自定义网格线 例如 以突出显示的颜色 虚线 我查看了 customLabels 属性 但这似乎覆盖了我仍然想显示的默认网格 这是为了
  • 如何对STL向量进行排序?

    我想排序一个vector vector
  • 选择 asp.net CheckBoxList 中的所有项目

    ASP NET 和 C 我想要一个带有 全选 项目的复选框列表 当这个特定项目是 已选择 所有其他都将被选择 也 当选择被删除时 这个项目 也将来自所有人 其他物品 选中 取消选中 任何其他项目只会有一个 对特定项目的影响 无论选择状态如何
  • 使用 Unity 在 C# 中发送 http 请求

    如何使用 Unity 在 C 中发送 HTTP GET 和 POST 请求 我想要的是 在post请求中发送json数据 我使用Unity序列化器 所以不需要 新的 我只想在发布数据中传递一个字符串并且能够 将 ContentType 设置
  • 运行 xunit 测试时无法将输出打印到控制台窗口

    public class test2InAnotherProject private readonly ITestOutputHelper output public test2InAnotherProject ITestOutputHel
  • 如何在 Razor 编辑视图中显示选中的单选按钮 Asp net core mvc

    尽管 Razor 视图中的 Asp 网络核心代码 model List
  • Emacs C++,打开相应的头文件

    我是 emacs 新手 我想知道 是否有在头文件 源文件和相应的源文件 头文件之间切换的快捷方式 是否有像通用 emacs 参考卡那样的参考卡 Thanks There s ff find other file 您可以使用以下方法将其绑定到
  • 是否可以使用 Dapper 流式传输大型 SQL Server 数据库结果集?

    我需要从数据库返回大约 500K 行 请不要问为什么 然后 我需要将这些结果保存为 XML 更紧急 并将该文件通过 ftp 传输到某个神奇的地方 我还需要转换结果集中的每一行 现在 这就是我正在做的事情 TOP 100结果 使用 Dappe

随机推荐

  • jquery ajax 和完整服务器路径

    当使用 jquery 通过 ajax 提交表单时 有没有办法使用完整的服务器路径而不是 url 下面的示例不起作用 但它会让您了解我正在尝试做什么 我知道你不能执行跨域 ajax 请求 但这都在同一台物理服务器上 我不想设置代理或任何太花哨
  • Go gin 获取请求体 json

    我使用邮递员发布数据并在正文中放置一些简单的 json 请求正文 order 1 Name ts1 我需要将数据传输到 json 我尝试如下 我无法获取 json 不知道缺少什么 router POST user func c gin Co
  • CSS 动画 - 为一个又一个元素设置动画

    我想要为一个元素设置动画 然后再为另一个元素设置动画 这可以用 CSS 实现吗 我似乎无法让它工作here http jsbin com licapepose 1 edit html css output到目前为止我的尝试 我有两个主要问题
  • PHP中如何检查字符串是否可以用作变量名?

    在 PHP 中可以使用可变变量 例如 class obj fieldName Surname object new obj object gt Name John object gt fieldName Doe echo object gt
  • 尝试使用 maven 编译 JavaFX 项目时断言失败

    我正在开发一个 javaFX 项目 我想使用 maven 在终端中编译它 但我无法让它工作 它在 IntelliJ 中编译得很好 但当我在终端中时却编译不好 我正在使用编译脚本来运行它 我使用的是 M2 MacBook Air 这是我的 J
  • 奇怪的 Linq 错误

    我正在使用 Linq 将任何对象的数组转换为 CSV 列表 String Join From item In objectArray Select item ToString ToArray 这给了我一个奇怪的错误 范围变量名称不能与 Ob
  • 如何在IOS中制作慢动作视频

    我要做 慢动作 在视频文件和音频中 在一些帧之间 需要store将渐变视频作为新视频 Ref http www youtube com watch v BJ3 xMGzauk http www youtube com watch v BJ3
  • 如何使用 jquery 在 bootstrap 中激活导航栏

    我想让导航栏在我单击时处于活动状态 这是我使用的jquery document ready function navbar li click function e navbar li removeClass active var this
  • 如何使用 Python 和 OpenCV 从左到右、从上到下对轮廓进行排序

    我正在寻找带有数字和字符的图像的轮廓 用于 OCR 因此 我需要将轮廓从左到右排序 同时逐行排序 即从上到下 现在 轮廓不是这样排序的 例如 上面图像的轮廓是随机排序的 我需要的是排序为 D o y o u k n o w s o m e
  • android - FileProvider - 名称不能为空

    我的清单中有以下 FileProvider
  • 使用 BATCH 脚本检查目录中是否存在任何类型的文件

    您好 我正在编写一个批处理文件来检查给定文件夹内是否有任何类型的文件 到目前为止我已经尝试过以下方法 if EXIST FOLDERNAME echo Files Exist ELSE echo Empty 如果我知道文件扩展名 例如带有以
  • 正确使用AddClipboardFormatListener并订阅WM_CLIPBOARDUPDATE消息

    我当前正在尝试在我的应用程序中使用 Windows 剪贴板及其通知 具体来说 我正在尝试订阅WM CLIPBOARDUPDATE https learn microsoft com en us windows win32 dataxchg
  • 使用默认值python设置字典的缺失值

    我有一个 defaultdict list 和其他普通字典 A 1 blah nire 2 fooblah 3 blahblah B 1 something 2 somethingsomething 现在假设我有这样的东西 missing
  • 如何从命令行关闭 Rserve

    这个问题涉及到紧密联系 https stackoverflow com questions 23264328 connection of java and r with rserve或许也与此有关关闭预订 https stackoverfl
  • 在 mac osx 上启动应用程序的多个进程

    我在 mac osx 10 9 上使用 python 2 7 来创建应用程序 该应用程序将文件名作为参数 然后打开文件 并继续监视文件的更改 直到文件关闭 对于单个文件来说它工作得很好 我使用 py2app 和 platypus 将 pyt
  • PHP/Angularjs/发布数据为空

    我确实选择了两个字段 month and origin 以表格形式提交给AngularJS控制器 我使用的是与 Ionic 框架打包的 1 3 13 版本 观看一个console log inside then方法值已正确填充 The q
  • 在 Amazon EC2 上构建 gRPC 服务器

    当我尝试在 Amazon EC2 实例上构建 gRPC 服务器 客户端时遇到问题 我有一个实例 A 具有私有 ip 例如 1 2 3 4 服务器代码就像 from concurrent import futures import time
  • 没有共享窗口的山狮上的 NSSharingService

    在山狮上 我尝试使用 AppKit framework 的 NSSharingService 类来实现新的共享可能性 这种代码一切顺利 NSArray array myText NSImage imageNamed myImageFile
  • 扫描上传的文件 C# ASP.net

    我正在尝试对上传的文件进行病毒扫描 我无法控制已安装的病毒扫描程序 该产品由多方使用不同的扫描程序托管 我尝试了以下库 但它总是在 eicar 文件上返回 VirusNotFound https antivirusscanner codep
  • 如何设置MigraDoc的页面大小?

    抱歉 我只是 PDFsharp 的初学者 如何设置文档的PageSize 就说A4吧 怎么设置呢 这是我的代码 谢谢 Document document new Document Add a section to the document