标签: pdfkit

在节点js中使用pdfkit指定PDF页面大小

我在pdfkit手册中读到pdf页面可以使用大小[宽度,高度]来调整大小.但是当我尝试以下代码时它不起作用

var PDFDocument = require('pdfkit');

var doc = new PDFDocument;
doc.size=[50,50];
doc.end()
Run Code Online (Sandbox Code Playgroud)

pdfkit node.js

2
推荐指数
1
解决办法
2576
查看次数

如何在 Flask 应用程序中将样式表文件链接到 pdfkit?

我正在尝试使用pdfkit内部Flask应用程序从 html 页面创建 pdf,但是在使用pdfkit.

我试图举出最小的例子。我有这个文件结构

App
 |_ static
 |  |- style.css
 |_ templates
 |  |- base.html
 |_ pdfs
 |  |- file.pdf
 |_ application.py
Run Code Online (Sandbox Code Playgroud)

里面application.py

import flask
import pdfkit
app = flask.Flask(__name__)

@app.route('/')
def index():

    page = flask.render_template('base.html')
    pdfkit.from_string(page, 'pdfs/file.pdf')
    return page

@app.route('/download', methods=['POST'])
def download():

    if flask.request.method == 'POST':
        flask.send_from_directory(
        directory='pdfs', filename='file.pdf', as_attachment=True)
    else:
        flask.redirect(flaks.url_for('index'))

if __name__ == '__main__':

    app.run()
Run Code Online (Sandbox Code Playgroud)

样式表只是向 td 元素添加红色背景:

td {
    background-color: red;
}
Run Code Online (Sandbox Code Playgroud)

最后是base.html

<!DOCTYPE …
Run Code Online (Sandbox Code Playgroud)

python pdf pdfkit wkhtmltopdf flask

2
推荐指数
1
解决办法
1万
查看次数

为什么 PDFKit 不能很好地处理边距?

虽然我只是不需要通常问一些事情(互联网只是一个金矿,尤其是这个网站),但这让我失望,因为我已经花了两天时间试图让它工作,但我没有找到任何东西有用。如果找到类似帖子的链接,将不胜感激,因为我没有找到。让我们开始吧。


我使用 PDFKit 与 Python 2.7 和 Django 1.9 来生成一些 HTML 到 PDF。工作轻松。HTML 看起来就像这样:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style type="text/css">
    * {
      /* Box-model */
      margin: 0;
      padding: 0;
    }

    .wrapper {
      /* Box-model */
      width: 229mm;
      height: 161mm;
    }
  </style>
</head>
<body>
  {% for someone in people %}
  <div class="wrapper">
    <p><strong>{{ someone.complete_name }}</strong></p>
    <p>{{ someone.bio }}</p>
  </div>
  {% endfor %}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的 PDFKit 选项如下所示:

{
    "page-width": "229mm",
    "page-height": "162mm",
    "paper-size": "CE5",
    "encoding": "utf-8"
}
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,我只是不添加任何边距或填充。我生成了 PDF,看起来很棒(毫不奇怪,一切都在它所属的地方)。但是,如果我在 …

python pdf django pdfkit

2
推荐指数
1
解决办法
8055
查看次数

使用 node、pdfkit 和 fontawesome 生成 PDF?

我正在运行一个节点服务器,并且想要使用 PDFkit 将一些图标添加到动态创建的 PDF - 所以我安装了 fontawesomenpm install fontawesome并在创建 pdf 的 .js 文件中需要它var fa = require('fontawesome');

然后我尝试将图标与 PDFKit 一起使用:

doc.fontSize(40).fill('black').text(fa('bath'), 160, 80);

但是,我没有看到bath图标——只有两个乱七八糟的符号。

我需要做什么才能渲染 fa 图标?这是一个没有前端的服务器端脚本,使用 cron 运行,该 cron 会 ping Oracle 视图以获取动态信息,作为每日电子邮件的一部分。(所以,我没有使用任何 css 或 html 来创建文档)

感谢您的帮助!

pdf pdfkit node.js npm fontawesome-4.4.0

2
推荐指数
1
解决办法
1741
查看次数

使用 PDFKit - iOS 11 点击 Annotation 后触发 In-App-Browser

我正在使用 Apple 的 PDFKit 开发一个应用程序,并设法放置了一些带有工作的注释按钮,PDFActionURL在点击它们后打开 iOS 标准浏览器。

不幸的是,我没有找到一个可行的解决方案,即如何在应用内浏览器中打开相关链接或在 web 视图中加载它。点击 AnnotationButton 后,PDFKit 会自动打开 Safari,我还没有找到有关 iOS 的属性或其他方式来通过操作 PDFAction 来影响此行为。

let urlString = "https://www.apple.com"
let urlAction = PDFActionURL(url: urlString)
urlButton.action = urlAction
pdfPage.addAnnotation(urlButton)
Run Code Online (Sandbox Code Playgroud)

