Praca z PDF/A lub PDF/UA
Formaty PDF/A i PDF/UA nakładają szereg wymagań związanych z zawartością dokumentu, których nie da się spełnić podczas automatycznej konwersji dokumentu w formacie Word do formatu PDF. Wymagania te należy zweryfikować i poprawić w dokumencie Word przed konwersją lub w dokumencie PDF po konwersji, aby powstał dokument w pełni zgodny z formatami PDF/A i PDF/UA.
Podstawowe wymagania dotyczą struktury lub czcionek dokumentu PDF/A i PDF/UA, które rozważymy w kolejnych sekcjach.
Wymagania dotyczące struktury dokumentu
Obecne wymagania dotyczą formatów PDF/A-1a, PDF/A-2a, PDF/A-4 i PDF/UA-1.
Istnieją pewne niuanse działania Aspose.Words podczas konwersji do różnych standardów formatu PDF. Należy je wziąć pod uwagę, jeśli chcesz uzyskać oczekiwany efekt.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Niewskazane jest, aby autorzy generowali informacje strukturalne lub semantyczne przy użyciu zautomatyzowanych procesów bez odpowiedniej weryfikacji.
ISO 19005-2, 6.7.1
W poniższych podsekcjach opisano niuanse działania Aspose.Words podczas konwersji do różnych standardów formatu PDF oraz opcje ich rozwiązania.
Typ struktury
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Dokument PDF to sekwencja bloków, takich jak nagłówki, akapity, tabele i inne. Bloki te tworzą strukturę dokumentu – silną lub słabą.
W formacie PDF/A obowiązują zarówno mocne, jak i słabe struktury. Dokumenty Microsoft Word mają z założenia słabą strukturę, a Aspose.Words tworzy plik PDF odpowiednio o słabej strukturze, a także generuje nagłówki zgodnie z poziomami konspektu akapitów w dokumencie źródłowym.
W przypadku dokumentu PDF/UA-1 o słabej strukturze dodatkowo wymagane jest, aby numeracja nagłówków przebiegała w kolejności bez przerw.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Struktura na poziomie bloków może być zgodna z jednym z dwóch głównych paradygmatów:
ISO-32000-1, 14.8.4.3.5
Dla dokumentów PDF/UA-1 specyfikacja zawiera dodatek dotyczący poziomów nagłówków (rozwiń, aby zobaczyć szczegóły):
Jeżeli semantyka dokumentu wymaga malejącej sekwencji nagłówków, sekwencja taka powinna przebiegać w ścisłej kolejności numerycznej i nie może pomijać pośredniego poziomu nagłówków. H1 H2 H3 jest dopuszczalne, natomiast H1 H3 nie.
ISO-14289-1, 7.4.2
Aby zapewnić prawidłowe wyniki, użytkownicy muszą upewnić się, że treść dokumentu źródłowego jest odpowiednio zorganizowana i że poziomy konspektu są prawidłowo określone dla akapitów. W przeciwnym razie użytkownik powinien sprawdzić i naprawić strukturę wyjściowego dokumentu PDF.
W tym bloku możesz zobaczyć przykłady: jak ustawić poziomy konspektu w Microsoft Word lub sprawdzić i naprawić strukturę wyjściowego dokumentu PDF (rozwiń, aby zobaczyć szczegóły).
W Microsoft Word domyślne style "Nagłówek X" mogą być użyte do ustawienia poziomu konspektu:
Dodatkowo poziom konspektu można sprawdzić lub zmienić w oknie "Akapit":
W programie Acrobat strukturę dokumentu można sprawdzić lub zmienić w panelu "Tagi":
Oznaczanie treści jako artefaktu
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
W tej chwili Aspose.Words oznacza nagłówki i stopki stron, separatory notatek, powtarzające się komórki nagłówków tabeli i obrazy dekoracyjne jako artefakty. Należy pamiętać, że lista ta może być aktualizowana w przyszłości.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Obiekty graficzne w dokumencie można podzielić na dwie klasy:
ISO-32000-1, 14.8.2.2.1
Jeśli dokument zawiera jakąkolwiek inną treść, którą należy oznaczyć jako artefakt, lub jeśli którakolwiek ze zniekształconych treści jest treścią prawdziwą, klienci powinni to poprawić w wyjściowym pliku PDF.
W tym bloku możesz zobaczyć przykłady: jak oznaczyć kształty jako dekoracyjne w Microsoft Word lub oznaczyć kształt jako artefakt w wyjściowym dokumencie PDF (rozwiń, aby zobaczyć szczegóły).
Na przykład kształty można oznaczyć w formacie Microsoft Word jako dekoracyjne, więc zostaną wyeksportowane do pliku PDF jako artefakt:
Możesz oznaczyć kształt jako artefakt w wyjściowym pliku PDF:
Możesz także zamienić tekst w nagłówku z artefaktu na rzeczywistą treść w wyjściowym pliku PDF:
Specyfikacja języka naturalnego
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Język tekstu jest określony w dokumentach Microsoft Word. Aspose.Words eksportuje określony język do wyjściowego pliku PDF z atrybutem Lang dołączonym do sekwencji oznaczonej treści lub znacznikiem Span – jest to kontrolowane przez właściwość ExportLanguageToSpanTag. Ogólnie rzecz biorąc, nie ma problemów językowych, gdy użytkownik wprowadza tekst za pośrednictwem Microsoft Word. Istnieje jednak możliwość, że język będzie niedokładny, jeśli tekst zostanie wygenerowany automatycznie.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Domyślny język naturalny dla całego tekstu w pliku powinien być określony poprzez wpis Lang w słowniku katalogu dokumentu.
Całą zawartość tekstową w pliku różniącą się od języka domyślnego należy wskazać za pomocą właściwości `Lang` dołączonej do sekwencji oznaczonej treści lub wpisu Lang w słowniku elementów konstrukcji...
ISO-19005-2, 6.7.4
Dodatkowo dla PDF/UA-1 specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Należy zadeklarować język naturalny… Należy zgłosić zmiany w języku naturalnym.
ISO-14289-1, 7.2
W tym bloku możesz zobaczyć przykłady: jak upewnić się, że język jest określony poprawnie (rozwiń, aby zobaczyć szczegóły).
Użytkownicy powinni upewnić się, że język jest poprawnie określony w dokumencie źródłowym programu Word:
Lub wyjściowy dokument PDF:
Podpis rysunku
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Dokumenty Microsoft Word umożliwiają użytkownikom dodawanie podpisów pod rysunkami.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Podpis towarzyszący rycinie powinien być oznaczony znacznikiem Caption.
ISO-14289-1, 7.3
Obecnie Aspose.Words nie może eksportować podpisów ze znacznikiem Caption, dlatego należy je oznaczyć w wyjściowym pliku PDF.
W tym bloku możesz zobaczyć przykłady: jak wstawić podpis (rozwiń, aby zobaczyć szczegóły).
W Microsoft Word podpis można wstawić poprzez menu kontekstowe:
W programie Acrobat podpis można dodać lub zmienić w oknie dialogowym Właściwości `Object`:
Alternatywne opisy
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Dokumenty Microsoft Word umożliwiają użytkownikom dodawanie alternatywnego tekstu do obrazów, kształtów i tabel. Aspose.Words eksportuje taki alternatywny tekst do wyjściowego pliku PDF.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Wszystkie elementy konstrukcji, których treść nie ma z góry ustalonego naturalnego odpowiednika tekstowego, np. obrazy, formuły itp., powinny zawierać alternatywny opis tekstowy za pomocą wpisu Alt w słowniku elementów konstrukcji...
UWAGA Opisy alternatywne zapewniają opisy tekstowe, które pomagają we właściwej interpretacji treści nietekstowych, które w przeciwnym razie byłyby nieprzejrzyste.
ISO-19005-2, 6.7.5
W tym bloku możesz zobaczyć przykłady: jak zapewnić, że wszystkie elementy mają tekst alternatywny (rozwiń, aby zobaczyć szczegóły).
Użytkownicy powinni upewnić się, że wszystkie elementy mają alternatywny tekst w źródłowym dokumencie programu Word:
Lub wyjściowy dokument PDF:
Alternatywne opisy hiperłączy
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Oprócz poprzedniego punktu dokumenty Microsoft Word umożliwiają także dodawanie tekstu alternatywnego do hiperłączy. Aspose.Words eksportuje taki alternatywny tekst do wyjściowego pliku PDF.
Niestety nie każda aplikacja pozwala na ustawienie alternatywnego opisu. Przykładowo Adobe Acrobat obecnie nie umożliwia ustawienia takiego opisu dla hiperłączy. Ale w Microsoft Word możesz to zrobić w następujący sposób:
Czasami występuje problem polegający na tym, że nie można ustawić tekstu alternatywnego dla automatycznie generowanych hiperłączy w spisie treści (TOC) za pośrednictwem GUI Microsoft Word. Aspose.Words mógłby samodzielnie aktualizować takie pola i generować linki.
Postępuj zgodnie z przykładem kodu, aby zaktualizować pola TOC
przy użyciu formatu Aspose.Words Document Object Model (DOM):
Document doc = new Document(fileName);
var tocHyperLinks = doc.Range.Fields
.Where(f => f.Type == FieldType.FieldHyperlink)
.Cast<FieldHyperlink>()
.Where(f => f.HRef.StartsWith("#_Toc"));
foreach (FieldHyperlink link in tocHyperLinks)
link.ScreenTip = link.DisplayResult;
PdfSaveOptions opt = new PdfSaveOptions()
{
Compliance = PdfCompliance.PdfUa1,
DisplayDocTitle = true,
ExportDocumentStructure = true,
};
opt.OutlineOptions.HeadingsOutlineLevels = 3;
opt.OutlineOptions.CreateMissingOutlineLevels = true;
var outFile = Path.ChangeExtension(fileName, "_aw.pdf");
doc.Save(outFile, opt);
Nagłówki tabeli
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Tabele w dokumentach PDF/UA-1 muszą mieć nagłówki – kolumnę, wiersz lub oba. PDF/A wymaga jedynie standardowych znaczników tabeli, które nie mają żadnych dodatkowych ograniczeń. Należy pamiętać, że Aspose.Words automatycznie generuje standardowe znaczniki tabeli.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Tabele powinny zawierać nagłówki… Tabele mogą zawierać nagłówki kolumn, nagłówki wierszy lub jedno i drugie.
ISO-14289-1, 7.5
W tym bloku możesz zobaczyć przykłady: jak ustawić nagłówek tabeli (rozwiń, aby zobaczyć szczegóły).
Nagłówek tabeli można ustawić w dokumencie źródłowym Microsoft Word:
Lub wyjściowy plik PDF:
Tekst zastępczy
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Specyfikacja mówi nam co następuje:
Wszystkie tekstowe elementy konstrukcji, które są reprezentowane w sposób niestandardowy, np. znaki niestandardowe lub grafika inline, powinny zawierać tekst zastępczy przy użyciu wpisu `ActualText` w słowniku elementów konstrukcji...
ISO-19005-2, 6.7.7
Dokument Microsoft Word nie pozwala użytkownikom ustawić tekstu zastępczego. Należy to zatem zweryfikować i naprawić w wyjściowym pliku PDF:
Skróty i akronimy. Rozszerzenia
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/UA-1 |
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Wszystkie wystąpienia skrótów i akronimów w treści tekstowej należy umieścić w sekwencji o zaznaczonej treści ze znacznikiem Span, którego właściwość E zapewnia tekstowe rozwinięcie skrótu lub akronimu...
ISO-19005-2, 6.7.8
Dokument Microsoft Word nie pozwala użytkownikom na ustawianie skrótów i rozwinięć akronimów. Należy to zatem zweryfikować i naprawić w wyjściowym pliku PDF:
Tytuł dokumentu
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-2a | |
PDF/A-4 | |
PDF/UA-1 |
Dokument w formacie PDF/UA-1 powinien mieć tytuł |
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Specyfikacja mówi nam co następuje:
Strumień metadanych w słowniku katalogu dokumentu powinien zawierać wpis dc:title, gdzie dc jest zalecanym przedrostkiem dla schematu metadanych Dublin Core…
ISO-14289-1, 7.1
W tym bloku możesz zobaczyć przykłady: jak ustawić tytuł dokumentu (rozwiń, aby zobaczyć szczegóły).
Tytuł dokumentu można ustawić jako źródłowy dokument Microsoft Word:
Lub wyjściowy plik PDF:
Wymagania dotyczące czcionki
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Istnieje również wiele niuansów pracy z czcionkami podczas konwersji do formatów PDF/A-1, PDF/A-2, PDF/A-4 lub PDF/UA-1 przy użyciu Aspose.Words. Należy je wziąć pod uwagę, jeśli chcesz uniknąć ewentualnych problemów z dokumentem wyjściowym.
W poniższych sekcjach opisano takie niuanse i opcje ich rozwiązania.
Wymagania prawne dotyczące czcionek
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Aspose.Words nie weryfikuje ograniczeń prawnych stosowanych czcionek – jest to w gestii użytkowników. Innymi słowy, użytkownik nie powinien udostępniać nieodpowiednich czcionek do konwersji plików PDF za pomocą Aspose.Words.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Należy używać wyłącznie programów czcionek, które można legalnie osadzić w pliku w celu nieograniczonego, uniwersalnego renderowania.
ISO-19005-2, 6.2.11.4.1; ISO-14289-1, 7.21.4.1 (dokładnie te same cytaty w dwóch specyfikacjach)
.notdef Glyph
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Korzystanie z .notdef
glyph jest zabronione. .notdef
glyph pojawi się, jeśli dokument zawiera znaki, których nie ma w wybranej czcionce i których również nie można rozpoznać za pomocą mechanizmu zastępczego czcionki.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Dokument zgodny nie może zawierać odniesienia do pliku .notdef glyph z żadnego operatora wyświetlającego tekst, niezależnie od trybu renderowania tekstu, w jakimkolwiek strumieniu treści.
ISO-19005-2, 6.2.11.8; ISO-14289-1, 7.21.8 (dokładnie te same cytaty w dwóch specyfikacjach)
W tym bloku możesz zobaczyć przykłady: jak usunąć lub zastąpić te znaki (rozwiń, aby zobaczyć szczegóły).
Użytkownicy powinni usunąć lub zastąpić te znaki w źródłowym dokumencie programu Word:
Lub wyjściowy dokument PDF za pomocą narzędzia "Edytuj PDF":
Obszar użytku prywatnego (PUA)
Poziomy zgodności ze standardami PDF w Aspose.Words | Obecność wymagania |
---|---|
PDF/A-1a | |
PDF/A-1b | |
PDF/A-2a | |
PDF/A-2u | |
PDF/A-4 | |
PDF/UA-1 |
Znaki z obszaru użytku prywatnego (PUA) pojawiają się głównie w przypadku czcionek symbolicznych Windows, takich jak “Symbol”, “Wingdings”, “Webdings” i innych. Formaty Microsoft Word nie zapewniają opcji przechowywania rzeczywistego tekstu w postaci znaków.
Specyfikacja mówi nam co następuje (rozwiń, aby zobaczyć szczegóły):
Tylko w przypadku zgodności z poziomem A, dla dowolnego znaku..., który jest odwzorowany na kod lub kody w obszarze użytku prywatnego Unicode (PUA), wpis ActualText... będzie obecny dla tego znaku lub sekwencji znaków, z których taki postać jest częścią.
ISO-19005-2, 6.2.11.7.3
“Segoe UI Symbol” to czcionka Unicode Windows, której można używać jako alternatywy dla czcionek symbolicznych.
W tym bloku możesz zobaczyć przykłady: co użytkownik powinien zrobić, aby rozwiązać problem z czcionkami symbolicznymi (rozwiń, aby zobaczyć szczegóły).
Zastąp czcionkę symboliczną czcionką Unicode w źródłowym dokumencie programu Word:
Lub dodaj wpis ActualText do problematycznych znaków w wyjściowym dokumencie PDF: