Skip to main content

Cara Memilih Modul 7 Drupal untuk Melihat PDF

On the Run from the CIA: The Experiences of a Central Intelligence Agency Case Officer (Juni 2026)

On the Run from the CIA: The Experiences of a Central Intelligence Agency Case Officer (Juni 2026)
Anonim

Baru-baru ini, seorang klien meminta saya untuk menambahkan fitur baru ke situs Drupal perusahaan: menampilkan file PDF di browser. Ketika saya menelusuri opsi di drupal.org, saya menyadari bahwa ini adalah kesempatan sempurna untuk mendokumentasikan proses pengambilan keputusan saya yang sebenarnya saat saya memilih modul baru. Saya selalu mengatakan untuk memilih modul dengan bijaksana, tetapi sekarang Anda dapat melihat bagaimana saya pikir ini bekerja dalam kehidupan nyata.

Tentukan Apa yang Anda Inginkan

Langkah pertama adalah menentukan apa yang Anda inginkan. Dalam kasus saya, saya ingin:

  • Kemampuan untuk melihat file PDF di browser web, mirip dengan contoh ini. Klien akan mengunggah PDF buletin perusahaan, dan pengunjung akan dapat membacanya dengan mudah.
  • Situs ini adalah Drupal 7, jadi modulnya harus sesuai dengan versi utama itu. (Drupal 7 telah keluar untuk sementara sekarang, jadi jika pengembang modul belum keluar dengan versi Drupal 7, mereka mungkin tidak akan melakukannya.)
  • Meskipun klien tidak menentukan ini, saya juga ingin menghindari mengandalkan layanan pihak ketiga. Untuk video, saya senang untuk memposting konten ke YouTube atau Vimeo dan kemudian menanamkannya di situs Drupal, tetapi untuk PDF, saya tidak berpikir kemungkinan paparan tambahan akan melebihi kerumitan, kerusakan, dan biaya. Namun, saya terbuka untuk layanan pihak ketiga jika itu satu-satunya pilihan.
  • Meskipun keinginan saya untuk menghindari layanan pihak ketiga, saya tahu pilihan saya mungkin akan membutuhkan Javascript pihak ketiga Perpustakaan . Meskipun ini akan menambah langkah tambahan untuk peningkatan di masa depan, saya biasanya merasa lebih baik menjalankan salinan perpustakaan saya sendiri daripada mengandalkan layanan pihak ketiga.
  • Saya ingin menjaga modul ini seringan dan sespesifik mungkin. Saya tidak ingin terlibat dengan beberapa cara baru yang radikal dalam menangani atau mengatur file media. Saya menginginkan sesuatu yang lebih seperti Colorbox, yang memperbesar gambar untuk tampilan yang lebih baik, tetapi tetap sepenuhnya independen dari bagaimana Anda memilih untuk mengelola file gambar. Saya punya firasat bahwa perpustakaan ini adalah pdf.js, tetapi saya terbuka untuk kemungkinan lain.
  • Seperti biasa, saya ingin mengikuti panduan umum untuk memilih modul Drupal. Pada dasarnya, pilih modul yang sudah digunakan oleh beberapa ribu orang (jika mungkin) untuk sementara, dengan minimum dependensi, yang tampaknya dikelola oleh pengembang aktif yang berencana untuk tetap mendukung proyek ke masa depan dan tidak t memerlukan biaya lisensi.

Cari di Drupal.org

Dengan tujuan ini, langkah selanjutnya adalah pencarian sederhana di Drupal.org. Saatnya melompat ke dalam Ball Pit of Module Goodness.

"Perbandingan" Halaman untuk Modul PDF

Perhentian pertama saya adalah (atau seharusnya), halaman ini: Perbandingan modul penampil PDF. Drupal.org memiliki tradisi dokumentasi halaman yang sangat baik yang menguraikan pro dan kontra dari berbagai modul dalam ruang yang sama. Ada daftar tengah halaman perbandingan, tetapi mereka juga ditaburkan di seluruh situs.

Halaman perbandingan PDF menyertakan empat modul penampil PDF. Saya akan membahasnya di sini, serta beberapa orang lain yang saya temukan dari pencarian. Saya akan mulai dengan kandidat yang saya putuskan untuk lewati.

Sekarang mari kita menyelidiki secara spesifik mengapa modul ini (atau sebagian besar tidak) bekerja untuk proyek ini.

Penampil Arsip

Penampil Arsip menggunakan Internet Archive BookReader, yang membuat saya tertarik karena saya seorang pecandu Arsip Internet. Setiap kali saya pergi ke sana, saya merasa geli ketakutan dan membanjiri pegunungan buku-buku yang dapat saya ambil dari eter.

