BookTranslator
BookTranslator

Nombor Halaman PDF Tidak Sama Dengan Buku? Semak Label Halaman Terlebih Dahulu

Betulkan navigasi PDF yang tidak sepadan dengan halaman bercetak. Lihat enam fail contoh yang merangkumi halaman awalan angka Rumi, sisipan plat ilustrasi, dan petikan bermula pada halaman 37.

BookTranslator

BookTranslator Team

9 min baca

Jika pembaca PDF menunjukkan halaman 4 sedangkan halaman buku itu sendiri tertera nombor 1, semak terlebih dahulu label halamanfail tersebut. Kulit buku dan bahagian pengenalan bernombor Rumi boleh menganjakkan kedudukan fizikal tanpa menjadikan buku tersebut tidak lengkap. Betulkan label navigasi pada salinan pendua; jangan terus mencap nombor baharu di atas halaman atau memadam bahagian pengenalan.

Pembaikan itu mempunyai hadnya: label tidak dapat memulihkan imbasan yang hilang, membetulkan susunan halaman, atau memberitahu nombor asal yang tidak dapat dibaca. Kenal pasti terlebih dahulu halaman mana yang benar-benar ada. Kemudian, laraskan navigasi agar menerangkannya dengan tepat.

Kami telah mencipta tiga pasangan sebelum/selepas yang boleh dimuat turun untuk menunjukkan perbezaan ini: buku nota tujuh halaman, versi dengan sisipan ilustrasi tanpa nombor, dan petikan yang bermula pada halaman bercetak 37. Bagi setiap pasangan, labelnya berubah manakala paparan halaman kekal seiras piksel demi piksel.

Asingkan ketiga-tiga nombor sebelum membetulkan apa-apa

Untuk panduan ini, kedudukan fail bermaksud halaman pertama, kedua, ketiga dalam PDF. Nombor bercetak bermaksud nombor yang kelihatan pada halaman tersebut. Label halaman bermaksud pengecam logik yang disimpan untuk tujuan navigasi, seperti ii atau A-1.

Nilai-nilai ini sememangnya boleh berbeza secara sah. Penjelasan label halaman oleh PDF Association menerangkan urutan penomboran, awalan dan perbezaan antara indeks halaman, nombor serta label. Sesebuah fail boleh mengandungi halaman awalan angka Rumi, penomboran teks utama yang bermula semula, dan lampiran berawalan tanpa mempunyai jumlah halaman yang salah.

Berikut ialah pemetaan dalam fail panduan tujuh halaman kami:

Kedudukan failNombor bercetak yang kelihatanLabel navigasi asalLabel yang dibetulkan
1Tiada: kulit1Kulit
2i2i
3ii3ii
4141
5252
6A-16A-1
7A-27A-2

Cover ialah label deskriptif yang kami tetapkan, bukannya angka yang dicetak pada kulit buku. Jumlah keseluruhannya kekal tujuh halaman. Pembaca PDF mungkin memaparkan kedua-dua label dan kedudukan, seperti 1 (4 of 7); melihat kedua-duanya bukanlah satu percanggahan.

Muat turun fail tujuh halaman sebelum pelabelan dan versi yang telah dilabelkan. Buka halaman kandungan utama yang pertama bagi setiap fail dan bandingkan halaman itu sendiri dengan kawalan navigasi.

Tujuh halaman pengajaran asal, dianotasikan di luar imej halaman dengan kedudukan fail dan label logik: Kulit, i, ii, 1, 2, A-1 dan A-2.

Ini merupakan pratonton halaman yang kami hasilkan dengan label yang ditambahkan di luar imej, bukannya tangkapan skrin aplikasi PDF tertentu.

Petakan sempadan bahagian pada salinan kerja

Sebelum mengedit, simpan salinan asal yang tidak diubah dan kenal pasti peralihan dengan melihat halamannya: halaman pengenalan pertama bernombor, halaman kandungan utama yang pertama, sebarang sisipan, serta setiap lampiran atau permulaan semula penomboran. Catatkan kedudukan fail di sebelah pengecam yang kelihatan.

Semak lebih daripada sekadar halaman kandungan utama yang pertama. Dalam contoh di atas, “tambah tiga” membolehkan anda mencari halaman kandungan 1, namun ia tidak menghuraikan pengenalan berangka Rumi atau lampiran A- . Satu ofset tunggal hanyalah pintasan sementara dalam bahagian yang berterusan, bukannya penerangan yang boleh dipercayai untuk keseluruhan buku.

