Showing posts with label pdfcpu. Show all posts
Showing posts with label pdfcpu. Show all posts

Thursday, 19 June 2025

ambil 4 halaman pertama dari setiap 8 halaman

 

File PDF Anda berisi 288 halaman, seharusnya berisi 34 siswa × 4 halaman = 136 halaman. Tapi nyatanya ada data berulang setiap 4 halaman (seperti halaman 1–4 dan 5–8 milik siswa yang sama). Jadi, siswa yang sama muncul dua kali, sehingga total jadi 288 halaman.

Tujuan:

Ambil hanya 4 halaman pertama dari setiap 8 halaman, total untuk 34 siswa aktif.

 

✅ Solusi:

Cara otomatis dengan pdfcpu (di Ubuntu):

Jika Anda sudah punya pdfcpu, gunakan perintah ini untuk mengambil setiap 8 halaman, dan dari itu ekstrak hanya 4 halaman pertama:

langkah 1 

pdfcpu split rapor_lengkap.pdf bagian 8

 

langkah 2 

setelah itu 

mkdir hasil_akhir
for file in bagian/*.pdf; do
  filename=$(basename "$file")
  pdfcpu trim -pages 1-4 "$file" hasil_akhir/"$filename"
done

Setelah itu, untuk menggabungkan semua hasil menjadi satu file PDF:


 $ pdfcpu merge rapor_final.pdf hasil_akhir/*.pdf
writing rapor_final.pdf...
creating bookmarks...
hasil_akhir/rapor_lengkap_105-112.pdf
hasil_akhir/rapor_lengkap_113-120.pdf
hasil_akhir/rapor_lengkap_121-128.pdf
hasil_akhir/rapor_lengkap_129-136.pdf
hasil_akhir/rapor_lengkap_137-144.pdf
hasil_akhir/rapor_lengkap_145-152.pdf
hasil_akhir/rapor_lengkap_153-160.pdf
hasil_akhir/rapor_lengkap_161-168.pdf
hasil_akhir/rapor_lengkap_169-176.pdf
hasil_akhir/rapor_lengkap_17-24.pdf
hasil_akhir/rapor_lengkap_177-184.pdf
hasil_akhir/rapor_lengkap_185-192.pdf
hasil_akhir/rapor_lengkap_1-8.pdf
hasil_akhir/rapor_lengkap_193-200.pdf
hasil_akhir/rapor_lengkap_201-208.pdf
hasil_akhir/rapor_lengkap_209-216.pdf
hasil_akhir/rapor_lengkap_217-224.pdf
hasil_akhir/rapor_lengkap_225-232.pdf
hasil_akhir/rapor_lengkap_233-240.pdf
hasil_akhir/rapor_lengkap_241-248.pdf
hasil_akhir/rapor_lengkap_249-256.pdf
hasil_akhir/rapor_lengkap_25-32.pdf
hasil_akhir/rapor_lengkap_257-264.pdf
hasil_akhir/rapor_lengkap_265-272.pdf
hasil_akhir/rapor_lengkap_273-280.pdf
hasil_akhir/rapor_lengkap_281-288.pdf
hasil_akhir/rapor_lengkap_33-40.pdf
hasil_akhir/rapor_lengkap_41-48.pdf
hasil_akhir/rapor_lengkap_49-56.pdf
hasil_akhir/rapor_lengkap_57-64.pdf
hasil_akhir/rapor_lengkap_65-72.pdf
hasil_akhir/rapor_lengkap_73-80.pdf
hasil_akhir/rapor_lengkap_81-88.pdf
hasil_akhir/rapor_lengkap_89-96.pdf
hasil_akhir/rapor_lengkap_9-16.pdf
hasil_akhir/rapor_lengkap_97-104.pdf
optimizing...

 

Split file pdf di Ubuntu dengan pdfcpu

 pdf$ wget https://sourceforge.net/projects/pdfcpu.mirror/files/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz/download -O pdfcpu_0.11.0_linux_x64.tar.xz
--2025-06-19 14:32:31--  https://sourceforge.net/projects/pdfcpu.mirror/files/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz/download
Resolving sourceforge.net (sourceforge.net)... 2606:4700::6812:d95, 2606:4700::6812:c95, 104.18.12.149, ...
Connecting to sourceforge.net (sourceforge.net)|2606:4700::6812:d95|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://downloads.sourceforge.net/project/pdfcpu.mirror/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz?ts=gAAAAABoU68AMt2wfPCePCdNnDKGn4PjyPvFZsbQE_sl_lO7A8anM1nw3Mq9v0E_3fAdvoU5gVXvgUi4u3p5m7RkAZXIu2gaWA%3D%3D&use_mirror=master&r= [following]
--2025-06-19 14:32:33--  https://downloads.sourceforge.net/project/pdfcpu.mirror/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz?ts=gAAAAABoU68AMt2wfPCePCdNnDKGn4PjyPvFZsbQE_sl_lO7A8anM1nw3Mq9v0E_3fAdvoU5gVXvgUi4u3p5m7RkAZXIu2gaWA%3D%3D&use_mirror=master&r=
Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 2606:4700::6812:c95, 2606:4700::6812:d95, 104.18.13.149, ...
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|2606:4700::6812:c95|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://master.dl.sourceforge.net/project/pdfcpu.mirror/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz?viasf=1 [following]
--2025-06-19 14:32:35--  https://master.dl.sourceforge.net/project/pdfcpu.mirror/v0.11.0/pdfcpu_0.11.0_Linux_x86_64.tar.xz?viasf=1
Resolving master.dl.sourceforge.net (master.dl.sourceforge.net)... 64:ff9b::d869:260c, 216.105.38.12
Connecting to master.dl.sourceforge.net (master.dl.sourceforge.net)|64:ff9b::d869:260c|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 7951828 (7.6M) [application/octet-stream]
Saving to: ‘pdfcpu_0.11.0_linux_x64.tar.xz’

pdfcpu_0.11.0_linux 100%[===================>]   7.58M   147KB/s    in 95s     

2025-06-19 14:34:11 (82.0 KB/s) - ‘pdfcpu_0.11.0_linux_x64.tar.xz’ saved [7951828/7951828]

$ tar -xJf pdfcpu_0.11.0_linux_x64.tar.xz

 

dhwan@dhwan-Aspire-A514-51K:~/Downloads/pdf$ ls
pdfcpu_0.11.0_linux_x64.tar.xz  pdfcpu_0.11.0_Linux_x86_64


dhwan@dhwan-Aspire-A514-51K:~/Downloads/pdf$ cd pdfcpu_0.11.0_Linux_x86_64
 

dhwan@dhwan-Aspire-A514-51K:~/Downloads/pdf/pdfcpu_0.11.0_Linux_x86_64$ ls
LICENSE.txt  pdfcpu  README.md
 

dhwan@dhwan-Aspire-A514-51K:~/Downloads/pdf/pdfcpu_0.11.0_Linux_x86_64$ sudo mv pdfcpu /usr/local/bin/
 

dhwan@dhwan-Aspire-A514-51K:~/Downloads/pdf/pdfcpu_0.11.0_Linux_x86_64$ pdfcpu version
installing user font:
Roboto-Regular
pdfcpu: v0.11.0 dev
commit: 9a9da09 (2025-05-28T13:30:45Z)
base  : go1.24.2
config: /home/dhwan/.config/pdfcpu/config.yml
 

di folder pdf nya $ mkdir -p hasil_split

lalu

$ pdfcpu split dokumen.pdf hasil_split 4
splitting dokumen.pdf to hasil_split/...
optimizing...
writing hasil_split/dokumen_1-4.pdf...
writing hasil_split/dokumen_5-8.pdf...
writing hasil_split/dokumen_9-12.pdf...
writing hasil_split/dokumen_13-16.pdf...
writing hasil_split/dokumen_17-20.pdf...
writing hasil_split/dokumen_21-24.pdf...
writing hasil_split/dokumen_25-28.pdf...
writing hasil_split/dokumen_29-32.pdf...
writing hasil_split/dokumen_33-36.pdf...
writing hasil_split/dokumen_37-40.pdf...
writing hasil_split/dokumen_41-44.pdf...
writing hasil_split/dokumen_45-48.pdf...
writing hasil_split/dokumen_49-52.pdf...
writing hasil_split/dokumen_53-56.pdf...
writing hasil_split/dokumen_57-60.pdf...
writing hasil_split/dokumen_61-64.pdf...
writing hasil_split/dokumen_65-68.pdf...
writing hasil_split/dokumen_69-72.pdf...
writing hasil_split/dokumen_73-76.pdf...
writing hasil_split/dokumen_77-80.pdf...
writing hasil_split/dokumen_81-84.pdf...
writing hasil_split/dokumen_85-88.pdf...
writing hasil_split/dokumen_89-92.pdf...
writing hasil_split/dokumen_93-96.pdf...
writing hasil_split/dokumen_97-100.pdf...
writing hasil_split/dokumen_101-104.pdf...
writing hasil_split/dokumen_105-108.pdf...
writing hasil_split/dokumen_109-112.pdf...
writing hasil_split/dokumen_113-116.pdf...
writing hasil_split/dokumen_117-120.pdf...
writing hasil_split/dokumen_121-124.pdf...
writing hasil_split/dokumen_125-128.pdf...
writing hasil_split/dokumen_129-132.pdf...
writing hasil_split/dokumen_133-136.pdf...
writing hasil_split/dokumen_137-140.pdf...
writing hasil_split/dokumen_141-144.pdf...
writing hasil_split/dokumen_145-148.pdf...
writing hasil_split/dokumen_149-152.pdf...
writing hasil_split/dokumen_153-156.pdf...
writing hasil_split/dokumen_157-160.pdf...
writing hasil_split/dokumen_161-164.pdf...
writing hasil_split/dokumen_165-168.pdf...
writing hasil_split/dokumen_169-172.pdf...
writing hasil_split/dokumen_173-176.pdf...
writing hasil_split/dokumen_177-180.pdf...
writing hasil_split/dokumen_181-184.pdf...
writing hasil_split/dokumen_185-188.pdf...
writing hasil_split/dokumen_189-192.pdf...
writing hasil_split/dokumen_193-196.pdf...
writing hasil_split/dokumen_197-200.pdf...
writing hasil_split/dokumen_201-204.pdf...
writing hasil_split/dokumen_205-208.pdf...
writing hasil_split/dokumen_209-212.pdf...
writing hasil_split/dokumen_213-216.pdf...
writing hasil_split/dokumen_217-220.pdf...
writing hasil_split/dokumen_221-224.pdf...
writing hasil_split/dokumen_225-228.pdf...
writing hasil_split/dokumen_229-232.pdf...
writing hasil_split/dokumen_233-236.pdf...
writing hasil_split/dokumen_237-240.pdf...
writing hasil_split/dokumen_241-244.pdf...
writing hasil_split/dokumen_245-248.pdf...
writing hasil_split/dokumen_249-252.pdf...
writing hasil_split/dokumen_253-256.pdf...
writing hasil_split/dokumen_257-260.pdf...
writing hasil_split/dokumen_261-264.pdf...
writing hasil_split/dokumen_265-268.pdf...
writing hasil_split/dokumen_269-272.pdf...
writing hasil_split/dokumen_273-276.pdf...
writing hasil_split/dokumen_277-280.pdf...
writing hasil_split/dokumen_281-284.pdf...
writing hasil_split/dokumen_285-288.pdf...