Nem egyeznek a PDF oldalszámai a könyvvel? Először ellenőrizze az oldalazonosítókat
Javítsa ki a nyomtatott oldalaktól eltérő PDF-navigációt. Tekintsen meg hat mintafájlt római számozású előszóval, beékelt képtáblával és 37. oldalon kezdődő kivonattal.

Ha a PDF-olvasó 4. oldalt jelez ki, miközben maga a könyvoldal az 1-es számot mutatja, először ellenőrizze a fájl oldalazonosítóit (page labels). A borító és a római számozású bevezető eltolhatja a fizikai pozíciót anélkül, hogy a könyv hiányos lenne. Egy másolaton javítsa a navigációs címkéket; ne azzal kezdje, hogy új számokat bélyegez az oldalakra, vagy kitörli a bevezetőt.
Ennek a javításnak megvannak a határai: a címkék nem tudnak visszaállítani egy hiányzó beolvasott oldalt, nem javítják az oldalsorrendet, és nem árulják el, mi volt egy olvashatatlan szám helyén. Először győződjön meg arról, hogy melyik oldal van ténylegesen jelen. Ezután állítsa be úgy a navigációt, hogy pontosan azt írja le.
A különbség szemléltetésére három letölthető előtte-utána párt készítettünk: egy hétoldalas jegyzetfüzetet, egy számozatlan illusztrációval kiegészített változatot és egy kivonatot, amely a nyomtatott 37. oldalon kezdődik. Mindegyik párban módosultak az azonosítók, miközben a renderelt oldalak pixelre megegyezők maradtak.
Különböztesse meg a három számot, mielőtt bármit javítana
Ebben az útmutatóban a fájlpozíció a PDF-ben található első, második, harmadik oldalt jelenti. A nyomtatott oldalszám az oldalon ténylegesen látható számot jelöli. Az oldalcímke (page label) pedig a navigációhoz tárolt logikai azonosítót jelenti, mint például ii vagy A-1.
Ezek az értékek teljesen indokoltan eltérhetnek egymástól. A PDF Association oldalazonosítókról szóló magyarázata részletesen bemutatja a számozási sorozatokat, előtagokat, valamint az oldalindexek, oldalszámok és címkék közötti különbséget. Egy fájl tartalmazhat római számozású előzéklapokat, elölről induló főszövegi számozást és előtaggal ellátott függelékeket anélkül, hogy hibás lenne az oldalszáma.
Íme a leképezés a hétoldalas oktatófájlunkban:
| Fájlpozíció | Látható nyomtatott szám | Eredeti navigációs címke | Javított címke |
|---|---|---|---|
| 1 | Nincs: borító | 1 | Borító |
| 2 | i | 2 | i |
| 3 | ii | 3 | ii |
| 4 | 1 | 4 | 1 |
| 5 | 2 | 5 | 2 |
| 6 | A-1 | 6 | A-1 |
| 7 | A-2 | 7 | A-2 |
Cover egy általunk hozzárendelt leíró címke, nem pedig a borítóra nyomtatott szám. A fájl hossza változatlanul hét oldal marad. Előfordulhat, hogy a PDF-olvasó a címkét és a pozíciót is egyszerre jelzi ki, például így: 1 (4 of 7); a kettő együttes megjelenése nem jelent ellentmondást.
Töltse le a hétoldalas mintafájlt a címkézés előtt , valamint a felcímkézett változatot. Nyissa meg mindkettőben a főszöveg első oldalát, és hasonlítsa össze magát az oldalt a navigációs vezérlőkkel.