Jika sesuatu urutan melompat secara tiba-tiba—misalnya halaman yang kelihatan beralih dari 38 terus ke 40—periksa imej di antaranya dan, jika ada, bandingkan dengan edisi yang sama daripada sumber rujukan. Ini mungkin disebabkan oleh imbasan yang hilang, sisipan yang disengajakan, penomboran asal yang luar biasa, atau masalah susunan yang lain. Jangan tetapkan “39” pada halaman yang tiada kaitan semata-mata untuk menjadikan pembilang kelihatan berterusan.

Untuk PDF yang ditandatangani atau disekat, gunakan aliran kerja sumber yang dibenarkan atau minta salinan bacaan yang telah diperbetulkan daripada pembekal dokumen. Skrip contoh dalam artikel ini bukan cara untuk mengekalkan atau memintas perlindungan tersebut.

Tukar label navigasi, bukan kandungan yang dicetak

Kaedah desktop seperti yang didokumentasikan oleh Adobe

Arahan semasa Adobe untuk label halaman Acrobat merujuk kepada Semua alatan → Susun halaman → Label halaman. Pilih julat, mulakan urutan baharu, kemudian pilih gaya penomboran, nilai permulaan dan awalan pilihan. Ulangi untuk bahagian yang berasingan; bahagian yang berterusan boleh menyambung urutan sebelumnya.

Bagi contoh kami, ini bermaksud penomboran Roman untuk pengenalan, penomboran perpuluhan yang dimulakan semula pada 1 untuk bahagian utama, dan penomboran perpuluhan dengan A- untuk apendiks. Sahkan halaman sebenar yang dipilih sebelum menggunakan setiap perubahan, terutamanya apabila label sedia ada sudah pun berbeza daripada kedudukan fail.

Adobe membezakan label navigasi ini daripada nombor pengepala/pengaki yang kelihatan. Jika anda hanya mahu kawalan halaman pembaca sepadan dengan buku, menambah pengaki yang kelihatan adalah operasi yang berbeza.

Langkah-langkah ini adalah berdasarkan dokumentasi. Kami tidak menjalankan pembaikan Acrobat atau menguji antara muka Acrobat tertentu untuk artikel ini.

Kaedah yang sebenarnya kami uji dengan pypdf

Fail contoh kami dicipta dengan ReportLab, diklon dengan pypdf 6.10.0, dan diberikan label tanpa mengubah strim kandungan halaman. Khusus untuk sampel tujuh halaman sahaja, operasi terasnya adalah seperti berikut:

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"
]

API ini menggunakan indeks berasaskan sifar: kedudukan fail 4 ialah indeks 3. Julat di atas merangkumi kedua-dua titik akhir. Mod output eksklusif, xb, tidak akan menulis ganti fail sedia ada. Sila rujuk API label halaman pypdf berversi dan penjana lengkap kami untuk pelaksanaan yang tepat.

Jangan tampal julat tersebut ke dalam buku yang tiada kaitan. Tentukan peta bahagiannya terlebih dahulu. Skrip kami yang telah diuji tidak menerima sebarang PDF pelanggan atau sumber: ia hanya menjana contoh asal yang ditakrifkan di dalamnya.

Dua keadaan apabila ofset tetap gagal

Ilustrasi tanpa nombor mengubah ofset teks utama

Dalam contoh ujian kedua, kami memasukkan satu plat ilustrasi antara halaman teks bercetak 1 dan 2. Plat ini tidak mempunyai angka bercetak. Kami menetapkan label deskriptif Plate-A kepadanya dan menyambung semula halaman teks seterusnya pada 2.

Kedudukan failPengecam halaman yang kelihatanLabel
411
5Ilustrasi tanpa nomborPlat-A
622

Sebelum sisipan, halaman bercetak 1 berada pada kedudukan fail 4: ofset sebanyak tiga. Selepas sisipan, halaman bercetak 2 berada pada kedudukan fail 6: ofset sebanyak empat. Menggunakan semula ofset pertama akan membawa anda ke halaman ilustrasi.

Bandingkan versi lapan halaman sebelum pelabelan dengan versi yang berlabel. Pembaikan ini menambah bahagian label pada sisipan tersebut dan memulakan semula jujukan teks utama selepasnya. Ia tidak menukar plat tersebut menjadi halaman sumber bernombor atau memadamkannya daripada fail.

Petikan boleh bermula pada halaman bercetak 37

