Susun ulang halaman PDF
Seret-jatuhkan untuk menyusun ulang, menghapus, atau menggandakan halaman. Semua pemrosesan dilakukan di browser Anda, PDF Anda tidak pernah meninggalkan perangkat.
Unggah PDF
Jatuhkan PDF Anda di sini atau klik untuk mengunggah
Ukuran file maksimum: 50 MB
Cara kerjanya
- Unggah PDF Anda, seret dan lepas file PDF ke area unggah atau klik untuk menelusuri perangkat Anda.
- Susun ulang, hapus, atau gandakan halaman, seret thumbnail untuk menyusun ulang. Gunakan tombol hapus (X) atau ganda di setiap kartu halaman untuk menghapus atau menyalinnya.
- Unduh PDF yang disusun ulang, klik "Unduh PDF yang disusun ulang" untuk menyimpan file yang dimodifikasi di perangkat Anda. PDF asli tidak pernah dimodifikasi.
Mengapa menyusun ulang halaman PDF?
Kadang-kadang PDF menampilkan halamannya dalam urutan yang salah, dokumen yang dipindai terbalik, laporan yang digabung dengan lampiran sebelum ringkasan, atau slideshow yang diekspor dengan halaman judul di akhir. Daripada mengekspor ulang dari aplikasi sumber (sering tidak tersedia), Anda dapat memperbaiki urutan halaman secara langsung. Alat ini juga menangani kasus umum: menghapus halaman kosong, menggandakan halaman tanda tangan, atau memindahkan ringkasan ke depan. Semuanya terjadi di browser Anda melalui PDF-lib dan PDF.js, file tidak pernah meninggalkan perangkat Anda, ideal untuk kontrak, deklarasi pajak, rekam medis, dan apa pun yang tidak akan Anda kirim ke server yang tidak dikenal.
Fitur
- Penyusunan ulang seret-jatuhkan, ambil thumbnail apa pun dan jatuhkan di posisi baru. Berfungsi dengan mouse dan sentuhan.
- Hapus dan gandakan, setiap kartu halaman memiliki tombol X untuk menghapus dan tombol untuk menggandakan dengan satu klik.
- Thumbnail langsung, lihat pratinjau yang dirender dari setiap halaman untuk mengetahui persis apa yang Anda pindahkan.
- Setel ulang urutan, satu klik mengembalikan urutan asli jika Anda berubah pikiran.
- 100% sisi klien, PDF Anda diproses sepenuhnya di browser Anda. Tanpa unggahan, tanpa akun, tanpa pelacakan konten file.
Pertanyaan umum
Apakah file PDF saya aman?
Ya, semua pemrosesan dilakukan di browser Anda. File PDF Anda tidak pernah dikirim ke server, selalu tetap di perangkat Anda.
Bisakah saya menghapus atau menggandakan halaman?
Ya, setiap halaman menawarkan tombol hapus (X) dan tombol gandakan (ikon salin) untuk menghapus atau menyalin halaman sesuka Anda.
Apakah ini berfungsi di seluler?
Ya, alat ini berfungsi di seluler dengan dukungan sentuh dan seret-jatuhkan untuk menyusun ulang halaman.
Apakah alat ini berfungsi dengan PDF yang dipindai?
Alat ini berfungsi dengan semua file PDF standar. Untuk dokumen yang dipindai (PDF yang hanya terdiri dari gambar), fitur ekstraksi teks mungkin terbatas karena konten disimpan sebagai gambar daripada teks yang dapat dipilih.
Apakah ada batas halaman?
Tidak ada batas tetap pada jumlah halaman. Kecepatan pemrosesan tergantung pada kemampuan browser dan perangkat Anda. Dokumen ratusan halaman berfungsi tetapi mungkin memerlukan waktu lebih lama.
Apa arti sebenarnya «mengubah urutan halaman PDF»
Di tingkat pengguna, mengubah urutan adalah operasi mengambil PDF yang halamannya dalam satu urutan dan menghasilkan PDF yang halamannya dalam urutan yang berbeda. UI seret-dan-lepas; thumbnail di layar; lepaskan thumbnail di slot baru; unduh hasilnya. Di tingkat format file, operasi ini adalah manipulasi pohon halaman. Setiap PDF memiliki objek katalog akar yang menunjuk ke node /Pages bertipe /Type /Pages. Node /Pages memiliki array /Kids berisi referensi ke anak-anaknya, baik objek halaman daun (/Type /Page) atau node /Pages menengah lainnya yang membentuk pohon. Entri /Count pada setiap node membawa jumlah total daun di bawahnya, sehingga pembaca dapat menemukan halaman N dalam waktu O(log N) tanpa berjalan melalui setiap daun.
Mengubah urutan, dalam representasi ini, hanyalah menulis ulang array /Kids dari node /Pages akar (atau merestrukturisasi node menengah jika pohonnya dalam). Objek halaman itu sendiri tidak bergerak atau berubah; hanya referensi ke mereka yang berubah. Ini terdengar sederhana dan sebagian besar memang demikian. Kerumitan muncul ketika objek halaman individual berbagi sumber daya (font, gambar tersemat, aliran konten) dengan halaman lain: menulis ulang pohon tidak boleh meyatim sumber daya bersama itu, dan tabel referensi silang file harus diregenerasi sehingga offset byte ke setiap objek benar. Implementasi pengurutan ulang naif yang hanya menukar entri /Kids tanpa menulis ulang tabel xref menghasilkan PDF yang rusak. Pustaka pengurutan ulang menangani ini dengan menulis file baru dari ujung ke ujung dengan tabel xref baru, bukan dengan menambal yang asli.
Cara kerja alat ini
Alat ini menggunakan dua pustaka PDF secara bersamaan: pdf-lib untuk konstruksi keluaran dan PDF.js untuk perenderan thumbnail. Mereka menangani bagian-bagian alur kerja yang saling melengkapi. Saat Anda memilih PDF, API File browser menyerahkan byte mentah ke kedua pustaka. PDF.js mem-parsing lapisan tampilan file, memanggil getPage(n) untuk setiap halaman, dan merender setiap halaman ke kanvas kecil untuk menghasilkan grid thumbnail yang Anda lihat. Thumbnail adalah rendering bitmap sisi klien; tidak ada tentang mereka yang dikirimkan ke mana pun.
Saat Anda menyeret thumbnail ke posisi baru, hanya array JavaScript indeks halaman dalam memori yang berubah. Tidak ada manipulasi PDF yang terjadi selama seret. Byte PDF asli tetap utuh. Saat Anda mengklik «Unduh PDF Berurutan Ulang», pdf-lib mengambil array indeks (misalnya [3, 0, 1, 2, 4] untuk dokumen 5 halaman di mana halaman 4 dipindahkan ke depan) dan membangun PDF baru: ia memuat sumber ke PDFDocument, membuat PDFDocument kosong baru, memanggil copyPages(source, indices) untuk mengkloning halaman yang diminta, kemudian addPage() untuk setiap halaman yang dikloning dalam urutan. Hasilnya diserialkan ke Blob, dibungkus dalam URL unduhan, dan ditawarkan kepada Anda.
copyPages melakukan kerja berat: ia melacak setiap objek yang menjadi sandaran halaman target (font, gambar tersemat, aliran konten, anotasi, kamus tindakan) dan menyalinnya ke dokumen baru, kemudian menulis ulang tabel referensi silang sehingga setiap offset byte konsisten. PDF yang dihasilkan secara struktural bersih, identik dalam output terrender dengan aslinya halaman demi halaman, hanya dengan halaman dalam urutan baru. Tidak ada permintaan jaringan yang ditembakkan selama semua ini. Anda dapat memverifikasinya: buka alat pengembang browser pada tab Jaringan, lakukan unggah + urutan ulang + unduh, dan amati apakah ada permintaan dengan konten file. Tidak akan ada di luar pemuatan CDN satu kali pdf-lib (~1,1 MB) dan PDF.js (~440 KB) yang di-cache browser.
Mengapa dua pustaka alih-alih satu
pdf-lib adalah pustaka yang berfokus pada output: ia dapat membaca PDF di tingkat struktural, memodifikasi pohon halaman, menyalin halaman antar dokumen, menyematkan konten baru, dan menulis PDF yang bersih. Yang tidak dilakukannya adalah merender halaman menjadi piksel. Itu adalah domain PDF.js, yang mengimplementasikan seluruh spesifikasi rendering PDF, tata letak teks, rasterisasi font, grafis vektor, transparansi, mode pencampuran, hingga ke kanvas. Untuk alat pengurutan ulang kita membutuhkan keduanya. Pengurutan ulang adalah operasi struktural (wilayah pdf-lib), tetapi UX memerlukan menampilkan kepada pengguna pratinjau visual sehingga mereka tahu halaman mana yang mana (wilayah PDF.js). Pustaka tunggal yang melakukan keduanya akan lebih besar; pemisahan dua pustaka adalah pilihan pengembang web yang pragmatis.
Biayanya adalah dua unduhan CDN pada kunjungan pertama (total sekitar 1,5 MB terkompresi). Biaya dibayar sekali per browser per masa hidup cache; kunjungan berikutnya memuat kedua pustaka dari cache secara instan. Tidak ada komponen server, dan tidak ada bagian dari file yang meninggalkan browser.
Alur kerja dunia nyata yang mendorong pengurutan ulang halaman
- Dokumen yang dipindai dalam urutan yang salah. Pemindai memberi makan halaman terbalik, atau pengguna memberi makan dua halaman ganda dan halaman ketiga ditambahkan ke akhir, atau pemberi makan lembar mengambil dalam urutan terbalik. Memindai ulang sering tidak praktis (yang asli hilang, pemindai di kantor lain, dokumen berisi ratusan halaman). Pengurutan ulang memperbaikinya dalam hitungan detik.
- Laporan yang digabungkan dengan lampiran di tempat yang salah. Beberapa dokumen sumber digabungkan menjadi satu PDF, dan urutannya bukan urutan editorial: lampiran mendarat sebelum kesimpulan, surat pengantar berakhir di belakang, daftar isi ada di tengah. Umum setelah menggunakan alat penggabungan yang menggabungkan tanpa menanyakan urutan.
- Eksekusi kontrak dengan halaman tanda tangan terpisah. Halaman tanda tangan yang ditandatangani kembali sebagai PDF terpisah, dan perlu menjadi halaman terakhir dari kontrak yang dirakit (atau yang pertama, untuk beberapa yurisdiksi). Pengurutan ulang menyisipkan halaman yang ditandatangani ke posisi yang benar dalam dokumen utama, tidak perlu mencetak dan memindai ulang.
- Discovery hukum dan persiapan litigasi. Produksi dokumen tiba dalam urutan stempel Bates, yang jarang merupakan urutan yang berguna untuk brief. Pengurutan ulang untuk bukti audiensi atau binder persidangan adalah tugas rutin dalam dukungan litigasi, dan melakukannya di browser menjaga dokumen istimewa dari server pihak ketiga.
- Pengurutan catatan medis. PDF klinis (formulir penerimaan, hasil tes, catatan perawatan) tiba dari beberapa sistem dalam urutan sembarang. Koordinator perawatan menyusunnya menjadi urutan kronologis atau per-kunjungan sebelum berbagi dengan spesialis. Konten sensitif tetap di browser.
- Pengajuan akademis dan perakitan tesis. Tesis dengan abstrak, bab, referensi, dan lampiran dalam urutan spesifik yang diperlukan komite. Pengurutan ulang memungkinkan mahasiswa memperbaiki urutan tanpa mengekspor ulang dari Word (yang sering kali mengatur ulang pemformatan dan merusak daftar isi).
Jebakan umum dan apa artinya
- Hyperlink menunjuk ke halaman yang salah setelah pengurutan ulang. PDF sumber memiliki hyperlink atau anotasi yang merujuk indeks halaman secara langsung (misalnya, tautan daftar isi ke «halaman 3» daripada ke tujuan bernama). Setelah pengurutan ulang, referensi tersebut masih menunjuk ke indeks halaman LAMA. Perbaikannya adalah meratakan PDF sumber dengan Perataan PDF Online Gratis sebelum pengurutan ulang, atau menerima bahwa tautan nomor halaman absolut akan memerlukan perbaikan manual setelahnya. Tautan tujuan bernama (pendekatan modern) bertahan dengan benar.
- File yang diunduh lebih besar dari aslinya. copyPages pdf-lib tidak deduplikasi sumber daya bersama seagresif yang mungkin telah dilakukan PDF sumber. Jika halaman 2 dan 5 dari asli berbagi subset font dan Anda memisahkannya dengan pengurutan ulang, file baru bisa berakhir dengan dua salinan font. Perbedaannya biasanya kecil (di bawah 10 persen). Jalankan hasil melalui Kompres PDF Online Gratis jika ukuran penting.
- Bookmark atau entri daftar isi sekarang salah. Salinan halaman pdf-lib mempertahankan tujuan bernama eksplisit yang dilampirkan ke halaman yang disalin, tetapi outline dokumen (pohon bookmark) hidup di tingkat katalog akar dan tidak ditulis ulang secara otomatis saat halaman bergerak. Output yang diurutkan ulang mempertahankan teks bookmark tetapi bookmark dapat menunjuk ke halaman yang salah. Keterbatasan yang diketahui dari pendekatan salinan halaman; solusinya adalah menambahkan kembali bookmark setelah pengurutan ulang dengan editor outline khusus (Adobe Acrobat Pro melakukannya secara native).
- Bidang formulir berhenti berfungsi setelah pengurutan ulang. Jika PDF sumber memiliki bidang AcroForm, objek bidang hidup di tingkat dokumen (di
/AcroForm /Fields) tetapi anotasi widget mereka hidup di halaman. Setelah pengurutan ulang, widget bergerak dengan halaman, tetapi asosiasi bidang-ke-widget mungkin tidak sepenuhnya dipertahankan. Perbaikan untuk alur kerja «final, tidak dapat diedit» adalah meratakan formulir sebelum pengurutan ulang; untuk «masih dapat diisi setelah pengurutan ulang» gunakan Adobe Acrobat Pro. - Seret-dan-lepas tidak berfungsi pada layar sentuh saya. Beberapa browser mobile menangani peristiwa seret secara tidak konsisten. Alat ini mendaftarkan baik peristiwa seret HTML5 (desktop) maupun peristiwa sentuh (mobile), tetapi versi browser Android tertentu memiliki bug yang diketahui dengan seret sentuh-dan-tahan. Jika seret gagal pada sentuh, coba browser desktop; hasil pengurutan ulang identik terlepas dari mana Anda melakukan seret.
- PDF memiliki perlindungan kata sandi. Alat ini tidak dapat membaca pohon halaman PDF terenkripsi: pdf-lib perlu mengurai struktur, dan penguraian dihalangi oleh dekripsi. Buka kunci dulu dengan Buka Kunci PDF Gratis Online, lalu urutkan ulang, lalu lindungi kembali dengan Perlindungan Kata Sandi PDF Gratis Online jika perlu. Pipeline tiga langkah adalah alur kerja standar untuk mengedit dokumen aman.
Pengurutan ulang hanya browser versus cloud
Setiap layanan pengurutan ulang PDF cloud (Smallpdf, ILovePDF, PDF24, Adobe Acrobat Online, Sejda, Lumin, Soda) mengunggah PDF Anda ke server operator, merender thumbnail sisi server, membiarkan Anda menyeret di browser terhadap gambar yang dirender sisi server itu, lalu mengirim urutan akhir Anda kembali ke server yang menghasilkan PDF yang diurutkan ulang dan menyajikannya sebagai unduhan. Implikasi privasi berbeda dari unggahan file normal dalam cara kecil tapi menarik: operator harus membaca konten setiap halaman (untuk merender thumbnail) sebelum Anda membuat keputusan pengurutan ulang. Bahkan jika Anda berubah pikiran dan tidak pernah mengunduh hasilnya, operator telah memproses konten.
Alat ini tidak mengunggah PDF. pdf-lib dan PDF.js keduanya berjalan di tab browser. Byte file dibaca sekali oleh API File, dimasukkan ke parser kedua pustaka, dan tidak pernah diserialkan kembali ke jaringan. Satu-satunya lalu lintas jaringan adalah pengambilan CDN satu kali dari dua pustaka pada kunjungan pertama; kunjungan berikutnya sepenuhnya dapat digunakan offline dari cache. Trade-off adalah cakupan fitur. Layanan cloud sering membundel operasi sekunder: OCR halaman yang dipindai sebelum pengurutan ulang, mengkonversi lampiran ke PDF dengan cepat, tandatangan-dan-kirim setelah pengurutan ulang. Alat sisi browser di sini hanya melakukan pengurutan ulang. Untuk alur kerja terfokus «Saya perlu memperbaiki urutan dan mengunduh», browser sangat lebih cepat (tidak ada tunggu unggah, tidak ada batas ukuran unggah) dan lebih pribadi.
Kapan alat lain adalah pilihan yang tepat
- PDF lebih dari 200 MB pada perangkat dengan memori terbatas. Dua pustaka memuat seluruh file ke memori; file yang sangat besar dapat menyebabkan tab crash. Gunakan alat desktop (Adobe Acrobat, qpdf CLI, PDFsam) untuk file besar.
- Formulir XFA atau enkripsi berbasis sertifikat. pdf-lib tidak menangani struktur eksklusif Adobe dengan andal. Adobe Acrobat adalah alat kanonik untuk itu.
- Pengurutan ulang yang perlu mempertahankan struktur bookmark/outline. Jika dokumen memiliki outline kompleks dan Anda perlu bookmark mengikuti halaman ke posisi baru, fitur Atur Halaman Adobe Acrobat Pro menangani ini secara native; pdf-lib tidak.
- Pengurutan ulang batch otomatis sebagai bagian dari pipeline. Untuk pengurutan ulang sisi server atau berskrip, gunakan pdf-lib langsung dari Node.js (pustaka yang sama, tidak diperlukan tab browser), pikepdf Python, atau sintaks rentang halaman eksplisit dari qpdf CLI.
Pertanyaan yang sering diajukan lainnya
Mengapa thumbnail halaman kecil?
PDF.js merender thumbnail pada ukuran tetap (~150 px lebar) untuk menjaga penggunaan memori tetap dapat dikelola untuk dokumen dengan ratusan halaman. PDF yang diekspor menggunakan halaman sumber dengan RESOLUSI PENUH: kualitas rendering thumbnail tidak berpengaruh pada kualitas output. Jika thumbnail terlalu kecil untuk melihat apa yang ada di setiap halaman, perbesar di browser Anda; thumbnail akan diskalakan secara proporsional.
Apakah ini bekerja offline?
Setelah kunjungan pertama, ya. pdf-lib dan PDF.js di-cache oleh browser pada pemuatan pertama (total sekitar 1,5 MB terkompresi). Kunjungan berikutnya bekerja tanpa koneksi jaringan, selama cache browser tidak dihapus. Pengurutan ulang PDF itu sendiri tidak pernah membutuhkan jaringan sejak awal, hanya pemuatan pustaka.
Bisakah saya mengurutkan ulang halaman dari beberapa PDF menjadi satu?
Tidak langsung di alat ini: UI pengurutan ulang mengasumsikan dokumen sumber tunggal. Alur dua langkah adalah: gunakan Gabung PDF Online Gratis untuk menggabungkan sumber Anda menjadi satu PDF, lalu bawa PDF gabungan itu di sini untuk menyeret halaman ke urutan akhir yang benar. Untuk alur kerja lintas dokumen yang lebih kompleks (seret halaman 3 dari file A di antara halaman 5 dan 6 dari file B), Atur Halaman Adobe Acrobat Pro menangani seret lintas dokumen secara native.
Haruskah saya mengurutkan ulang sebelum atau setelah menandatangani, meratakan, mengompres?
Urutan aman adalah: mengurutkan ulang, meratakan, menandatangani, mengompres. Urutkan ulang dulu karena operasi berikutnya dapat bergantung pada urutan halaman akhir. Ratakan berikutnya karena membakar bidang formulir menjadi konten statis sehingga alat hilir menanganinya secara seragam. Tanda tangani setelah meratakan karena tanda tangan kriptografi berkomitmen pada urutan byte akhir dokumen dan setiap perubahan lebih lanjut membatalkannya. Kompres terakhir (opsional) untuk mengurangi ukuran untuk transmisi. Lewati langkah apa pun yang tidak Anda butuhkan.
Apakah lapisan teks OCR akan dipertahankan?
Ya. Teks OCR disimpan sebagai teks tak terlihat di setiap halaman (aliran konten yang ditandai sebagai tak terlihat), dan aliran konten itu adalah bagian dari objek halaman. Saat pdf-lib menyalin halaman, ia menyalin seluruh objek halaman termasuk aliran kontennya, font, dan lapisan OCR tak terlihat apa pun. Cari-dan-pilih tetap bekerja pada output yang diurutkan ulang persis seperti pada aslinya.
Apakah ada padanan desktop atau baris perintah?
pdf-lib berjalan di Node.js (npm install pdf-lib) dan kode pengurutan ulang sama: copyPages(source, indices) lalu addPage() untuk masing-masing. Untuk baris perintah, qpdf memiliki sintaks pemilihan per halaman: qpdf --pages input.pdf 3,1,2,4 -- input.pdf output.pdf mengurutkan ulang halaman secara langsung. Pustaka pikepdf Python mencerminkan operasi yang sama dengan sintaks Pythonic yang lebih bersih. Atur Halaman Adobe Acrobat Pro melakukannya dengan GUI dan juga mempertahankan bookmark/outline dengan benar.