我使用 Itext 库将 html 中的表格转换为 pdf 并收到“无限表格循环;行内容大于页面(例如因为您没有缩放图像)”错误。请在下面找到我的代码。
public static File createPDF(File outputDir, Context context) {
Document document = null;
String htmlStr = "<table><tr><td><div class="two-col-pair-one"><div align="center">1: 9_ITEM</div><div class="row-odd">
<div class="packet-font">
<div class="two-col">Cust. Name</div>
<div class="two-col">Gg</div>
</div>
<div style="clear:both"></div>
</div>
<div class="row-even">
<div class="packet-font">
<div class="two-col">Org. City</div>
<div class="two-col">D</div>
</div>
<div style="clear:both"></div>
</div>
<div class="row-odd">
<div class="packet-font">
<div class="two-col">Dest. City</div>
<div class="two-col">D</div>
</div>
<div style="clear:both"></div>
</div>
<div class="row-even">
<div class="packet-font">
<div class="two-col">Product Type</div>
<div class="two-col">Domestic Moving</div>
</div>
<div style="clear:both"></div>
</div>
<div class="row-odd"> …Run Code Online (Sandbox Code Playgroud) 我正在创建包含许多页面的 pdf 文件。我希望第一页是纵向的,其余页面是横向的。我试过,
story.append(NextPageTemplate('landscape')) 参考
但我得到了,
ValueError: can't find template('landscape') handle_nextPageTemplate args=('landscape',)
我正在尝试使用 PHP 从 Base64 字符串生成 PDF。当我将其粘贴到浏览器中或使用网站 base64.guru 时,base64 正在工作,但是每次它在本地写入以及当我尝试打开它时,它都会说它已损坏。
Base64 字符串是
$text = 'data:application/pdf;base64,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Cjw8IC9UeXBlIC9FeHRHU3RhdGUKL0JNIC9Ob3JtYWwKL0NBIDEKPj4KZW5kb2JqCnhyZWYKMCAxNgowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMDkgMDAwMDAgbiAKMDAwMDAwMDA3NCAwMDAwMCBuIAowMDAwMDAwMTIwIDAwMDAwIG4gCjAwMDAwMDAzNzIgMDAwMDAgbiAKMDAwMDAwMDQwMSAwMDAwMCBuIAowMDAwMDAwNTM4IDAwMDAwIG4gCjAwMDAwMDA2NDEgMDAwMDAgbiAKMDAwMDAwMTE3MiAwMDAwMCBuIAowMDAwMDAxMjgxIDAwMDAwIG4gCjAwMDAwMDEzODkgMDAwMDAgbiAKMDAwMDAwMTUwMCAwMDAwMCBuIAowMDAwMDAxNjE1IDAwMDAwIG4gCjAwMDAwMDE2NzUgMDAwMDAgbiAKMDAwMDAwMTczNSAwMDAwMCBuIAowMDAwMDAxNzkyIDAwMDAwIG4gCnRyYWlsZXIKPDwKL1NpemUgMTYKL1Jvb3QgMSAwIFIKL0luZm8gNSAwIFIKL0lEWzwyOWE5YjI5NDI2MWQ5ZWIxNDIyYTgyZGU2N2ZmNDdiYj48MjlhOWIyOTQyNjFkOWViMTQyMmE4MmRlNjdmZjQ3YmI+XQo+PgpzdGFydHhyZWYKMTg0OQolJUVPRgo=';
Run Code Online (Sandbox Code Playgroud)
这就是我尝试使用的。它将文件写入该文件夹,但它说文件已损坏。我已经尝试了有关堆栈溢出的所有不同解决方案,但似乎无法使其工作。
$data = sanitize_text_field(base64_encode($text));
file_put_contents('output.pdf', base64_decode($data));
Run Code Online (Sandbox Code Playgroud) 我的网络应用程序是用 Flask 编写的。我想将 jinja 模板(HTML 格式)转换为 PDF 文件。我使用 pythonanywhere.com 作为我的应用程序的主机。
我已经使用 Flask 使用在开发环境 fedora31 上运行的 pdfkit、wkhtmltopdf、jinja2 成功生成了动态 PDF。当尝试在 pythonanywhere 环境中安装 pdfkit 时,我收到消息权限被拒绝。
对于 weasyprint,还需要安装库;这也是 pythonanywhere.com 的限制。
xhtml2pdf 的情况也是如此,无法在 pythonanywhere.com 安装
总结:pdfkit、weasyprint、xhtml2pdf 目前不是可行的替代方案,但需要在 pythonanywhere.com 安装这些库
pythonanywhere.com 安装新库有此限制。
我的问题是:
知道我的 Flask 应用程序需要 pythonanywhere.com 提供的环境才能运行,我必须采取哪些可行的替代方案将 jinja 模板转换为 PDF 格式?
任何解决这种情况的指导将不胜感激。谢谢。
我创建了一个小型 React 应用程序来测试 React PDF。
单击下载链接后,它会按预期创建 pdf。我的问题是,我创建了一个由无序列表和三个列表项组成的显示组件,但它无法正确显示列表。
它按照我的预期从 App.js 渲染,但是当我打印 PDF 时,它会将列表混合成连续的行。
是否可以使用 React PDF 实现我想要的样式?
如果是这样,任何建议将非常受欢迎。
应用程序.js
import './App.css';
import { MyDocument } from './pdf';
import { PDFDownloadLink } from '@react-pdf/renderer';
import { Display } from './display';
function App() {
return (
<div className="App">
{<PDFDownloadLink document={<MyDocument />} fileName="somename.pdf">
{({ blob, url, loading, error }) =>
loading ? 'Loading document...' : 'Download now!'
}
</PDFDownloadLink>}
<Display />
</div>
);
}
export default App;
Run Code Online (Sandbox Code Playgroud)
显示.js
export function Display() {
return …Run Code Online (Sandbox Code Playgroud) 在 netlify 上托管 remix 应用程序,使用 supabase 作为数据库。有没有办法使用 remix 生成 pdf 文档?
我最近正在为数据库中的简单 2 条记录生成报告。为了生成此报告,我使用 Laravel dompdf 包,但下载时间太长,这是意料之外的。我使用的代码如下:
$pdf = PDF::loadView('dashboard.sales-report', compact('sales'));
$pdf->setPaper('A4', 'portrait');
$sales_report_file_name = "daily_sales_".date('Y-m-d').".pdf";
return $pdf->download($sales_report_file_name);
Run Code Online (Sandbox Code Playgroud)
并在我们的视图页面中使用 css。但只有两条记录时间超过2分钟。有人可以帮我吗?提前致谢。
刀片文件代码:
@extends('layouts.invoice_master')
@section('content')
@php
$total_discount = 0;
$total_advance = 0;
$total_net_sum = 0;
$total = 0;
@endphp
<!-- START CONTAINER FLUID -->
<div class=" container-fluid container-fixed-lg">
<!-- START card -->
<div class="card card-default m-t-20">
<div class="card-body">
<!-- Define header and footer blocks before your content -->
<header>
<p>{{ $report_for }} </p>
<p>{{ $report_for_date }}</p>
<p>{{ $report_for_month }}</p>
</header>
<div class="invoice padding-50 …Run Code Online (Sandbox Code Playgroud) 有人已经在iPad应用程序中创建了PDF文档吗?我看到UIKit中有新功能来执行此操作,但我找不到任何代码示例.
BOOL UIGraphicsBeginPDFContextToFile (
NSString *path,
CGRect bounds,
NSDictionary *documentInfo
);
void UIGraphicsBeginPDFPage (
void
);
Run Code Online (Sandbox Code Playgroud)
我找到了一个可以在iPhone上运行的例子,但这给了我错误:
Fri Apr 30 11:55:32 wks104.hs.local PDF[1963] <Error>: CGFont/Freetype: The function `create_subset' is currently unimplemented.
Fri Apr 30 11:55:32 wks104.hs.local PDF[1963] <Error>: invalid Type1 font: unable to stream font.
Fri Apr 30 11:55:32 wks104.hs.local PDF[1963] <Error>: FT_Load_Glyph failed: error 6.
Fri Apr 30 11:55:32 wks104.hs.local PDF[1963] <Error>: FT_Load_Glyph failed: error 6.
Fri Apr 30 11:55:32 wks104.hs.local PDF[1963] <Error>: FT_Load_Glyph failed: error 6.
Fri Apr …Run Code Online (Sandbox Code Playgroud) 我试图用a UIWebView而不是a 来绘制内容UIView,因为我喜欢UIWebView通过捏合放大和缩小的能力.这是我的代码:
// setup environment
CGRect outputRect = myWebView.bounds;
CFMutableDataRef data = CFDataCreateMutable(NULL, 0); // init with default allocator and unlimited size
CGDataConsumerRef dataConsumer = CGDataConsumerCreateWithCFData(data);
CGContextRef pdfContext = CGPDFContextCreate(dataConsumer, &outputRect, NULL);
CGPDFContextBeginPage(pdfContext, NULL);
// draw something
CGContextSetRGBFillColor (pdfContext, 1, 0, 0, 1);
CGContextFillRect (pdfContext, CGRectMake (0, 0, 200, 100 ));
CGContextSetRGBFillColor (pdfContext, 0, 0, 1, .5);
CGContextFillRect (pdfContext, CGRectMake (0, 0, 100, 200 ));
CGPDFContextEndPage(pdfContext);
// load drawing in webView
[myWebView loadData:(NSData *)data …Run Code Online (Sandbox Code Playgroud) 实际上我正在尝试使用NReco PDF转换器将html内容转换为pdf,但是,这行代码为pdfDoc.GeneratePdf(HtmlContent); 无法通过Azure Web应用程序,但它在我的开发环境中正常工作.所以我的问题是我应该选择哪种云服务?
pdf-generation ×10
pdf ×3
asp.net-mvc ×1
cgpdf ×1
flask ×1
html-table ×1
html-to-pdf ×1
ios ×1
ipad ×1
itext ×1
javascript ×1
laravel-6 ×1
multipage ×1
pdfkit ×1
php ×1
python ×1
python-3.x ×1
react-pdf ×1
reactjs ×1
remix.run ×1
reportlab ×1
supabase ×1
uiwebview ×1
wkhtmltopdf ×1