Contoh ujian ketiga kami mengandungi tiga halaman yang bernombor jelas 37, 38 dan 39. Kedudukan failnya ialah 1, 2 dan 3. Label yang sesuai bermula pada 37, bukan 1.

Kedua-dua fail sebelum dan fail selepas mengandungi tepat tiga halaman tersebut. Melabel halaman pertama sebagai 37 tidak bermakna PDF tersebut mengandungi 36 halaman sebelumnya.

Bagi petikan sebenar, gunakan nombor yang boleh anda sahkan pada sumber. Jika nombor pertama yang kelihatan hilang atau terpotong, dapatkan bukti sumber sokongan sebelum menetapkannya. Jujukan tekaan yang mudah boleh menjadi lebih mengelirukan berbanding kiraan kedudukan fail biasa.

Sahkan fail yang disimpan, bukan sekadar dialog penyuntingan

Bagi ketiga-tiga pasangan ini, kami membuka semula kesemua enam PDF dan memeriksa setiap label. Poppler 26.08.0 memaparkan kedua-dua versi pada 144 dpi. Kesemua 18 pasangan halaman yang sepadan mempunyai piksel yang serupa, dan kesemua 18 aliran kandungan halaman sepadan bait demi bait. Tiada apa-apa yang dicap pada atau dialih keluar daripada kandungan halaman dalam ujian ini.

Bahagian keputusan setiap halaman merangkumi cincangan fail, label dan perbandingan piksel. Peta halaman yang boleh dimuat turun merekodkan kedudukan fail, indeks berasaskan sifar dan nombor yang kelihatan. Arahan pengeluaran semula menerangkan versi kebergantungan dan cara menjana semula contoh tersebut dalam direktori baharu.

Ini mengesahkan fail kami, bukannya pengendalian setiap aplikasi pembaca terhadapnya. PDF Association mendokumentasikan perbezaan sokongan label antara aplikasi; tinjauan pembaca yang diterbitkannya adalah dari tahun 2024, bukan ujian yang kami ulangi hari ini. Periksa aplikasi pembaca yang sebenarnya akan anda gunakan:

  1. Buka semula salinan yang disimpan dan sahkan jumlah kiraan halaman tidak berubah.
  2. Periksa halaman pertama dan terakhir bagi setiap bahagian penomboran.
  3. Cuba navigasi ke ii, 1 dan A-1, atau halaman yang setara dalam dokumen anda.
  4. Sahkan bahawa setiap navigasi mendarat pada halaman kelihatan yang dimaksudkan—bukan sekadar pada pembilang yang kelihatan sepadan.
  5. Jika pembaca mengabaikan label, kekalkan pemetaan kedudukan-ke-halaman yang eksplisit atau gunakan pembaca yang menyokongnya. Jangan tulis semula label yang betul berulang kali semata-mata untuk mengimbangi antara muka yang tidak disokong.

Paparan yang sepadan tidak membuktikan kebolehcapaian, tandatangan yang sah, pautan yang berfungsi atau teks diekstrak yang betul. Jika halaman kelihatan tepat tetapi teks yang disalin salah, gunakan diagnosis lapisan teks PDFyang berasingan. Isu tersebut tidak dibetulkan oleh label halaman.

Kekalkan peta asal jika anda menterjemah dokumen itu kemudian

Jika navigasi yang tepat adalah satu-satunya masalah, anda boleh berhenti di sini. OCR atau terjemahan tidak diperlukan untuk menamakan semula label halaman.

Sekiranya bahasa masih menjadi halangan, simpan fail asal dan pemetaan halaman sebelum mengikuti aliran kerja terjemahan PDF diimbas atau panduan untuk terjemahan dan pemformatan PDF. Untuk semakan output yang lebih menyeluruh, gunakan senarai semak QA terjemahan PDF.

Pembaca yang memilih Penterjemah PDF BookTranslator tidak seharusnya menganggap bahawa label halaman sumber akan dikekalkan dalam output yang dibina semula. Mod OCR mungkin mengubah reka letak asal, fon dan saiz fon. Jika teks output mengalir semula, sahkan petikan penting berbanding dokumen asal; menyalin pemetaan penomboran lama ke atas pemisah halaman baharu tidak menjamin padanan yang tepat.

Matlamatnya bukanlah untuk menjadikan setiap nombor sama. Matlamatnya adalah untuk menjadikan setiap nombor jelas dan tidak mengelirukan: kedudukan halaman dalam fail ini, nama yang dirujuk oleh sumber, dan cara pembaca anda menemuinya.

Catatan Berkaitan