PDFSharp 常见问题
PDFSharp 常见问题
PDFsharp: Frequently Asked Questions - PDFsharp and MigraDoc Wiki
1. PDFSharp 是什么?
PDFSharp 是可以用来程序化创建和修改 Adobe PDF 文档的 .NET 库。使用 C# 语言开发,可以用于任何 .NET 语言项目。
2. PDFSharp 依赖或者使用任何其它的工具或者库吗
PDFSharp 是全新设计并从头使用 C# 开发的,既不使用 Adobe 的 PDF 库,也不需要 Acrobat。
3. PDFSharp 的授权类型是什么?
PDFSharp 是开源软件。你可以复制、修改并集成 PDFSharp 源代码到你的应用中,而完全没有限制。
4. PDFSharp 可以用来显示 PDF 文件吗?打印 PDF 文件呢?从 PDF 文件创建图片?
PDFSharp 提供了一个预览控件,用来可视化 XGraphics 对象的绘制操作,但它不能用来渲染 PDF 文件。
尽管来自页面的 XObject 对象的 DrawImage 函数可以用来绘制,如果你尝试使用它渲染这样的对象进行预览,只有边框可以绘出,它并不能用来渲染。
注意:使用 Pdfium 可以提供 PDF 渲染支持,参见:在 .NET 下使用 Pdfium 渲染和打印 PDF
5. 可以在 PDFSharp 中使用 PostScript 字体吗?
PDFSharp 不能使用 PostScript 字体。只有 TrueType 字体和使用 TrueType 轮廓的 OpenType 字体可以被 PDFSharp 所使用。
6. 可以中 Medium 信任等级下,在 Web 服务器上使用 PDFSharp 吗?
使用 PDFSharp 1.50,你可以在 Web 服务器上不要求完全信任环境下运行应用程序,你只能使用你自己通过 FontResolver 所提供的字体。见:PDFsharp Sample: Private Fonts
7. PDFSharp 支持 Arabic,Hebrew,CJK (中、日、韩) 吗?
1.50 还不能支持。从右向左的语言也不能支持。只有简单的语言,使用一对一的字符与字型简单对应关系,例如应用或者德语被支持。
不支持做一点解释。
如果你反转字符串,并将所有的段落设置位左对齐的话,希伯来语看起来是可以的。
阿拉伯语基于字符的位置 ( 开始,结束,中间,单个 ) ,字符对应不同的字型。PDFSharp 不支持正确的选择这些字型。如果你反转字符串的话,并且如果你确保选择正确的 Unicode 字符用于开始、结束、中间、或者独立位置,阿拉伯与可能工作。确保你使用包含了阿拉伯字符的字体。
看起来简体中文也是可以工作的。
8. PDFSharp 支持哪些 PDF 版本?
使用 PDFSharp,你可以创建从 1.2 ( Adobe Reader 3.0 ) 版本到 1.7 版本 ( Adobe Reader 8.0 ) 的 PDF 文档。
PDFSharp 完全支持 PDF 1.4 标准 ( Adobe Reader 5.0 ),包括该版本引入的透明功能。
某些 PDF 1.5 ( Adobe Reader 6.0 ) 的功能还没有实现,进而 PDFSharp 还不能打开所有标记位 PDF 1.5 或者更高版本的文档。
由于没有实现 PDF 1.5 中全部的压缩功能,对这样的文件在使用 PDFSharp 处理之后,尺寸可能会增大。
看起来是对对象流 object stream 不能支持造成的。
9. PDFSharp 支持 PDF/A 标准吗?
PDFSharp 1.50 还不能支持。
10. PDFSharp 支持 AcroForms 吗?
在 PDFSharp 1.5 中,对 AcroForms 提供有限支持。
11. 我可以使用 PDFSharp 将 HTML 或者 RTF 转换为 PDF 吗?
不能,没有开箱即用的支持。我们也不准备开发这样的转换器。
是的,PDFSharp 加上一些额外的代码是可以做到的,但我们不提供这样的代码。
在 NuGet 或者其它来源中,你可以找到第三方的库 "HTML Renderer for PDF using PDFSharp",它可以将 HTML 转换为 PDF。也可能还有其它库实现类似的功能,可能你可以直接使用,你也可以从这些开始。
12. 我可以使用 PDFSharp 将 PDF 转换为 Word、RTF、HTML 吗?
不能,我们没有计划开发这样的代码。
13. 我可以使用 SQL Server 2008 Reporting Services 创建的 PDF 文件吗?
对于 SQL Server 2008 Reporting Services 创建的 PDF 还存在一些问题。我们正在处理中。
作为使用 SQL Server 2005 Reporting Service 来创建报表。
对于 SQL Server 2008 Reporting Service 的变通方式,对 ReportExecutionService 对象的 DeviceSetting 参数,提供如下值:
theDeviceSettings = "<DeviceInfo><HumanReadablePDF>True</HumanReadablePDF></DeviceInfo>";
这样禁用 SSRS 2008 的 PDF 压缩。进而,PDFSharp 就可以处理未压缩的 PDF 文件。
SSRS 2005 会忽略该设置,所以它可以用于这两个 SSRS 版本中。
14. 可以使用 PDFSharp 从 PDF 中抽取文本吗?
可以使用底层操作来做到。你可以按照其绘制的顺序得到文本字符 - 大多数的应用程序使用从上到下,从左到右的顺序。并没有高级的函数返回单词、段落、或者整篇文档。
15. PDFSharp 可以模拟加粗或者斜体吗?
PDFSharp 1.50 还不能。
16. PDF 文件中的分辨率 DPI 是多少?可以如何设置该 DPI?
PDF 使用矢量格式,所以并没有 DPI 分辨率的说法。PDF 中的光栅图片有 DPI 分辨率,但分辨率由使用方式决定。
考虑一个 300DPI 的图片,该图片可以一次性嵌入到 PDF 文件中,但可以被多次绘制。可能在页面 1 中呈现为缩略图,在页面 2 中以全尺寸呈现,在页面 3 中双倍呈现,可能在页面 1 中使用 600 DPI,页面 2 中使用 300 DPI,页面 3 中使用 150 DPI。但是当你在 Adobe Reader 中查看 PDF 的时候,使用 1000% 的缩放因子将导致很低的分辨率。
PDF 本身使用矢量格式,所以并没有 DPI。PDFSharp 使用 point 作为坐标系统的单位,每英寸对应 72 个 point。为便于使用,单位可以从英寸、厘米、毫米或者其它单位转换过来。
PDFSharp 常见问题的更多相关文章
- C++常见笔试面试要点以及常见问题
1. C++常见笔试面试要点: C++语言相关: (1) 虚函数(多态)的内部实现 (2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现 ...
- SQL Server常见问题介绍及快速解决建议
前言 本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题.这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架. 下面一些问题是 ...
- 【腾讯优测干货分享】如何降低App的待机内存(二)——规范测试流程及常见问题
本文来自于腾讯优测公众号(wxutest),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/806TiugiSJvFI7fH6eVA5w 作者:腾讯TMQ专项测 ...
- mysql数据库开发常见问题及优化
mysql 数据库是被广泛应用的关系型数据库,其体积小.支持多处理器.开源并免费的特性使其在 Internet 中小型网站中的使用率尤其高.在使用 mysql 的过程中不规范的 SQL 编写.非最优的 ...
- 《PDF.NE数据框架常见问题及解决方案-初》
<PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案: PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...
- MIS性能优化常见问题与方案(辅助项目组性能优化的总结贴)
最近帮忙公司的几个项目组进行了不同方面的性能优化,发现几个项目都出现了一些共性的问题.这里写一篇文章,总结一下这几类问题,以及其对应的解决方案.方便其它项目组参考. 常见问题一:打开页面非常慢,有 ...
- JMeter常见问题集合
前言 本文内容仅仅是针对Jmeter的部分功能名词的介绍和解释,以及初学者不易理解的问题的整理.部分内容来自别人做的整理,为了更好地整理自己的思路,所以可耻的整理一下发到博客上. 标题[1-6]和[参 ...
- NHibernate常见问题及解决方法
NHibernate常见问题及解决方法 曾经学过NHibernate的,但是自从工作到现在快一年了却从未用到过,近来要巩固一下却发现忘记了许多,一个"in expected: <end ...
- .NET Core中ADO.NET SqlClient的使用与常见问题
一.简介 在很多要求性能的项目中,我们都要使用传统的ADO.NET的方式来完成我们日常的工作:目前有一些网友问有关于.NET Core操作SQL Server的问题在本文中解答一下. 本文旨在指出,在 ...
- 企业IT管理员IE11升级指南【6】—— Internet Explorer 11面向IT专业人员的常见问题
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
随机推荐
- Dos常用命令 - Dir
Dos命令,用于扫描当前目录创建目录清单 dir /s /b /ad >> "目录清单.txt" 解释: 将 dir /s /b /ad 生成的目录 追加写入目录清单. ...
- 简化部署流程:Rainbond让Jeepay支付系统部署更轻松
在如今的开发环境中,部署一套像 Jeepay 这样的 Java 支付系统往往需要开发者面对繁琐的配置.依赖环境管理以及服务的高可用性保障,手动部署和运维变得异常艰巨和费时.然而,借助 Rainbond ...
- Android UsbDeviceManager 代码分析
USBDeviceManager是一个Android系统中用于管理USB设备的类,它是系统服务之一.其主要功能是控制USB设备的连接和断开,以及管理USB设备的权限和状态.下面是对USBDeviceM ...
- Android :安卓学习笔记之 Handler机制 的简单理解和使用
目录 Handler机制 1.Handler使用的引出 2.背景和定义 3.作用和意义 4.主要参数 5.工作原理及流程 5.1.对应关系 6.深入分析 Handler机制源码 6.1.Handler ...
- kubernetes拉取私有镜像仓库的镜像
kubernetes拉取私有镜像仓库时需要使用镜像仓库的账号密码 方式: apiVersion: v1 kind: Pod metadata: name: private-reg spec: cont ...
- 基于 KubeSphere 的应用容器化在智能网联汽车领域的实践
公司简介 某国家级智能网联汽车研究中心成立于 2018 年,是担当产业发展咨询与建议.共性技术研发中心.创新成果转化的国家级创新平台,旨在提高我国在智能网联汽车及相关产业在全球价值链中的地位. 目前着 ...
- KubeSphere DevOps 流水线入门指南
作者:赵海亮,浙江大学计算机专业四年级在读博士生,研究方向为云计算.边缘计算.分布式系统等. 虽然 KubeSphere 能够将我们从 yaml 文件的编写中解放出来,但是项目上云仍然十分繁琐. 此外 ...
- .NET 隐藏/自定义windows系统光标
本文介绍如何操作windows系统光标.正常我们设置/隐藏光标,只能改变当前窗体或者控件范围,无法全局操作windows光标.接到一个需求,想隐藏windows全局的鼠标光标显示,下面讲下如何操作 先 ...
- 从零开始学逆向CTF比赛,免费参加,欢迎来玩!
大家好,我是轩辕. 告诉大家一个好消息:我准备了一次逆向CTF比赛,面向所有人开放,无需购买课程,优秀的小伙伴还有奖励,参赛方式在文末会介绍,欢迎大家一起来玩. 举办这次CTF比赛,是为了检验大家从零 ...
- 一些有用的shell命令组合
1.找出Linux系统中磁盘占用最大的10个文件 1)CentOS7 和 busybox 1.30.1 验证可用 find / -type f -print0 | xargs -0 du | sort ...