Saya memiliki folder dengan beberapa ribu file PDF, yang sebagian besar memiliki anotasi Skim (mis. Sorotan dan catatan). Jika saya memiliki lebih sedikit file, saya hanya akan melalui masing-masing, mengekspor PDF dengan catatan tertanam, dan berada di jalan merry saya, memiliki kemampuan untuk membaca anotasi saya dengan Adobe Reader pada PC (ini tujuannya).
Tetapi karena ada begitu banyak file, saya memerlukan skrip yang secara otomatis akan pergi melalui folder ini, melakukan fungsi "ekspor sebagai PDF dengan catatan yang tertanam" untuk setiap PDF yang memiliki skim anotasi, dan kemudian berikan file baru nama asli file plus "dengan skim notes" (atau sebutan lain untuk menunjukkan itu versi dengan catatan tertanam). Kedua, jika saya membuat anotasi lebih lanjut ke PDF asli, alangkah baiknya jika skrip dapat memperbarui file yang diekspor dengan catatan yang tertanam.
Saya menganggap ini mungkin, karena Skim tampaknya memiliki dukungan applescript yang hebat, tetapi saya tidak tahu cara membuatnya.
Terima kasih banyak atas bantuan yang bisa Anda tawarkan. WG
sumber
Ini adalah metode yang saya gunakan di seluruh perpustakaan Zotero saya (~ 3GB PDF). Perhatikan bahwa satu-satunya anotasi yang saya gunakan adalah menyoroti (satu warna) dan komentar. Apakah ini berhasil mengubah anotasi yang lebih rumit tergantung pada detail skimembed script, yang saya tidak tahu banyak tentang.
Apa yang berhasil
Asli skim skimembed mengkonversi satu PDF dengan anotasi skim (yang dalam bentuk "atribusi yang diperluas") ke PDF tunggal dengan anotasi tersemat. Ini adalah skrip shell yang Anda jalankan dari baris perintah (terminal) menggunakan notasi ini
atau lebih umum
Sini,
sh
adalah program shell yang Anda gunakan untuk menafsirkan skripskimembed
. Skrip ini pada dasarnya hanya cara penggunaan otomatisFile > Export...PDF with embedded notes
dari menu Skim. Namun, itu tidak membuat salinan pdf kedua; versi baru menggantikannya dan memiliki nama yang sama.Saya kemudian mencari-cari skrip shell yang memungkinkan Anda menerapkan skimembed secara rekursif ke semua file pdf dalam folder (termasuk subfolder):
Sini,
$1
menunjukkan path ke folder, argumen pertama (dan satu-satunya) yang diharapkan diterima oleh skrip ini. Itufind
perintah mengembalikan semua normal (-type f
) file dalam folder itu dengan akhiran pdf (name "*.pdf"
). Hasilnya disalurkan (|
) ke awhile
loop diindeks olehf
.Saya menyimpan teks di atas dalam file yang disebut recursiveskiembed.sh dan kemudian berlari
Dalam kasus saya, folder yang saya pilih adalah
/Users/username/Library/Application Support/Zotero/Profiles/xxx123.default/zotero/storage
. Ini mengambil setiap PDF dengan anotasi Skim di folder dan menggantinya dengan anotasi PDF yang tertanam dan normal.Apa yang tidak berhasil
Saya mencoba skim skim yang dikirimkan pengguna dan khususnya naskah skimalot (yang merupakan penerus skimembed) dan Script FilingEagle dan beberapa yang lain . Tapi saya tidak bisa membuat mereka bekerja. (Perhatikan bahwa file yang di-host sugarsync.com adalah tautan mati sekarang.) Demikian juga, itu setengah lusin AppleScript skrip selalu tampaknya gagal dengan kesalahan yang sama sekali tidak dapat dipahami.
Itu clobbergaurd script seharusnya memeriksa direktori besar untuk nama file yang berbeda hanya pada akhirnya untuk mencegah Anda menimpa barang menggunakan skimalot, tapi saya tidak bisa membuatnya berfungsi. (Tautan sugarsync sudah mati, tetapi pencarian Google muncul salinan Dropbox ini .) Jadi saya baru saja mencadangkan perpustakaan zotero saya dan saya menyilangkan jari saya.
sumber
Saya memiliki masalah yang sama dan ingin menanamkan banyak skim pdf. Skrip apel oleh Jess Riedel tidak berfungsi untuk saya, jadi saya membuat kode skrip python untuk melakukan pekerjaan itu (saya tahu ini adalah halaman StackExchange applescript).
Saya menggunakan script untuk menanamkan 568 pdf yang tersebar di folder dengan berbagai subfolder. Butuh 300 detik. Perlu diketahui, bahwa skrip tidak akan memproses file dengan
"
di filepath-nya.sumber