Dikatakan demikian, lokasi demonstrasi terlihat sedikit jelek bagi saya. Saya mungkin akan hidup dengan itu, tetapi saya meragukan klien saya, kapanpdf.js terlihat jauh lebih gaya.

Juga, pada tampilan kedua di halaman proyek, saya melihat pengumuman besar di atas:Modul ini telah dipindahkan ke modul PDF secara resmi. Cukup adil. Dengan kurang dari 400 pemasangan, bergabung dengan modul PDF yang lebih populer (yang akan kami bahas sebentar lagi), tampak seperti langkah yang bagus. Jangan mengunduh modul yang telah digabung / dipindahkan / ditinggalkan.

Google Viewer File Formatter

Google Viewer File Formatter adalah apa yang terdengar seperti: cara menggunakan Google Docs untuk menanamkan tampilan file di halaman web Anda. Meskipun saya menyukai keserbagunaan Google Docs, salah satu tujuan saya adalah tetap independen dari layanan pihak ketiga mana pun.

Juga, modul ini memiliki kurang dari 100 pemasangan.

Ajax Document Viewer

Meskipun "AJAX" adalah istilah Javascript umum, Ajax Document Viewer ternyata bergantung pada layanan pihak ketiga tertentu. Hanya sekitar 100 pemasangan. Bergerak…

Scald PDF

Scald PDF hanya memiliki 40 pemasangan, tetapi saya harus melihatnya, karena itu jelas merupakan bagian dari proyek yang lebih besar yang disebut (ya) Scald. Seperti yang dijelaskan laman proyek Scald: " Scald adalah cara yang inovatif untuk menanganiAtom Media di Drupal. "

Kalimat itu mengangkat dua bendera merah besar: "take inovatif" dan kata "Media" dipasangkan dengan "Atom". "Atom" jelas kata yang dirancang untuk "hal", yang membuatnya menjadi bendera merah dengan sendirinya. Drupal memiliki kecenderungan untuk kata-kata kotak-kosong seperti ini: simpul , kesatuan , fitur … Semakin umum kata itu, semakin banyak perubahan yang terjadi.

Ketika saya menggulir ke bawah, kecurigaan saya dikonfirmasi. Saya membaca pernyataan gembira tentang bagaimana Scald pada dasarnya akan menemukan kembali bagaimana saya menangani Media di situs saya.

Sekarang, kebenarannya adalah penanganan Media Drupal dapat menggunakan beberapa reinventing. Scald bukan satu-satunya proyek ambisius di ruang ini.Namun, dengan kurang dari 1000 pemasangan sejauh ini, saya tidak ingin masuk ke lantai dasar.

Tentu, pada saat ini tahun depan, Scald mungkin menjadi Views berikutnya. Itu akan bergoyang. Tetapi mungkin juga meninggalkan perangkat lunak, dengan jejak (kecil) situs rusak yang tersisa untuk menangis.

Untuk saat ini, saya ingin tetap dengan solusi yang jauh lebih ambisius dan berbahaya. Cukup tampilkan PDF, silakan. Itu saja yang saya tanyakan.

Kotak bayangan

Shadowbox mengejutkan saya: itu diklaim sebagai solusi tunggal untuk menampilkan semua jenis media, dari PDF ke gambar hingga video. Ini tidak seram seperti Scald, karena itu hanya akan fokus menampilkan media tanpa memperkenalkan konsep-konsep baru seperti "Media Atom". Tapi saya sudah suka Colorbox, seperti yang saya sebutkan. Saya tidak ingin memikirkan kembali keputusan itu.

Namun, saya mencatat (dengan erangan batin) yang berlebihan16,000 instal, Shadowbox bisa menjadi alternatif yang lebih kuat di ruang yang sama. saya punya untuk melihatnya.

Modul Shadowbox Drupal pada dasarnya adalah jembatan ke perpustakaan Javascript, Shadowbox.js, jadi saya memeriksa situs web perpustakaan. Di sana, saya menemukan dua alasan untuk melanjutkan:

  • Perpustakaan membutuhkan biaya lisensi untuk penggunaan komersial. Biayanya cukup masuk akal, tetapi saya berusaha menghindari perangkat lunak open-source yang tidak gratis.
  • Pencarian yang cermat dari FAQ menunjukkan bahwa, bertentangan dengan deskripsi pada halaman modul Drupal, PDF adalah tidak 100% didukung oleh perpustakaan Shadowbox. Ups. Untung aku memeriksanya.

Dua Penantang: "PDF" dan "PDF Reader"

Setelah menghapus sisanya, saya sekarang datang ke dua pesaing yang jelas: PDF dan PDF Reader

Kedua proyek ini memiliki kesamaan kunci:

  • Keduanya memiliki hampir 3.000 pemasangan, jauh lebih banyak daripada alternatif (kecuali Shadowbox).
  • Keduanya menggunakan pustaka Javascript eksternal yang sama,pdf.js.

