Skip to content

Commit b34caa9

Browse files
committed
Update generate-pdf-files.md to include PDF/A support details and recommendations
1 parent 3043e9e commit b34caa9

File tree

1 file changed

+57
-2
lines changed

1 file changed

+57
-2
lines changed

_articles/faq/generate-pdf-files.md

Lines changed: 57 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,66 @@ keywords: Dynamic Web TWAIN, Addon, separate, license
77
breadcrumbText: How can I generate PDF/A files?
88
description: How can I generate PDF/A files?
99
date: 2021-12-01 01:09:41 +0800
10-
last_modified: 2022-07-08 02:17:16 +0800
10+
last_modified: 2025-12-10 15:15:15 +0800
1111
---
1212

1313
# Addon
1414

1515
## How can I generate PDF/A files?
1616

17-
Dynamic Web TWAIN does not support the generation of PDF/A files.
17+
Dynamic Web TWAIN supports exporting documents as **PDF/A** starting from version **19.3**.
18+
PDF/A is an archival format designed for long-term preservation. The following variants are supported:
19+
20+
### Supported PDF/A Versions
21+
22+
| PDF/A Variant | Underlying PDF Version |
23+
|:-------------:|-----------------------------|
24+
| `pdf/a-1b` | **1.4** (default) |
25+
| `pdf/a-2b` | **1.5** (default), 1.6, 1.7 |
26+
27+
### What’s the difference between PDF/A-1b and PDF/A-2b?
28+
Although both variants ensure that documents can be reliably displayed in the future, they differ in terms of supported PDF features and compression options.
29+
- PDF/A-1b
30+
- Uses the older PDF 1.4 specification.
31+
- **Does not support JPEG2000** or JBIG2 image compression.
32+
- Does not allow transparency.
33+
- May result in larger file sizes and more conversion restrictions.
34+
35+
- PDF/A-2b
36+
- Based on newer PDF versions (1.5–1.7).
37+
- Supports **JPEG2000**, JBIG2, transparency, and other modern PDF features.
38+
- Typically requires **fewer changes** to the source document.
39+
- Usually produces **smaller output** files.
40+
41+
**Recommendation:**
42+
For most use cases, we recommend using **`pdf/a-2b`**.
43+
It offers better compression support, fewer limitations, and higher compatibility with modern PDFs while still meeting archival requirements.
44+
45+
### Behavior and Defaults
46+
47+
- If you do not set `pdfaVersion`, the export uses standard PDF format (non-PDF/A).
48+
49+
- If you set `pdfaVersion` but forget to set `version`, or set a mismatched or incorrect PDF version, Dynamic Web TWAIN automatically falls back to a default PDF version:
50+
- `pdf/a-1b` → defaults to PDF `1.4`
51+
- `pdf/a-2b` → defaults to PDF `1.5`
52+
53+
### How to Export as PDF/A
54+
55+
Configure PDF output using [`Write.Setup()`](/_articles/info/api/Addon_PDF.html#writesetup) before calling any save function.
56+
57+
```javascript
58+
DWTObject.Addon.PDF.Write.Setup({
59+
version: "1.5", // [optional] 1.4 for "pdf/a-1b"; 1.5/1.6/1.7 for "pdf/a-2b"
60+
pdfaVersion: "pdf/a-2b" // "pdf/a-1b" or "pdf/a-2b"
61+
});
62+
```
63+
64+
After configuring `pdfaVersion`, all APIs that output PDF files will automatically generate PDF/A-compliant PDFs. This includes, but is not limited to:
65+
66+
- **Save APIs** like: [`SaveAsPDF()`](/_articles/info/api/WebTwain_IO.html#saveaspdf), [`SaveSelectedImagesAsMultiPagePDF()`](/_articles/info/api/WebTwain_IO.html#saveselectedimagesasmultipagepdf), [`SaveAllAsPDF()`](/_articles/info/api/WebTwain_IO.html#saveallaspdf)
67+
68+
- **Conversion APIs** like: [`ConvertToBlob()`](/_articles/info/api/WebTwain_IO.html#converttoblob), [`ConvertToBase64()`](/_articles/info/api/WebTwain_IO.html#converttobase64)
69+
70+
- **Upload APIs** like: [`HTTPUpload()`](/_articles/info/api/WebTwain_IO.html#httpupload), [`FTPUpload()`](/_articles/info/api/WebTwain_IO.html#ftpupload), [`httpUploadBlob()`](/_articles/info/api/WebTwain_IO.html#httpuploadblob)
71+
72+
- **OCR Output APIs** like: [`SaveToPath()`](/_articles/info/api/Addon_OCR.html#savetopath), [`SaveAsBase64()`](/_articles/info/api/Addon_OCR.html#saveasbase64), [`SaveAsBlob()`](/_articles/info/api/Addon_OCR.html#saveasblob)

0 commit comments

Comments
 (0)