Ez a saját szerkesztésű oldalaink előnézete a képeken kívül elhelyezett címkékkel, nem pedig egy konkrét PDF-alkalmazásból származó képernyőkép.
Térképezze fel a szakaszhatárokat egy munkapéldányon
A szerkesztés megkezdése előtt mentsen el egy változatlan eredeti példányt, majd az oldalakat átnézve keresse meg a váltási pontokat: az első számozott bevezető oldalt, a főszöveg első oldalát, az esetleges betéteket, valamint az egyes függelékeket vagy a számozás újrakezdéseit. Jegyezze fel a fájlpozíciót a látható oldalszám mellett.
Ne csak a főszöveg legelső oldalát ellenőrizze. A fenti példában a „hármat hozzáadva” eltolással ugyan megtalálható a főszöveg 1. oldala, de ez nem illeszkedik sem a római számozású bevezetőhöz, sem az A- jelű függelékhez. Egyetlen fix eltolási érték legfeljebb ideiglenes megoldás egyetlen összefüggő szakaszon belül, de nem jelent megbízható megoldást az egész könyvre nézve.
Ha a számozási sorrend váratlanul megszakad – például a látható számozás 38-ról rögtön 40-re ugrik –, vizsgálja meg a köztes oldalakat, és ha lehetséges, vesse össze az adott kiadás forrásával. Lehet, hogy hiányzik egy beolvasott lap, szándékos mellékletről vagy szokatlan eredeti számozásról van szó, de egyéb sorrendi hiba is állhat a háttérben. Semmiképp se rendelje a „39-es” címkét egy oda nem illő oldalhoz pusztán azért, hogy a számláló folytonosnak tűnjön.
Aláírt vagy védett PDF-ek esetén használja a megengedett forrás-munkafolyamatot, vagy kérjen javított olvasópéldányt a dokumentum szolgáltatójától. A cikkben szereplő tesztszkriptek nem alkalmasak ezen védelmek megőrzésére vagy megkerülésére.
A navigációs címkéket módosítsa, ne a nyomtatott tartalmat
Az Adobe által dokumentált asztali megoldás
Az Adobe jelenlegi Acrobat oldalcímke-útmutatója a következő útvonalat javasolja: Minden eszköz → Oldalak rendszerezése → Oldalcímkék. Jelöljön ki egy tartományt, indítson új számsort, majd válassza ki a számozási stílust, a kezdőértéket és az opcionális előtagot. Ismételje meg a különálló szakaszoknál; egy összefüggő szakasz folytathatja az előző számsort is.
Példánkban ez római számozást jelent a bevezetőhöz, 1-től újrainduló arab számozást a főszöveghez, valamint arab számozást A- előtaggal a függelékhez. Minden módosítás alkalmazása előtt ellenőrizze a ténylegesen kijelölt oldalakat, különösen akkor, ha a meglévő címkék már most is eltérnek a fájlbeli pozícióktól.
Az Adobe megkülönbözteti ezeket a navigációs címkéket a fejlécben vagy láblécben látható oldalszámoktól. Ha csak azt szeretné elérni, hogy az olvasóprogram lapozóvezérlői megegyezzenek a könyvvel, a látható lábléc hozzáadása egy teljesen másik művelet.
Ezek a lépések a dokumentáción alapulnak. A cikkhez nem végeztünk Acrobat-javítást, és nem teszteltünk konkrét Acrobat-felületet sem.
A módszer, amelyet ténylegesen teszteltünk a pypdf segítségével
Tesztfájljainkat a ReportLab segítségével hoztuk létre, a pypdf 6.10.0-s verziójával klónoztuk, és címkékkel láttuk el anélkül, hogy módosítottuk volna az oldalak tartalomfolyamát. Kizárólag a hétoldalas mintáravonatkozó alapművelet a következő:
from pypdf import PdfReader, PdfWriter
from pypdf.constants import PageLabelStyle
reader = PdfReader("seven-page-before.pdf")
writer = PdfWriter(clone_from=reader)
writer.set_page_label(0, 0, prefix="Cover")
writer.set_page_label(1, 2, style=PageLabelStyle.LOWERCASE_ROMAN, start=1)
writer.set_page_label(3, 4, style=PageLabelStyle.DECIMAL, start=1)
writer.set_page_label(5, 6, style=PageLabelStyle.DECIMAL, prefix="A-", start=1)
with open("seven-page-labeled-copy.pdf", "xb") as output:
writer.write(output)
assert PdfReader("seven-page-labeled-copy.pdf").page_labels == [
"Cover", "i", "ii", "1", "2", "A-1", "A-2"
]
Az API nullaalapú indexelésthasznál: a 4. fájlpozíció a 3-as index. A fenti tartományok mindkét végpontot tartalmazzák. Az exkluzív kimeneti mód, az xb, megtagadja a meglévő fájl felülírását. A pontos megvalósításért tekintse meg a verziózott pypdf oldalcímke-API-t és a teljes generátorkódot .
Ne másolja át ezeket a tartományokat egy másik könyvbe anélkül, hogy előbb feltérképezné annak szakaszait. A tesztelt parancsfájlunk nem fogad el ügyfél- vagy forrás-PDF-eket: kizárólag a benne definiált eredeti példákat generálja le.
Két eset, amikor a fix eltolás csődöt mond
Egy számozatlan illusztráció megváltoztatja a törzsszöveg eltolását
A második tesztfájlban beszúrtunk egy képmellékletet a nyomtatott törzsszöveg 1. és 2. oldala közé. A képmellékleten nincs nyomtatott oldalszám. A következő leíró címkét rendeltük hozzá: Plate-A , a következő törzsszövegoldalt pedig a 2-es számmal folytattuk.
| Fájlbeli pozíció | Látható oldalazonosító | Címke |
|---|---|---|
| 4 | 1 | 1 |
| 5 | Számozatlan illusztráció | Melléklet-A |
| 6 | 2 | 2 |
A beszúrás előtt a nyomtatott 1. oldal a 4. fájlpozíción volt: ez 3-as eltolást jelent. A beszúrás után a nyomtatott 2. oldal a 6. fájlpozícióra került: ez már 4-es eltolás. Ha az első eltolást használná újra, az a képmellékletre navigálna.
Hasonlítsa össze a nyolcoldalas, címkézés előtti változatot a felcímkézett változattal. A javítás egy új címkeszakaszt hoz létre a beszúrásnál, és utána újraindítja a törzsszöveg számozási sorozatát. Nem alakítja át a képmellékletet számozott forrásoldallá, és nem is távolítja el a fájlból.
Egy kivonat kezdődhet a nyomtatott 37. oldalon is
A harmadik tesztfájlunk három oldalt tartalmaz, amelyeken láthatóan a 37, 38 és 39-es oldalszám szerepel. A fájlbeli pozíciójuk 1, 2 és 3. A megfelelő címkéknek 37-tel kell kezdődniük, nem 1-gyel.
Az előtte állapotú fájl és az utána állapotú fájl egyaránt pontosan ezt a három oldalt tartalmazza. Ha az első oldalt a(z) 37 címkével látjuk el, az nem jelenti azt, hogy a PDF-nek tartalmaznia kellene az azt megelőző 36 oldalt is.
Valós részlet esetén olyan számokat használjon, amelyeket a forrásból ellenőrizni tud. Ha az első látható szám hiányzik vagy le van vágva, szerezzen alátámasztó forrásbizonyítékot, mielőtt hozzárendelné. Egy kényelmesen kitalált számsor félrevezetőbb lehet, mint a fájl puszta lapszámlálója.
A mentett fájlt ellenőrizze, ne csak a szerkesztőablakot
E három pár esetében mind a hat PDF-et újra megnyitottuk, és minden címkét ellenőriztünk. A Poppler 26.08.0 mindkét verziót 144 dpi felbontásban renderelte. Mind a 18 megfelelő oldalpár képpontjai teljesen megegyeztek, és mind a 18 oldaltartalom-adatfolyam bájtról bájtra egyezett. A teszt során semmit sem pecsételtünk az oldaltartalomra, és nem is távolítottunk el belőle.
Az oldalankénti eredmények tartalmazzák a fájlhash-eket, a címkéket és a képpont-összehasonlításokat. A letölthető oldaltérkép rögzíti a fájlbeli pozíciókat, a nullaalapú indexeket és a látható lapszámokat. A reprodukciós útmutató ismerteti a függőségi verziókat, valamint a példák új könyvtárakban történő újragenerálásának módját.
Ez a mi fájljainkat igazolja, nem pedig azt, hogy minden megtekintőprogram hogyan kezeli őket. A PDF Association dokumentálja az alkalmazások közötti különbségeket a címkék támogatásában; a közzétett megtekintő-felmérésük 2024-es, nem pedig egy általunk ma megismételt teszt. Ellenőrizze azt az olvasót, amelyet ténylegesen használni fog:
- Nyissa meg újra a mentett másolatot, és győződjön meg arról, hogy a teljes oldalszám változatlan.
- Vizsgálja meg az egyes számozási szakaszok első és utolsó oldalát.
- Próbáljon elnavigálni az
ii,1és aA-1oldalra, vagy a dokumentuma ezeknek megfelelő részeire. - Ellenőrizze, hogy minden ugrás valóban a kívánt látható oldalra érkezik-e – nem csupán egy egyezőnek tűnő számlálóra.
- Ha az olvasó figyelmen kívül hagyja a címkéket, őrizze meg az explicit pozíció-oldal megfeleltetést, vagy használjon olyan olvasót, amely támogatja azokat. Ne írja át feleslegesen a helyes címkéket egy nem támogatott felület kompenzálására.
Az egyező renderelés még nem bizonyítja a kisegítő lehetőségeket, az érvényes aláírásokat, a működő hivatkozásokat vagy a helyesen kinyert szöveget. Ha az oldal jól néz ki, de a másolt szöveg hibás, használja a különálló PDF-szövegréteg diagnosztikát. Ezt a problémát nem az oldalcímkék oldják meg.
Őrizze meg az eredeti térképet, ha később lefordítja a dokumentumot
Ha csupán a pontos navigáció jelentette a problémát, itt meg is állhat. Az oldalcímkék átnevezéséhez nincs szükség OCR-re vagy fordításra.
Ha továbbra is a nyelv jelenti az akadályt, őrizze meg az eredeti fájlt és az oldaltérképet, mielőtt követné a szkennelt PDF-ek fordítási munkafolyamatát vagy a PDF-fordításról és formázásrólszóló útmutatót. Az elkészült fájl átfogóbb ellenőrzéséhez használja a PDF-fordítás minőségellenőrzési ellenőrzőlistáját.
A BookTranslator PDF-fordítóját választó olvasóknak nem szabad automatikusan feltételezniük, hogy a forrás oldalcímkéi megmaradnak az újonnan felépített kimenetben. Az OCR-mód módosíthatja az eredeti elrendezést, a betűtípusokat és a betűméreteket. Ha a kimenet szövegtördelése megváltozik, vesse össze a fontos részeket az eredetivel; a régi számozási térkép ráhúzása az új oldaltörésekre nem őrzi meg az oldalak megfeleltetését.
A cél nem az, hogy minden szám azonos legyen, hanem az, hogy minden szám egyértelmű legyen: hol helyezkedik el egy oldal a fájlban, hogyan nevezi a forrás, és hogyan éri el az olvasó.
Kapcsolódó bejegyzések