Bagaimana dengan perbedaan?

Pembaca PDF juga memiliki opsi untuk integrasi Google Docs. Dalam kasus khusus ini, saya pikir klien saya mungkin seperti itu, jadi saya suka memiliki opsi.

Sementara itu, PDF ditandai sebagaiMencari co-maintainer (s). Itu bisa menjadi tanda bahwa pengembang akan segera meninggalkan proyek, tetapi di sisi lain, komitmen terakhir adalah seminggu yang lalu, jadi setidaknya pengembang masih aktif.

Di samping itu, Pembaca PDF ditandai sebagaiDipertahankan secara aktif, tetapi komitmen terakhir adalah setahun yang lalu.

Tanpa pemenang yang jelas, saya memutuskan untuk menguji keduanya.

Menguji Contenders

Saya menguji kedua modul pada salinan situs langsung saya. (Tidak peduli seberapa padat dan tidak berbahaya sebuah modul muncul, jangan pernah mencobanya terlebih dahulu di situs langsung. Anda bisa merusak seluruh situs Anda.)

Saya condong ke arah Pembaca PDF , karena sepertinya memiliki lebih banyak opsi (seperti Google Docs) daripada PDF . Jadi saya memutuskan untuk mencoba PDF pertama, untuk menyingkirkannya.

Gagal PDF: Diperlukan Kompilasi?

Namun, ketika saya menginstal PDF dan bacaREADME.txt, Saya menemukan masalah yang saya lihat tetapi diabaikan di halaman proyek. Untuk beberapa alasan, modul ini tampaknya mengharuskan Anda melakukan kompilasipdf.js secara manual. Meskipun halaman proyek menyarankan bahwa ini belum tentu diperlukan,README.txt menyarankan itu.

Sejak Pembaca PDF akan menggunakan pustaka yang sama persis tanpa memerlukan langkah ini, saya memutuskan untuk mencobanya terlebih dahulu. Jika tidak berhasil, saya selalu bisa kembali PDF dan coba kompilasi secara manualpdf.js.

Pembaca PDF: Sukses! Semacam.

Jadi, akhirnya, saya mencoba Pembaca PDF . Modul ini menyediakan widget baru untuk menampilkanMengajukan bidang. Anda menambahkan bidang file ke jenis konten yang Anda inginkan dan mengatur jenis widget untukPembaca PDF. Kemudian, Anda membuat simpul dari jenis ini dan mengunggah PDF Anda. PDF muncul tertanam dalam "kotak" di halaman.

Anda dapat mencoba berbagai opsi tampilan dengan mengedit jenis konten lagi dan mengubah pengaturan tampilan untuk bidang tersebut.

Saya menemukan bahwa setiap opsi tampilan memiliki kelebihan dan kekurangan:

  • ItuGoogle Docs pembaca berfungsi dengan baik sebagai penyematan, tetapi ketika saya mengekliknya untuk masuk ke layar penuh, saya masuk ke halaman Google Documents yang meminta maaf karena batas nilai saya telah terlampaui. Ups. Mungkin ini akan lebih dapat diandalkan jika saya menghubungkan modul ke akun Google Apps berbayar, tetapi saya tidak repot-repot mencari tahu, karena saya cukup yakin klien saya tidak akan menyukai tampilan.
  • Itupdf.js pilihan bekerja luar biasa … di Firefox dan Chrome. Tetapi ketika saya menyalakan Internet Explorer, kotak itu tampak kosong. Rupanya, ini masalah denganpdf.js itu sendiri, bukan Pembaca PDF modul. Saya kira saya seharusnya mengharapkan ini, mengingat itupdf.js dikembangkan oleh Mozilla dan Internet Explorer adalah … sendiri. Namun, saya kecewa karena saya tidak berpikir untuk mengkonfirmasi hal itupdf.js bekerja dengan andal di semua browser di tempat pertama.
  • Itumenanamkan opsi adalah yang paling dapat diandalkan. Ini benar-benar menjalankan Adobe Reader dalam kotak di halaman web. Firefox saya masih lebih suka dijalankanpdf.js, tapi saya pikir ini adalah pengaturan browser. Bagaimanapun, selama pengunjung memiliki Firefox atau penampil PDF seperti Adobe Reader, PDF akan ditampilkan.

Jadi, pada akhirnya, solusi saya adalah menggunakan Pembaca PDF denganMenanamkan opsi tampilan. Pilihan ini akan memungkinkan saya untuk melampirkan PDF ke node Drupal, dan dapat diandalkan menampilkannya pada halaman web Drupal.

Sayangnya, terkadang "dapat diandalkan" tidak cukup. Setelah semua pencarian ini, saya harus mempertimbangkan layanan pihak ketiga setelah semua.