# How to Export PDF/A, PDF/A-3, or PDF/A-4 Format Documents in C#
<div class="alert alert-info iron-variant-1" role="alert">
Twoja firma wydaje zbyt dużo na coroczne subskrypcje bezpieczeństwa PDF i zgodności. Rozważ <a href="https://ironsoftware.com/enterprise/securedoc/">IronSecureDoc</a>, który oferuje rozwiązania do zarządzania usługami SaaS, takimi jak podpisywanie cyfrowe, redakcja, szyfrowanie i ochrona, wszystko za jednorazową opłatę. <a href="https://ironsoftware.com/enterprise/securedoc/docs/">Zobacz dokumentację IronSecureDoc</a>
</div>
**IronPDF wspiera eksport PDF-ów do standardów PDF/A-3b i PDF/A-4**. PDF/A-3B jest ścisłym podzbiorem specyfikacji ISO PDF używanym do tworzenia archiwalnych wersji dokumentów z zamiarem, że zawsze będą renderowane dokładnie tak samo jak w momencie ich zapisania. PDF/A-4 to najnowszy standard zgodności, oferujący ulepszoną obsługę podpisów cyfrowych.
## Zgodność z Section 508
IronPDF realizuje inicjatywę Google mającą na celu zwiększenie archiwizacji i dostępności PDF dla zgodności z Section 508. Podczas pracy z [konwersją HTML na PDF](https://ironpdf.com/tutorials/html-to-pdf/), nasz silnik renderujący zachowuje wszystkie funkcje dostępności.
W 2021 roku przeszliśmy na renderowanie PDF-ów z HTML za pomocą silnika renderującego HTML Google Chromium. Dzięki temu nasze oprogramowanie dziedziczy [prace nad dostępnością, które Google już zrealizował](https://blog.chromium.org/2020/07/using-chrome-to-generate-more.html).
### Dlaczego zgodność z Section 508 jest ważna dla dokumentów PDF/A?
Zgodność z Section 508 zapewnia, że dokumenty PDF są dostępne dla osób z niepełnosprawnościami korzystających z technologii wspomagających, takich jak czytniki ekranowe. Dokumenty PDF/A spełniające standardy Section 508 gwarantują, że treść pozostanie dostępna przez cały okres archiwizacji. Ta zgodność jest kluczowa dla agencji rządowych, instytucji edukacyjnych i organizacji zapewniających równy dostęp do informacji dla wszystkich użytkowników.
***
<div class="hsg-featured-snippet">
<h3>Minimalny przepływ pracy (4 kroki)</h3>
<img class="featured-snippet__image featured-snippet__image--float-right featured-snippet__image--new-template"
src="/static-assets/pdf/images/How-to-Export-PDFA-Compliant-Documents.webp" alt="4-etapowy proces tworzenia dokumentów zgodnych z PDF/A
w języku C# przy użyciu biblioteki IronPDF wraz z poleceniem instalacji" />
<ol>
<li><a class="js-modal-open" data-modal-id="trial-license-after-download"
href="https://www.nuget.org/packages/IronPdf/">Download C# Library for Creating PDF/A Documents</a></li>
<li>Wczytaj istniejący PDF lub wygeneruj z HTML/URL</li>
<li>Wybierz wersję PDF/A na podstawie wymogów archiwizacji</li>
<li>Konwertuj i zapisz jako dokument zgodny z PDF/A</li>
</ol>
</div>
## Jakie wersje PDF/A wspiera IronPDF?
IronPDF wspiera poziomy zgodności A i B. 'A' oznacza 'dostępny', a 'B' oznacza 'podstawowy'. Te poziomy są dostępne we wszystkich standardach PDF/A-1, PDF/A-2 i PDF/A-3. Poniższe informacje pochodzą z [dokumentacji Adobe dotyczącej PDF/A](https://www.adobe.com/uk/acrobat/resources/document-files/pdf-types/pdf-a.html). Domyślnie, wyjście PDF generowane przez IronPDF to PDF/A-3B (ISO 19005-3).
- **Poziom A** spełnia wszystkie wymagania specyfikacji, umożliwiając oprogramowaniu wspomagającemu poprawę dostępności dla fizycznie niepełnosprawnych użytkowników.
- **Poziom B** ma niższą zgodność z minimalną zgodnością, skupiając się na długoterminowym zachowaniu wyglądu wizualnego.
### Jaka jest różnica między PDF/A-1, PDF/A-2 i PDF/A-3?
**PDF/A-1:** Oparty na oryginalnej wersji PDF 1.4.
**PDF/A-2:** Wydany w lipcu 2011 jako ISO 32001-1, zawiera wszystkie funkcje wersji PDF do 1.7 plus nowe funkcje. Obsługuje JPEG2000 dla zeskanowanych dokumentów i specyficzne wymagania dotyczące dostosowanego metadanych XMP. Pracując z [metadanymi PDF](https://ironpdf.com/how-to/metadata/), IronPDF zapewnia poprawną obsługę metadanych XMP.
**PDF/A-3:** Zawiera wszystkie wymagania dla poziomu 2. Pozwala na osadzanie dodatkowych formatów plików - XML, CSV i formaty przetwarzania tekstu - w dokumentach zgodnych z PDF/A.
**PDF/A-4:** Najnowsza wersja standardu zgodności PDF/A, wydana w 2020. Bazuje na PDF 2.0 i wprowadza ulepszoną funkcjonalność, w tym ulepszoną obsługę podpisów cyfrowych w porównaniu z PDF/A-3. Ta wersja najlepiej nadaje się do dokumentów inżynieryjnych i przepływów technicznych, które obejmują modele 3D i inne złożone elementy.
<div class="content-table dotnet-core-pdf-table">
<table>
<tbody>
<tr class="tr-head">
<th class="tcol1">Funkcja</th>
<th class="tcol2">PDF/A-3</th>
<th class="tcol3">PDF/A-4</th>
</tr>
<tr>
<td>Wersja podstawowa PDF</td>
<td>PDF 1.7</td>
<td>PDF 2.0</td>
</tr>
<tr>
<td>Osadzone załączniki plików</td>
<td>Obsługiwane</td>
<td>Nieobsługiwane</td>
</tr>
<tr>
<td>Podpisy cyfrowe</td>
<td>Obsługiwane</td>
<td>Ulepszona obsługa</td>
</tr>
<tr>
<td>Najlepsze przypadki użycia</td>
<td>Faktury, wbudowywanie danych XML</td>
<td>Inżynieria, modele 3D, przepływy techniczne</td>
</tr>
</tbody>
</table>
</div>
[[i:(IronPDF nie obsługuje jeszcze konwersji PDF z załączonym plikiem do PDF/A-3B.)]]
## Konwersja do najnowszego standardu PDF/A-4
PDF/A-4 jest najnowszym standardem zgodności w serii PDF/A. Jest uważany za najlepszy format archiwalny dla szerokiej gamy typów dokumentów, szczególnie tych obejmujących podpisy cyfrowe. Format nie pozwala na szyfrowanie i elementy multimedialne, zapewniając, że każdy plik pozostaje w pełni samowystarczalny.
Konwersja istniejącego pliku do zgodnego standardu PDF/A-4 jest prosta.
```csharp
using IronPdf;
// Load an existing PDF
PdfDocument pdf = PdfDocument.FromFile("input.pdf");
// Save as PDF/A-4 compliant document
pdf.SaveAsPdfA("pdfa4-output.pdf", PdfAVersions.PdfA4);
```
## Z istniejącego pliku PDF (PDF/A-3B)
Ten przykład używa `wikipedia.pdf`, pliku PDF stworzonego przy użyciu IronPDF. Dla optymalnych wyników upewnij się, że [poprawnie skonfigurowano klucze licencyjne](https://ironpdf.com/how-to/license-keys/) przed rozpoczęciem konwersji.
Kod poniżej wczytuje i ponownie zapisuje plik zarówno jako zgodny z PDF/A-3B, jak i PDF/A-4, aby pokazać zgodność z oboma standardami.
### Jak wygląda plik wejściowy PDF przed konwersją?
<iframe loading="lazy" src="/static-assets/pdf/how-to/pdfa/wikipedia.pdf#view=fit" width="100%" height="500px">
</iframe>
### Jaki kod konwertuje istniejące PDF-y do formatu PDF/A?
```csharp
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b);
```
### Jak mogę zweryfikować, czy konwersja PDF/A była udana?
Plik wyjściowy jest zgodny z PDF/A-3b:

<iframe loading="lazy" src="/static-assets/pdf/how-to/pdfa/pdf-a3-wikipedia.pdf#view=fit" width="100%" height="500px">
</iframe>
## Z projektu HTML lub URL (PDF/A-3B)
Ten przykład używa `design.html`, pliku projektowego HTML do renderowania z HTML do PDF za pomocą IronPDF i eksportowania jako plik zgodny z PDF/A. Proces [konwersji pliku HTML na PDF](https://ironpdf.com/how-to/html-file-to-pdf/) zachowuje całe formatowanie i stylizację podczas konwersji.
Kod poniżej zapisuje plik wyjściowy jako PDF zgodny z PDF/A-3B.
### Jak konwertować pliki HTML do formatu PDF/A?
```csharp
using IronPdf;
// Use the Chrome Renderer to make beautiful HTML designs
var chromeRenderer = new ChromePdfRenderer();
// Render an HTML design as a PdfDocument object using Chrome
PdfDocument pdf = chromeRenderer.RenderHtmlAsPdf("design.html");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("design-accessible.pdf", PdfAVersions.PdfA3b);
```
Plik wyjściowy jest zgodny z PDF/A-3B:

### Jak konwertować strony internetowe do formatu PDF/A?
Ten przykład renderuje `https://www.microsoft.com` z URL do PDF używając IronPDF i eksportuje go jako plik zgodny z PDF/A. Funkcja [konwersji URL na PDF](https://ironpdf.com/how-to/url-to-pdf/) zapewnia prawidłowe renderowanie całej zawartości internetowej, w tym JavaScriptu i CSS.
Kod poniżej zapisuje plik wyjściowy jako PDF zgodny z PDF/A-3B.
```csharp
using IronPdf;
// Use the Chrome Renderer to make beautiful HTML designs from URLs
var chromeRenderer = new ChromePdfRenderer();
// Render a Website as a PdfDocument object using Chrome
PdfDocument pdf = chromeRenderer.RenderUrlAsPdf("https://www.microsoft.com");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("website-accessible.pdf", PdfAVersions.PdfA3b);
```
Plik wyjściowy jest zgodny z PDF/A-3B:

---
## Wspieranie osadzania załączników (PDF/A-3B)
IronPDF wspiera osadzanie plików w dokumentach PDF podczas konwersji do PDF/A za pomocą ścieżek plików, tablic bajtowych lub strumieni. Ta funkcja tworzy samodzielne dokumenty archiwalne, które zawierają wszystkie niezbędne materiały pomocnicze. Dla bardziej zaawansowanych funkcji manipulacji PDF sprawdź nasz [samouczek edycji PDF](https://ironpdf.com/tutorials/csharp-edit-pdf-complete-tutorial/).
[[i:(Uwaga: Osadzone załączniki plików są wspierane tylko w PDF/A-3B. PDF/A-4 nie obsługuje osadzonych załączników.)]]
### Osadź za pomocą ścieżek plików
Osadź pliki, używając ich ścieżek plików. Podana jest kolekcja ścieżek plików, a te pliki są dołączane jako załączniki podczas konwersji do PDF/A.
```csharp
using IronPdf;
using System.Collections.Generic;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as string of path
IEnumerable<string> embedPaths = new[] { "File1.xml", "File2.png" };
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedPaths);
```
### Jak osadzić pliki za pomocą tablic bajtowych?
Osadzaj pliki, dostarczając zawartość pliku jako tablice bajtów z ich typami. Przydatne, gdy pliki są już załadowane do pamięci.
```csharp
using IronPdf;
using System.Collections.Generic;
using System.IO;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as Bytes and their file type
byte[] fileData1 = File.ReadAllBytes("File1.png");
byte[] fileData2 = File.ReadAllBytes("File2.xml");
var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);
embedFileConfig1.EmbedFileName = "logo.png";
var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml)
{
EmbedFileName = "supportSystem.xml",
AFDesc = "Internal system",
ConformanceLevel = ConformanceLevel.XRECHNUNG,
SchemaNamespace = SchemaNamespace.Zugferd1,
SchemaPrefix = SchemaPrefix.rsm,
PropertyVersion = PropertyVersion.v1p0,
AFRelationship = AFRelationship.Supplement,
};
IEnumerable<EmbedFileByte> embedBytes = new[]
{
new EmbedFileByte(fileData1, embedFileConfig1),
new EmbedFileByte(fileData2, embedFileConfig2)
};
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedBytes).SaveAs("PdfACompliance.pdf");
```
### Jak osadzić pliki za pomocą strumieni?
Osadź pliki używając strumieni dla zawartości z ich typami plików. Idealne, gdy dane pliku są przetwarzane jako strumień.
```csharp
using IronPdf;
using System.Collections.Generic;
using System.IO;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as Stream and their file type
Stream stream1 = new MemoryStream(File.ReadAllBytes("File1.png"));
Stream stream2 = new MemoryStream(File.ReadAllBytes("File2.xml"));
var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);
embedFileConfig1.EmbedFileName = "logo.png";
var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml)
{
EmbedFileName = "supportSystem.xml",
AFDesc = "Internal system",
ConformanceLevel = ConformanceLevel.XRECHNUNG,
SchemaNamespace = SchemaNamespace.Zugferd1,
SchemaPrefix = SchemaPrefix.rsm,
PropertyVersion = PropertyVersion.v1p0,
AFRelationship = AFRelationship.Supplement,
};
IEnumerable<EmbedFileStream> embedStreams = new[]
{
new EmbedFileStream(stream1, embedFileConfig1),
new EmbedFileStream(stream2, embedFileConfig2)
};
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedStreams).SaveAs("PdfACompliance.pdf");
```
### Jak skonfigurować właściwości osadzonych plików za pomocą `EmbedFileConfiguration`?
Podczas konwertowania `PdfDocument` na format PDF/A-3 z osadzonymi plikami, skonfiguruj parametry takie jak `EmbedFilePath`, `EmbedFileByte` lub `EmbedFileStream`, aby określić typ pliku, nazwę i zdefiniowaną przez użytkownika metadane XMP.
Prawidłowa konfiguracja zapewnia, że osadzona zawartość jest efektywnie zorganizowana i zgodna ze standardami PDF/A-3. Dostosowanie metadanych XMP umożliwia dodatkowe informacje o osadzonych plikach, zwiększając użyteczność i dostępność dokumentu. Używając klasy `EmbedFileConfiguration`, programiści mogą z łatwością dostosowywać wartości i formaty dla pliku.
```csharp
var config = new EmbedFileConfiguration
{
EmbedFileName = "Attachment.xml",
AFDesc = "Associated File Description",
ConformanceLevel = ConformanceLevel.EN16931,
SchemaNamespace = SchemaNamespace.facturX,
SchemaPrefix = SchemaPrefix.fx,
PropertyVersion = PropertyVersion.v1,
AFRelationship = AFRelationship.Alternative
};
// Load a PDF document
var document = PdfDocument.FromFile("wikipedia.pdf");
// Configure embedded file parameters
document.EmbedFileFromFilePath("path/to/attachment", config);
// Save the document as PDF/A-3b
document.SaveAsPdfA3B("output-with-configured-attachment.pdf");
```
- `EmbedFileName`: Własność `string` reprezentująca nazwę osadzonego pliku w dokumencie PDF/A. Domyślnie jest to pusty ciąg.
- `AFDesc`: Własność `string` reprezentująca opis skojarzonego pliku dla osadzonego pliku. Domyślnie jest to pusty ciąg.
- `ConformanceLevel`: Poziom zgodności dla osadzania plików XML dotyczących Metadanych XMP w dokumencie PDF/A. Domyślnie jest `ConformanceLevel.EN16931`. IronPDF dostarcza różne wartości za pośrednictwem enuma `ConformanceLevel`.
- `SchemaNamespace`: Przestrzeń nazw dla osadzania plików XML i stosowania ich do metadanych XMP w dokumencie PDF/A. Domyślnie jest `SchemaNamespace.facturX`, z różnymi opcjami dostępnymi w enumie `SchemaNamespace`.
- `SchemaPrefix`: Prefiks dla osadzania plików XML i stosowania ich do metadanych XMP w dokumencie PDF/A. Domyślnie jest `SchemaPrefix.fx`, z kilkoma opcjami w enumie `SchemaPrefix`.
- `PropertyVersion`: Własność wersji osadzania plików XML stoswana do metadanych XMP w dokumencie PDF/A. Domyślnie jest `PropertyVersion.v1`, z wieloma opcjami w enumie `PropertyVersion`.
- `AFRelationship`: Relacja skojarzonego pliku (wnieionego pliku) do dokumentu PDF/A. Dostępne są różne opcje w enumie `AFRelationship`.
## Co powoduje problemy z wyświetlaniem znaków w PDF/A?
PDF/A wymaga, aby wszystkie znaki w dokumencie były mapowane na wizualnie i semantycznie poprawną czcionkę. Chociaż nie wszystkie czcionki muszą być osadzone, używana czcionka musi obsługiwać wymagane glify. Jeśli zostanie użyta nieprawidłowa lub niekompletna czcionka, niektóre znaki mogą wyglądać na zepsute, brakujące lub niepoprawnie renderowane - szczególnie w językach z specjalnymi skryptami lub symbolami. Aby optymalizować rozmiar pliku, zapoznaj się z naszym [przewodnikiem po kompresji PDF](https://ironpdf.com/how-to/pdf-compression/), aby zrównoważyć osadzanie czcionek z rozmiarem pliku.
### Dlaczego niektóre znaki wyglądają na uszkodzone w dokumentach PDF/A?
Na przykład, w poniższym problemie, górny przykład używa poprawnej czcionki i wyświetla znaki poprawnie, podczas gdy dolny przykład nie renderuje ich prawidłowo z powodu niedopasowania czcionki.

## Z istniejącego pliku PDF (PDF/A-4)
Ten przykład używa 'ENV-2026-1847-Assessment-Report.pdf', 8-stronicowego dokumentu oceny wpływu na środowisko w miejskiej. Raport pokazuje przydatność PDF/A-4 do archiwizacji oficjalnych dokumentów rządowych wymagających długoterminowego zabezpieczenia - badań środowiskowych, zgłoszeń regulacyjnych i zapisów zgodności, które agencje muszą przechowywać przez dekady.
PDF/A-4 jest idealny dla tych dokumentów, ponieważ gwarantuje wierność wizualną w czasie, osadzone są wszystkie czcionki i zasoby oraz wspiera ulepszone możliwości podpisów cyfrowych wymagane do oficjalnych certyfikacji.
### Plik wejściowy: "ENV-2026-1847-Assessment-Report.pdf"
<iframe loading="lazy" src="/static-assets/pdf/how-to/pdfa/ENV-2026-1847-Assessment-Report.pdf#view=fit" width="100%" height="500px">
</iframe>
### Kod
```csharp
using IronPdf;
// Load the environmental impact assessment document
PdfDocument pdf = PdfDocument.FromFile("ENV-2026-1847-Assessment-Report.pdf");
// Save as PDF/A-4 compliant document for long-term archival
pdf.SaveAsPdfA("ENV-2026-1847-Report-PDFA4Compliant.pdf", PdfAVersions.PdfA4);
```
### Wynik
Plik wyjściowy jest zgodny z PDF/A-4:

<iframe loading="lazy" src="/static-assets/pdf/how-to/pdfa/ENV-2026-1847-Report-PDFA4Compliant.pdf#view=fit" width="100%" height="500px">
</iframe>
Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Sprawdź naszą stronę z samouczkami tutaj: [Tworzenie PDF-ów](https://ironpdf.com/how-to/create-new-pdfs/)
Twoja firma wydaje zbyt dużo na coroczne subskrypcje bezpieczeństwa PDF i zgodności. Rozważ IronSecureDoc, który oferuje rozwiązania do zarządzania usługami SaaS, takimi jak podpisywanie cyfrowe, redakcja, szyfrowanie i ochrona, wszystko za jednorazową opłatę. Zobacz dokumentację IronSecureDoc
IronPDF wspiera eksport PDF-ów do standardów PDF/A-3b i PDF/A-4. PDF/A-3B jest ścisłym podzbiorem specyfikacji ISO PDF używanym do tworzenia archiwalnych wersji dokumentów z zamiarem, że zawsze będą renderowane dokładnie tak samo jak w momencie ich zapisania. PDF/A-4 to najnowszy standard zgodności, oferujący ulepszoną obsługę podpisów cyfrowych.
Zgodność z Section 508
IronPDF realizuje inicjatywę Google mającą na celu zwiększenie archiwizacji i dostępności PDF dla zgodności z Section 508. Podczas pracy z konwersją HTML na PDF, nasz silnik renderujący zachowuje wszystkie funkcje dostępności.
Dlaczego zgodność z Section 508 jest ważna dla dokumentów PDF/A?
Zgodność z Section 508 zapewnia, że dokumenty PDF są dostępne dla osób z niepełnosprawnościami korzystających z technologii wspomagających, takich jak czytniki ekranowe. Dokumenty PDF/A spełniające standardy Section 508 gwarantują, że treść pozostanie dostępna przez cały okres archiwizacji. Ta zgodność jest kluczowa dla agencji rządowych, instytucji edukacyjnych i organizacji zapewniających równy dostęp do informacji dla wszystkich użytkowników.
Wybierz wersję PDF/A na podstawie wymogów archiwizacji
Konwertuj i zapisz jako dokument zgodny z PDF/A
Jakie wersje PDF/A wspiera IronPDF?
IronPDF wspiera poziomy zgodności A i B. 'A' oznacza 'dostępny', a 'B' oznacza 'podstawowy'. Te poziomy są dostępne we wszystkich standardach PDF/A-1, PDF/A-2 i PDF/A-3. Poniższe informacje pochodzą z dokumentacji Adobe dotyczącej PDF/A. Domyślnie, wyjście PDF generowane przez IronPDF to PDF/A-3B (ISO 19005-3).
Poziom A spełnia wszystkie wymagania specyfikacji, umożliwiając oprogramowaniu wspomagającemu poprawę dostępności dla fizycznie niepełnosprawnych użytkowników.
Poziom B ma niższą zgodność z minimalną zgodnością, skupiając się na długoterminowym zachowaniu wyglądu wizualnego.
Jaka jest różnica między PDF/A-1, PDF/A-2 i PDF/A-3?
PDF/A-1: Oparty na oryginalnej wersji PDF 1.4.
PDF/A-2: Wydany w lipcu 2011 jako ISO 32001-1, zawiera wszystkie funkcje wersji PDF do 1.7 plus nowe funkcje. Obsługuje JPEG2000 dla zeskanowanych dokumentów i specyficzne wymagania dotyczące dostosowanego metadanych XMP. Pracując z metadanymi PDF, IronPDF zapewnia poprawną obsługę metadanych XMP.
PDF/A-3: Zawiera wszystkie wymagania dla poziomu 2. Pozwala na osadzanie dodatkowych formatów plików - XML, CSV i formaty przetwarzania tekstu - w dokumentach zgodnych z PDF/A.
PDF/A-4: Najnowsza wersja standardu zgodności PDF/A, wydana w 2020. Bazuje na PDF 2.0 i wprowadza ulepszoną funkcjonalność, w tym ulepszoną obsługę podpisów cyfrowych w porównaniu z PDF/A-3. Ta wersja najlepiej nadaje się do dokumentów inżynieryjnych i przepływów technicznych, które obejmują modele 3D i inne złożone elementy.
Funkcja
PDF/A-3
PDF/A-4
Wersja podstawowa PDF
PDF 1.7
PDF 2.0
Osadzone załączniki plików
Obsługiwane
Nieobsługiwane
Podpisy cyfrowe
Obsługiwane
Ulepszona obsługa
Najlepsze przypadki użycia
Faktury, wbudowywanie danych XML
Inżynieria, modele 3D, przepływy techniczne
Zwróć uwagę: IronPDF nie obsługuje jeszcze konwersji PDF z załączonym plikiem do PDF/A-3B.
Konwersja do najnowszego standardu PDF/A-4
PDF/A-4 jest najnowszym standardem zgodności w serii PDF/A. Jest uważany za najlepszy format archiwalny dla szerokiej gamy typów dokumentów, szczególnie tych obejmujących podpisy cyfrowe. Format nie pozwala na szyfrowanie i elementy multimedialne, zapewniając, że każdy plik pozostaje w pełni samowystarczalny.
Konwersja istniejącego pliku do zgodnego standardu PDF/A-4 jest prosta.
using IronPdf;// Load an existing PDFPdfDocument pdf = PdfDocument.FromFile("input.pdf");// Save as PDF/A-4 compliant documentpdf.SaveAsPdfA("pdfa4-output.pdf", PdfAVersions.PdfA4);
using IronPdf;
// Load an existing PDF
PdfDocument pdf = PdfDocument.FromFile("input.pdf");
// Save as PDF/A-4 compliant document
pdf.SaveAsPdfA("pdfa4-output.pdf", PdfAVersions.PdfA4);
ImportsIronPdf' Load an existing PDFDim pdf AsPdfDocument = PdfDocument.FromFile("input.pdf")' Save as PDF/A-4 compliant documentpdf.SaveAsPdfA("pdfa4-output.pdf", PdfAVersions.PdfA4)
Imports IronPdf
' Load an existing PDF
Dim pdf As PdfDocument = PdfDocument.FromFile("input.pdf")
' Save as PDF/A-4 compliant document
pdf.SaveAsPdfA("pdfa4-output.pdf", PdfAVersions.PdfA4)
Z istniejącego pliku PDF (PDF/A-3B)
Ten przykład używa wikipedia.pdf, pliku PDF stworzonego przy użyciu IronPDF. Dla optymalnych wyników upewnij się, że poprawnie skonfigurowano klucze licencyjne przed rozpoczęciem konwersji.
Kod poniżej wczytuje i ponownie zapisuje plik zarówno jako zgodny z PDF/A-3B, jak i PDF/A-4, aby pokazać zgodność z oboma standardami.
Jak wygląda plik wejściowy PDF przed konwersją?
Jaki kod konwertuje istniejące PDF-y do formatu PDF/A?
using IronPdf;// Create a PdfDocument object or open any PDF FilePdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");// Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b);
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b);
ImportsIronPdf' Create a PdfDocument object or open any PDF FileDim pdf AsPdfDocument = PdfDocument.FromFile("wikipedia.pdf")' Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b)
Imports IronPdf
' Create a PdfDocument object or open any PDF File
Dim pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3b)
Jak mogę zweryfikować, czy konwersja PDF/A była udana?
Plik wyjściowy jest zgodny z PDF/A-3b:
Z projektu HTML lub URL (PDF/A-3B)
Ten przykład używa design.html, pliku projektowego HTML do renderowania z HTML do PDF za pomocą IronPDF i eksportowania jako plik zgodny z PDF/A. Proces konwersji pliku HTML na PDF zachowuje całe formatowanie i stylizację podczas konwersji.
Kod poniżej zapisuje plik wyjściowy jako PDF zgodny z PDF/A-3B.
Jak konwertować pliki HTML do formatu PDF/A?
using IronPdf;// Use the Chrome Renderer to make beautiful HTML designsvar chromeRenderer = new ChromePdfRenderer();// Render an HTML design as a PdfDocument object using ChromePdfDocument pdf = chromeRenderer.RenderHtmlAsPdf("design.html");// Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("design-accessible.pdf", PdfAVersions.PdfA3b);
using IronPdf;
// Use the Chrome Renderer to make beautiful HTML designs
var chromeRenderer = new ChromePdfRenderer();
// Render an HTML design as a PdfDocument object using Chrome
PdfDocument pdf = chromeRenderer.RenderHtmlAsPdf("design.html");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("design-accessible.pdf", PdfAVersions.PdfA3b);
ImportsIronPdf' Use the Chrome Renderer to make beautiful HTML designsPrivate chromeRenderer = New ChromePdfRenderer()' Render an HTML design as a PdfDocument object using ChromePrivate pdf AsPdfDocument = chromeRenderer.RenderHtmlAsPdf("design.html")' Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("design-accessible.pdf", PdfAVersions.PdfA3b)
Imports IronPdf
' Use the Chrome Renderer to make beautiful HTML designs
Private chromeRenderer = New ChromePdfRenderer()
' Render an HTML design as a PdfDocument object using Chrome
Private pdf As PdfDocument = chromeRenderer.RenderHtmlAsPdf("design.html")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("design-accessible.pdf", PdfAVersions.PdfA3b)
Plik wyjściowy jest zgodny z PDF/A-3B:
Jak konwertować strony internetowe do formatu PDF/A?
Ten przykład renderuje https://www.microsoft.com z URL do PDF używając IronPDF i eksportuje go jako plik zgodny z PDF/A. Funkcja konwersji URL na PDF zapewnia prawidłowe renderowanie całej zawartości internetowej, w tym JavaScriptu i CSS.
Kod poniżej zapisuje plik wyjściowy jako PDF zgodny z PDF/A-3B.
using IronPdf;// Use the Chrome Renderer to make beautiful HTML designs from URLsvar chromeRenderer = new ChromePdfRenderer();// Render a Website as a PdfDocument object using ChromePdfDocument pdf = chromeRenderer.RenderUrlAsPdf("https://www.microsoft.com");// Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("website-accessible.pdf", PdfAVersions.PdfA3b);
using IronPdf;
// Use the Chrome Renderer to make beautiful HTML designs from URLs
var chromeRenderer = new ChromePdfRenderer();
// Render a Website as a PdfDocument object using Chrome
PdfDocument pdf = chromeRenderer.RenderUrlAsPdf("https://www.microsoft.com");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("website-accessible.pdf", PdfAVersions.PdfA3b);
ImportsIronPdf' Use the Chrome Renderer to make beautiful HTML designs from URLsPrivate chromeRenderer = New ChromePdfRenderer()' Render a Website as a PdfDocument object using ChromePrivate pdf AsPdfDocument = chromeRenderer.RenderUrlAsPdf("https://www.microsoft.com")' Use the SaveAsPdfA method to save to filepdf.SaveAsPdfA("website-accessible.pdf", PdfAVersions.PdfA3b)
Imports IronPdf
' Use the Chrome Renderer to make beautiful HTML designs from URLs
Private chromeRenderer = New ChromePdfRenderer()
' Render a Website as a PdfDocument object using Chrome
Private pdf As PdfDocument = chromeRenderer.RenderUrlAsPdf("https://www.microsoft.com")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("website-accessible.pdf", PdfAVersions.PdfA3b)
Plik wyjściowy jest zgodny z PDF/A-3B:
Moją ulubioną biblioteką tego typu jest IronPDF. Umożliwia ona szybkie i efektywne manipulowanie plikami PDF. Posiada także wiele cennych funkcji, takich jak eksport do formatu PDF/A i cyfrowe podpisywanie dokumentów PDF.
IronOCR pozwala nam oszczędzić 40 000 USD rocznie na ręcznym przetwarzaniu, jednocześnie zwiększając produktywność i uwalniając zasoby do zadań o wysokim wpływie. Gorąco polecam.
IronPDF wspiera osadzanie plików w dokumentach PDF podczas konwersji do PDF/A za pomocą ścieżek plików, tablic bajtowych lub strumieni. Ta funkcja tworzy samodzielne dokumenty archiwalne, które zawierają wszystkie niezbędne materiały pomocnicze. Dla bardziej zaawansowanych funkcji manipulacji PDF sprawdź nasz samouczek edycji PDF.
Zwróć uwagę: Uwaga: Osadzone załączniki plików są wspierane tylko w PDF/A-3B. PDF/A-4 nie obsługuje osadzonych załączników.
Osadź za pomocą ścieżek plików
Osadź pliki, używając ich ścieżek plików. Podana jest kolekcja ścieżek plików, a te pliki są dołączane jako załączniki podczas konwersji do PDF/A.
using IronPdf;using System.Collections.Generic;PdfDocument pdf = new PdfDocument("Google.pdf");// Initialize collection of embed file as string of pathIEnumerable<string> embedPaths = new[] { "File1.xml", "File2.png" };// Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedPaths);
using IronPdf;
using System.Collections.Generic;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as string of path
IEnumerable<string> embedPaths = new[] { "File1.xml", "File2.png" };
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedPaths);
ImportsIronPdfImportsSystem.Collections.GenericPrivate pdf As New PdfDocument("Google.pdf")' Initialize collection of embed file as string of pathPrivate embedPaths AsIEnumerable(OfString) = { "File1.xml", "File2.png" }' Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedPaths)
Imports IronPdf
Imports System.Collections.Generic
Private pdf As New PdfDocument("Google.pdf")
' Initialize collection of embed file as string of path
Private embedPaths As IEnumerable(Of String) = { "File1.xml", "File2.png" }
' Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedPaths)
Jak osadzić pliki za pomocą tablic bajtowych?
Osadzaj pliki, dostarczając zawartość pliku jako tablice bajtów z ich typami. Przydatne, gdy pliki są już załadowane do pamięci.
using IronPdf;using System.Collections.Generic;using System.IO;PdfDocument pdf = new PdfDocument("Google.pdf");// Initialize collection of embed file as Bytes and their file typebyte[] fileData1 = File.ReadAllBytes("File1.png");byte[] fileData2 = File.ReadAllBytes("File2.xml");var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);embedFileConfig1.EmbedFileName = "logo.png";var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml){EmbedFileName = "supportSystem.xml",AFDesc = "Internal system",ConformanceLevel = ConformanceLevel.XRECHNUNG,SchemaNamespace = SchemaNamespace.Zugferd1,SchemaPrefix = SchemaPrefix.rsm,PropertyVersion = PropertyVersion.v1p0,AFRelationship = AFRelationship.Supplement,};IEnumerable<EmbedFileByte> embedBytes = new[]{ new EmbedFileByte(fileData1, embedFileConfig1), new EmbedFileByte(fileData2, embedFileConfig2)};// Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedBytes).SaveAs("PdfACompliance.pdf");
using IronPdf;
using System.Collections.Generic;
using System.IO;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as Bytes and their file type
byte[] fileData1 = File.ReadAllBytes("File1.png");
byte[] fileData2 = File.ReadAllBytes("File2.xml");
var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);
embedFileConfig1.EmbedFileName = "logo.png";
var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml)
{
EmbedFileName = "supportSystem.xml",
AFDesc = "Internal system",
ConformanceLevel = ConformanceLevel.XRECHNUNG,
SchemaNamespace = SchemaNamespace.Zugferd1,
SchemaPrefix = SchemaPrefix.rsm,
PropertyVersion = PropertyVersion.v1p0,
AFRelationship = AFRelationship.Supplement,
};
IEnumerable<EmbedFileByte> embedBytes = new[]
{
new EmbedFileByte(fileData1, embedFileConfig1),
new EmbedFileByte(fileData2, embedFileConfig2)
};
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedBytes).SaveAs("PdfACompliance.pdf");
ImportsIronPdfImportsSystem.Collections.GenericImportsSystem.IOPrivate pdf As New PdfDocument("Google.pdf")' Initialize collection of embed file as Bytes and their file typePrivate fileData1() AsByte = File.ReadAllBytes("File1.png")Private fileData2() AsByte = File.ReadAllBytes("File2.xml")Private embedFileConfig1 = New EmbedFileConfiguration(EmbedFileType.png)embedFileConfig1.EmbedFileName = "logo.png"Dim embedFileConfig2 = New EmbedFileConfiguration(EmbedFileType.xml) With { .EmbedFileName = "supportSystem.xml", .AFDesc = "Internal system", .ConformanceLevel = ConformanceLevel.XRECHNUNG, .SchemaNamespace = SchemaNamespace.Zugferd1, .SchemaPrefix = SchemaPrefix.rsm, .PropertyVersion = PropertyVersion.v1p0, .AFRelationship = AFRelationship.Supplement}Dim embedBytes AsIEnumerable(OfEmbedFileByte) = { New EmbedFileByte(fileData1, embedFileConfig1), New EmbedFileByte(fileData2, embedFileConfig2)}' Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedBytes).SaveAs("PdfACompliance.pdf")
Imports IronPdf
Imports System.Collections.Generic
Imports System.IO
Private pdf As New PdfDocument("Google.pdf")
' Initialize collection of embed file as Bytes and their file type
Private fileData1() As Byte = File.ReadAllBytes("File1.png")
Private fileData2() As Byte = File.ReadAllBytes("File2.xml")
Private embedFileConfig1 = New EmbedFileConfiguration(EmbedFileType.png)
embedFileConfig1.EmbedFileName = "logo.png"
Dim embedFileConfig2 = New EmbedFileConfiguration(EmbedFileType.xml) With {
.EmbedFileName = "supportSystem.xml",
.AFDesc = "Internal system",
.ConformanceLevel = ConformanceLevel.XRECHNUNG,
.SchemaNamespace = SchemaNamespace.Zugferd1,
.SchemaPrefix = SchemaPrefix.rsm,
.PropertyVersion = PropertyVersion.v1p0,
.AFRelationship = AFRelationship.Supplement
}
Dim embedBytes As IEnumerable(Of EmbedFileByte) = {
New EmbedFileByte(fileData1, embedFileConfig1),
New EmbedFileByte(fileData2, embedFileConfig2)
}
' Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedBytes).SaveAs("PdfACompliance.pdf")
Jak osadzić pliki za pomocą strumieni?
Osadź pliki używając strumieni dla zawartości z ich typami plików. Idealne, gdy dane pliku są przetwarzane jako strumień.
using IronPdf;using System.Collections.Generic;using System.IO;PdfDocument pdf = new PdfDocument("Google.pdf");// Initialize collection of embed file as Stream and their file typeStream stream1 = new MemoryStream(File.ReadAllBytes("File1.png"));Stream stream2 = new MemoryStream(File.ReadAllBytes("File2.xml"));var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);embedFileConfig1.EmbedFileName = "logo.png";var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml){EmbedFileName = "supportSystem.xml",AFDesc = "Internal system",ConformanceLevel = ConformanceLevel.XRECHNUNG,SchemaNamespace = SchemaNamespace.Zugferd1,SchemaPrefix = SchemaPrefix.rsm,PropertyVersion = PropertyVersion.v1p0,AFRelationship = AFRelationship.Supplement,};IEnumerable<EmbedFileStream> embedStreams = new[]{ new EmbedFileStream(stream1, embedFileConfig1), new EmbedFileStream(stream2, embedFileConfig2)};// Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedStreams).SaveAs("PdfACompliance.pdf");
using IronPdf;
using System.Collections.Generic;
using System.IO;
PdfDocument pdf = new PdfDocument("Google.pdf");
// Initialize collection of embed file as Stream and their file type
Stream stream1 = new MemoryStream(File.ReadAllBytes("File1.png"));
Stream stream2 = new MemoryStream(File.ReadAllBytes("File2.xml"));
var embedFileConfig1 = new EmbedFileConfiguration(EmbedFileType.png);
embedFileConfig1.EmbedFileName = "logo.png";
var embedFileConfig2 = new EmbedFileConfiguration(EmbedFileType.xml)
{
EmbedFileName = "supportSystem.xml",
AFDesc = "Internal system",
ConformanceLevel = ConformanceLevel.XRECHNUNG,
SchemaNamespace = SchemaNamespace.Zugferd1,
SchemaPrefix = SchemaPrefix.rsm,
PropertyVersion = PropertyVersion.v1p0,
AFRelationship = AFRelationship.Supplement,
};
IEnumerable<EmbedFileStream> embedStreams = new[]
{
new EmbedFileStream(stream1, embedFileConfig1),
new EmbedFileStream(stream2, embedFileConfig2)
};
// Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedStreams).SaveAs("PdfACompliance.pdf");
ImportsIronPdfImportsSystem.Collections.GenericImportsSystem.IOPrivate pdf As New PdfDocument("Google.pdf")' Initialize collection of embed file as Stream and their file typePrivate stream1 AsStream = New MemoryStream(File.ReadAllBytes("File1.png"))Private stream2 AsStream = New MemoryStream(File.ReadAllBytes("File2.xml"))Private embedFileConfig1 = New EmbedFileConfiguration(EmbedFileType.png)embedFileConfig1.EmbedFileName = "logo.png"Dim embedFileConfig2 = New EmbedFileConfiguration(EmbedFileType.xml) With { .EmbedFileName = "supportSystem.xml", .AFDesc = "Internal system", .ConformanceLevel = ConformanceLevel.XRECHNUNG, .SchemaNamespace = SchemaNamespace.Zugferd1, .SchemaPrefix = SchemaPrefix.rsm, .PropertyVersion = PropertyVersion.v1p0, .AFRelationship = AFRelationship.Supplement}Dim embedStreams AsIEnumerable(OfEmbedFileStream) = { New EmbedFileStream(stream1, embedFileConfig1), New EmbedFileStream(stream2, embedFileConfig2)}' Convert to Pdf/A-3B with embeded filespdf.ConvertToPdfA(embedStreams).SaveAs("PdfACompliance.pdf")
Imports IronPdf
Imports System.Collections.Generic
Imports System.IO
Private pdf As New PdfDocument("Google.pdf")
' Initialize collection of embed file as Stream and their file type
Private stream1 As Stream = New MemoryStream(File.ReadAllBytes("File1.png"))
Private stream2 As Stream = New MemoryStream(File.ReadAllBytes("File2.xml"))
Private embedFileConfig1 = New EmbedFileConfiguration(EmbedFileType.png)
embedFileConfig1.EmbedFileName = "logo.png"
Dim embedFileConfig2 = New EmbedFileConfiguration(EmbedFileType.xml) With {
.EmbedFileName = "supportSystem.xml",
.AFDesc = "Internal system",
.ConformanceLevel = ConformanceLevel.XRECHNUNG,
.SchemaNamespace = SchemaNamespace.Zugferd1,
.SchemaPrefix = SchemaPrefix.rsm,
.PropertyVersion = PropertyVersion.v1p0,
.AFRelationship = AFRelationship.Supplement
}
Dim embedStreams As IEnumerable(Of EmbedFileStream) = {
New EmbedFileStream(stream1, embedFileConfig1),
New EmbedFileStream(stream2, embedFileConfig2)
}
' Convert to Pdf/A-3B with embeded files
pdf.ConvertToPdfA(embedStreams).SaveAs("PdfACompliance.pdf")
Jak skonfigurować właściwości osadzonych plików za pomocą EmbedFileConfiguration?
Podczas konwertowania PdfDocument na format PDF/A-3 z osadzonymi plikami, skonfiguruj parametry takie jak EmbedFilePath, EmbedFileByte lub EmbedFileStream, aby określić typ pliku, nazwę i zdefiniowaną przez użytkownika metadane XMP.
Prawidłowa konfiguracja zapewnia, że osadzona zawartość jest efektywnie zorganizowana i zgodna ze standardami PDF/A-3. Dostosowanie metadanych XMP umożliwia dodatkowe informacje o osadzonych plikach, zwiększając użyteczność i dostępność dokumentu. Używając klasy EmbedFileConfiguration, programiści mogą z łatwością dostosowywać wartości i formaty dla pliku.
var config = new EmbedFileConfiguration{EmbedFileName = "Attachment.xml",AFDesc = "Associated File Description",ConformanceLevel = ConformanceLevel.EN16931,SchemaNamespace = SchemaNamespace.facturX,SchemaPrefix = SchemaPrefix.fx,PropertyVersion = PropertyVersion.v1,AFRelationship = AFRelationship.Alternative}; // Load a PDF document var document = PdfDocument.FromFile("wikipedia.pdf"); // Configure embedded file parameters document.EmbedFileFromFilePath("path/to/attachment", config); // Save the document as PDF/A-3b document.SaveAsPdfA3B("output-with-configured-attachment.pdf");
var config = new EmbedFileConfiguration
{
EmbedFileName = "Attachment.xml",
AFDesc = "Associated File Description",
ConformanceLevel = ConformanceLevel.EN16931,
SchemaNamespace = SchemaNamespace.facturX,
SchemaPrefix = SchemaPrefix.fx,
PropertyVersion = PropertyVersion.v1,
AFRelationship = AFRelationship.Alternative
};
// Load a PDF document
var document = PdfDocument.FromFile("wikipedia.pdf");
// Configure embedded file parameters
document.EmbedFileFromFilePath("path/to/attachment", config);
// Save the document as PDF/A-3b
document.SaveAsPdfA3B("output-with-configured-attachment.pdf");
ImportsSystemDim config As New EmbedFileConfigurationWith { .EmbedFileName = "Attachment.xml", .AFDesc = "Associated File Description", .ConformanceLevel = ConformanceLevel.EN16931, .SchemaNamespace = SchemaNamespace.facturX, .SchemaPrefix = SchemaPrefix.fx, .PropertyVersion = PropertyVersion.v1, .AFRelationship = AFRelationship.Alternative}' Load a PDF documentDim document = PdfDocument.FromFile("wikipedia.pdf")' Configure embedded file parametersdocument.EmbedFileFromFilePath("path/to/attachment", config)' Save the document as PDF/A-3bdocument.SaveAsPdfA3B("output-with-configured-attachment.pdf")
Imports System
Dim config As New EmbedFileConfiguration With {
.EmbedFileName = "Attachment.xml",
.AFDesc = "Associated File Description",
.ConformanceLevel = ConformanceLevel.EN16931,
.SchemaNamespace = SchemaNamespace.facturX,
.SchemaPrefix = SchemaPrefix.fx,
.PropertyVersion = PropertyVersion.v1,
.AFRelationship = AFRelationship.Alternative
}
' Load a PDF document
Dim document = PdfDocument.FromFile("wikipedia.pdf")
' Configure embedded file parameters
document.EmbedFileFromFilePath("path/to/attachment", config)
' Save the document as PDF/A-3b
document.SaveAsPdfA3B("output-with-configured-attachment.pdf")
EmbedFileName: Własność string reprezentująca nazwę osadzonego pliku w dokumencie PDF/A. Domyślnie jest to pusty ciąg.
AFDesc: Własność string reprezentująca opis skojarzonego pliku dla osadzonego pliku. Domyślnie jest to pusty ciąg.
ConformanceLevel: Poziom zgodności dla osadzania plików XML dotyczących Metadanych XMP w dokumencie PDF/A. Domyślnie jest ConformanceLevel.EN16931. IronPDF dostarcza różne wartości za pośrednictwem enuma ConformanceLevel.
SchemaNamespace: Przestrzeń nazw dla osadzania plików XML i stosowania ich do metadanych XMP w dokumencie PDF/A. Domyślnie jest SchemaNamespace.facturX, z różnymi opcjami dostępnymi w enumie SchemaNamespace.
SchemaPrefix: Prefiks dla osadzania plików XML i stosowania ich do metadanych XMP w dokumencie PDF/A. Domyślnie jest SchemaPrefix.fx, z kilkoma opcjami w enumie SchemaPrefix.
PropertyVersion: Własność wersji osadzania plików XML stoswana do metadanych XMP w dokumencie PDF/A. Domyślnie jest PropertyVersion.v1, z wieloma opcjami w enumie PropertyVersion.
AFRelationship: Relacja skojarzonego pliku (wnieionego pliku) do dokumentu PDF/A. Dostępne są różne opcje w enumie AFRelationship.
Co powoduje problemy z wyświetlaniem znaków w PDF/A?
PDF/A wymaga, aby wszystkie znaki w dokumencie były mapowane na wizualnie i semantycznie poprawną czcionkę. Chociaż nie wszystkie czcionki muszą być osadzone, używana czcionka musi obsługiwać wymagane glify. Jeśli zostanie użyta nieprawidłowa lub niekompletna czcionka, niektóre znaki mogą wyglądać na zepsute, brakujące lub niepoprawnie renderowane - szczególnie w językach z specjalnymi skryptami lub symbolami. Aby optymalizować rozmiar pliku, zapoznaj się z naszym przewodnikiem po kompresji PDF, aby zrównoważyć osadzanie czcionek z rozmiarem pliku.
Dlaczego niektóre znaki wyglądają na uszkodzone w dokumentach PDF/A?
Na przykład, w poniższym problemie, górny przykład używa poprawnej czcionki i wyświetla znaki poprawnie, podczas gdy dolny przykład nie renderuje ich prawidłowo z powodu niedopasowania czcionki.
Z istniejącego pliku PDF (PDF/A-4)
Ten przykład używa 'ENV-2026-1847-Assessment-Report.pdf', 8-stronicowego dokumentu oceny wpływu na środowisko w miejskiej. Raport pokazuje przydatność PDF/A-4 do archiwizacji oficjalnych dokumentów rządowych wymagających długoterminowego zabezpieczenia - badań środowiskowych, zgłoszeń regulacyjnych i zapisów zgodności, które agencje muszą przechowywać przez dekady.
PDF/A-4 jest idealny dla tych dokumentów, ponieważ gwarantuje wierność wizualną w czasie, osadzone są wszystkie czcionki i zasoby oraz wspiera ulepszone możliwości podpisów cyfrowych wymagane do oficjalnych certyfikacji.
using IronPdf;// Load the environmental impact assessment documentPdfDocument pdf = PdfDocument.FromFile("ENV-2026-1847-Assessment-Report.pdf");// Save as PDF/A-4 compliant document for long-term archivalpdf.SaveAsPdfA("ENV-2026-1847-Report-PDFA4Compliant.pdf", PdfAVersions.PdfA4);
using IronPdf;
// Load the environmental impact assessment document
PdfDocument pdf = PdfDocument.FromFile("ENV-2026-1847-Assessment-Report.pdf");
// Save as PDF/A-4 compliant document for long-term archival
pdf.SaveAsPdfA("ENV-2026-1847-Report-PDFA4Compliant.pdf", PdfAVersions.PdfA4);
ImportsIronPdf' Load the environmental impact assessment documentDim pdf AsPdfDocument = PdfDocument.FromFile("ENV-2026-1847-Assessment-Report.pdf")' Save as PDF/A-4 compliant document for long-term archivalpdf.SaveAsPdfA("ENV-2026-1847-Report-PDFA4Compliant.pdf", PdfAVersions.PdfA4)
Imports IronPdf
' Load the environmental impact assessment document
Dim pdf As PdfDocument = PdfDocument.FromFile("ENV-2026-1847-Assessment-Report.pdf")
' Save as PDF/A-4 compliant document for long-term archival
pdf.SaveAsPdfA("ENV-2026-1847-Report-PDFA4Compliant.pdf", PdfAVersions.PdfA4)
Wynik
Plik wyjściowy jest zgodny z PDF/A-4:
Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Sprawdź naszą stronę z samouczkami tutaj: Tworzenie PDF-ów
Często Zadawane Pytania
Jak przekonwertować standardowy plik PDF do formatu PDF/A-3b w języku C#?
Dzięki IronPDF możesz przekonwertować dowolny standardowy plik PDF do formatu PDF/A-3b za pomocą zaledwie dwóch linii kodu. Po prostu załaduj plik PDF za pomocą PdfDocument.FromFile(), a następnie wywołaj SaveAsPdfA(), aby wyeksportować go jako zgodny dokument PDF/A-3b do długoterminowej archiwizacji.
Czym jest PDF/A-3b i dlaczego jest ważny dla archiwizacji dokumentów?
PDF/A-3b to ścisły podzbiór specyfikacji ISO PDF przeznaczony do długoterminowej archiwizacji dokumentów. IronPDF obsługuje eksport do formatu PDF/A-3b, aby zapewnić, że dokumenty zawsze będą wyświetlane dokładnie tak, jak zostały zapisane, co czyni go idealnym rozwiązaniem do zastosowań prawnych, rządowych i archiwalnych, gdzie integralność dokumentów ma kluczowe znaczenie.
Czy konwersja do formatu PDF/A zapewnia zgodność z wymogąmi dostępności określonymi w sekcji 508?
Tak, IronPDF zapewnia zgodność z sekcją 508 dzięki wykorzystaniu silnika renderującego Google Chromium, który dziedziczy funkcje dostępności Google. Oznacza to, że dokumenty PDF/A będą dostępne dla użytkowników z niepełnosprawnościami korzystających z technologii wspomagających, takich jak czytniki ekranu.
Czy mogę przekonwertować zawartość HTML bezpośrednio do formatu PDF/A?
Oczywiście! IronPDF umożliwia konwersję treści HTML lub adresów URL bezpośrednio do formatu PDF/A-3b. Silnik renderujący Google Chromium zachowuje wszystkie funkcje dostępności podczas konwersji HTML do PDF, zapewniając pełną zgodność wynikowych dokumentów PDF/A.
Jakie są główne zalety korzystania z formatu PDF/A-3b w porównaniu ze standardowym formatem PDF?
Eksport do formatu PDF/A-3b w IronPDF zapewnia gwarantowaną długoterminową archiwizację, spójne renderowanie we wszystkich przeglądarkach, zgodność z wymogąmi dostępności określonymi w sekcji 508 oraz zgodność z normami archiwizacji ISO. Dzięki temu idealnie nadaje się do dokumentów prawnych, akt rządowych i wszelkich treści wymagających trwałej archiwizacji.
Does IronPDF allow embedding files within PDF/A documents?
IronPDF supports embedding files in PDF/A-3B documents using file paths, byte arrays, or streams. This feature is useful for creating self-contained archival documents with all necessary supporting materials included.
What steps are involved in converting PDFs to PDF/A format using IronPDF?
The process involves downloading the IronPDF library, loading an existing PDF or rendering from HTML/URL, selecting the desired PDF/A version, and finally converting and saving the document as a PDF/A-compliant file.
How can IronPDF help solve character display issues in PDF/A documents?
Character display issues often arise due to incorrect font mappings. IronPDF ensures that appropriate fonts supporting required glyphs are used, preventing broken or missing characters and maintaining the document's visual integrity over time.
What types of documents benefit from conversion to PDF/A-4 using IronPDF?
PDF/A-4 is suitable for documents that require long-term preservation, such as engineering documents, environmental studies, regulatory filings, and compliance records. IronPDF ensures these documents remain visually consistent and digitally signed if needed.
Why is PDF/A compliance important for archival and regulatory documents?
PDF/A compliance is crucial for ensuring that documents can be reliably preserved and rendered over time. It meets legal and regulatory requirements for document archiving and ensures accessibility and integrity for future access.
Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.