有没有办法强制每次调用 In-App-BrowserUIApplication.shared.open()或操纵 a 的执行PDFAction

pdfkit swift ios11

2
推荐指数
1
解决办法
789
查看次数

如何在 Docker 容器中运行 pdfkit from_file

以下是我的 Docker 代码:

FROM python:3.6.2-jessie

## Prepare apt-get:
RUN echo "debconf debconf/frontend select Noninteractive" | debconf-set-selections && \
    apt-get update -qy && \
     apt-get upgrade -qy && \
    apt-get clean autoclean && \
    apt-get install wkhtmltopdf -y && \
    apt-get autoremove -y && \
    apt-get install python3-setuptools -qy &&\
    apt-get install python3-dev -qy && \
    apt-get install python3-pip -qy && \
    apt-get install build-essential -qy && \
    apt-get -y install openssh-client -qy && \
    apt-get clean

RUN pip3 install --upgrade …
Run Code Online (Sandbox Code Playgroud)

pdfkit python-3.x

2
推荐指数
1
解决办法
1405
查看次数

使用 PDFkit 通过 Nodemailer 发送 base64 编码的 PDF

我有一个函数可以返回一个 base64 编码的 PDF,我想使用 nodemailer 将其作为 PDF 附件文件发送。

关于nodemailer文档,我找到了这个例子:

const mailOptions = {
    from: 'email1@gmail.com', // sender address
    to: 'email2@gmail.com', // list of receivers
    subject: 'Simulation', // Subject line
    html: '<p>SALUT</p>', // plain text body
    filename: 'file.pdf',
    attachments: [
          content: Buffer.from(
                'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/' +
                    '//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U' +
                    'g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC',
                'base64'
            ),

            cid: 'note@example.com' // should be as unique as possible
        },
Run Code Online (Sandbox Code Playgroud)

但是,这对我不起作用。我错过了什么吗?

pdf attachment pdfkit node.js nodemailer

2
推荐指数
1
解决办法
5197
查看次数

Swift 5 - 如何使用 PDFKit 在 PDF 中创建表格

我在 UIGraphicsPDFRendererFormat 中有高度为 400 的信息,我想在其中附加一个表格,但是如果表格大于页面,我需要自动创建新页面并继续使用其他页面中的表格。

我找到了有关将 UITableView 转换为 PDF 的答案,但我不使用 UITableView。

我将用数组填充表格:names:[String] , addresses:[String], money:[Double] 数组货币应在表格末尾自动求和。

那么如果内容更大,如何绘制并自动创建新页面?

pdfkit ios swift swift5

2
推荐指数
1
解决办法
3777
查看次数

有没有办法在点击时存储 pdf 注释?

我正在构建一个机器学习应用程序来读取 pdf 信息,为了训练我的算法,我需要获取 pdf 注释位置。有没有办法设置手势识别器并在单击时将注释添加到数组中?我成功地将注释添加到正则表达式的 pdf 中。但我需要添加注释及其相关信息(单击后在文档中的位置)我可以向应用程序添加手势识别器吗?我的应用程序使用 SwiftUI。

func makeNSView(context: NSViewRepresentableContext<PDFViewRepresentedView>) -> PDFViewRepresentedView.NSViewType {
    let pdfView = PDFView()
    let document = PDFDocument(url: url)
    let regex = try! NSRegularExpression(pattern: #"[0-9.,]+(,|\.)\d\d"#, options: .caseInsensitive)
    let string = document?.string!
    let results = regex.matches(in: string!, options: .withoutAnchoringBounds, range: NSRange(0..<(string?.utf16.count)!))
    let page = document?.page(at: 0)!
    results.forEach { (result) in
        let startIndex = result.range.location
        let endIndex = result.range.location + result.range.length - 1
        let selection = document?.selection(from: page!, atCharacterIndex: startIndex, to: page!, atCharacterIndex: endIndex)
        print(selection!.bounds(for: page!))
        let pdfAnnotation …
Run Code Online (Sandbox Code Playgroud)

pdfkit ios swift swiftui

2
推荐指数
1
解决办法
960
查看次数

使用PDFKit进行未初始化的常量错误

在我的rails应用程序中,我试图从html生成pdf并尝试使用pdfkit和wkhtmltopdf.我试图从最简单的代码开始,如:

kit = PDFKit.new("<p>This is some text.</p>")
pdf = kit.to_file "/home/user/test.pdf"
Run Code Online (Sandbox Code Playgroud)

但我最终得到以下错误:

uninitialized constant TestController::PDFKit
Run Code Online (Sandbox Code Playgroud)

TestController是我的控制器名称.仅供参考,我正在使用Fedora12和rails 2.2.

需要一些帮助.有人在吗?

ruby-on-rails pdfkit

1
推荐指数
1
解决办法
1898
查看次数