Kaza Studo en la Arto de Module-Selektado
Ĵus, kliento petis min aldoni novan funkcion al la Drupal-ejo de la kompanio: montri PDF-dosierojn en la retumilo. Dum mi foliumis la eblojn en drupal.org, mi konsciis, ke tio estis perfekta ŝanco por dokumenti mian realan decidon-procezon, kiel mi elektis novan modulon . Mi ĉiam diras, ke mi elektu modulojn prudente , sed nun vi povas vidi, kiel mi kredas, ke tio funkcias en la reala vivo.
Difini Kion Vi Deziras
La unua paŝo estas difini kion vi volas. En mia kazo, mi volis:
- La kapablo vidi PDF-dosierojn en retumilo, simila al ĉi tiu ekzemplo. La kliento alŝutos PDF-dosierojn de la kompanio-informilo, kaj vizitantoj povos facile legi ilin.
- La ejo estas Drupalo 7 , do la modulo bezonus egali tiun plej grandan version . (Drupalo 7 jam foriris nun, do se modulo-programisto ankoraŭ ne eliris kun Drupalo 7-versio, ili verŝajne ne faros).
- Kvankam la kliento ne specifis ĉi tion, mi ankaŭ volis eviti dependi de tria servo. Por videos, mi ĝojas eldoni la enhavon al YouTube aŭ Vimeo kaj poste enigi ĝin en Drupalo-ejo, sed por PDF-dosieroj, mi ne pensis, ke ebla ekstra ekspozicio superas la eblajn ĝenojn, rompiĝojn kaj kostojn. Tamen, mi estis malfermita al tria servo se ĝi estis la sola opcio.
- Malgraŭ mia deziro eviti trian servon, mi sciis, ke mia elekto verŝajne bezonos trian bibliotekon de Javascript. Kvankam ĉi tio aldonus kroman paŝon al estontaj ĝisdatigoj, mi ĝenerale sentas pli bone pri kurado de mia propra kopio de biblioteko prefere ol dependanta de tria-servo.
- Mi volis konservi la modulon kiel malpezan kaj specifan ebla. Mi ne volis okupiĝi pri iu radikale nova maniero por manipuli aŭ organizi amaskomunikilarojn. Mi volis ion pli kiel Colorbox, kiu pligrandigas bildojn por pli bona vidado, sed restas tute sendependa pri kiel vi elektas administri la bildajn dosierojn. Mi pensis, ke ĉi tiu biblioteko estus pdf.js, sed mi estis malfermita al aliaj ebloj.
- Kiel kutime, mi volis sekvi la ĝeneralajn gvidliniojn por elekti Drupal-modulon. Esence elektu modulon, kiu jam uzis malmultajn homojn (se eble) dum iom da tempo, kun minimuma dependeco, kiu ŝajnas esti subtenata de aktiva programisto, kiu planas subteni la projekton en la estontecon kaj ne ' t postulas licencan kotizon.
Serĉu sur Drupalo.org
Konsiderante ĉi tiujn celojn, la sekva paŝo estis simpla serĉo pri Drupal.org. Tempo por salti en la Pilko Piedo de Modulo Boneco.
& # 34; Komparo & # 34; Paĝo por PDF-Moduloj
Mia unua halto estis (aŭ devus esti), ĉi tiu paĝo: Komparo de PDF-spektantoj-moduloj. Drupal.org havas bonegan tradicion de dokumentado-paĝoj, kiuj priskribas la avantaĝojn kaj konsojn de diversaj moduloj en la sama spaco. Ekzistas centra listo de komparaj paĝoj, sed ili ankaŭ ŝpruciĝis tra la retejo.
La paĝo de komparo de PDF inkludis kvar modulojn de vidilo PDF. Mi kovros ilin ĉi tie, kaj ankaŭ kelkajn aliajn, kiujn mi trovis el serĉado. Mi komencos kun la kandidatoj, mi decidis foriri.
Nun ni malplenigu la specifojn de kial tiuj moduloj (aŭ plejparte, ne) laboris por ĉi tiu projekto.
Dosiero Vidilo
File Viewer uzas Internet Archive BookReader, kiu interesis min ĉar mi estas interreta Arkivo. Ĉiufoje mi iros tien, mi sentas tiklojn de timo kaj superforto ĉe la montoj de libroj, kiujn mi povas forigi de la etero.
Dirite, la pruvo-ejo aspektis iom malbela al mi. Mi povus vivi kun ĝi, sed mi dubis, ke mia kliento, kiam pdf.js aspektas multe pli eleganta.
Ankaŭ, aliflanke, rigardante la projekton-paĝon, mi vidis la grandan aŭdacan anoncon ĉe la supro: Ĉi tiu modulo estis formale movita al PDF-modulo . Ĝuste sufiĉe. Kun malpli ol 400 instaladoj, kuniganta kun la pli populara PDF-modulo (kiun ni kovros en momento), ŝajnas esti bona movado. Neniam elŝutu modulon, kiu estis kunfandita / movita / forlasita.
Google-Formilo-Fileformilo
Google Viewer File Formatter estas kiel ĝi ŝajnas: maniero uzi Google-Dokumentojn por enmeti ekranojn de dosieroj en via retpaĝo. Kvankam mi ŝatis la versatilecon de Google Docs, unu el miaj celoj estis resti sendependa de iu ajn tria servo.
Ankaŭ, ĉi tiu modulo havis malpli ol 100 instalojn.
Ajax Dokumenta Vidilo
Kvankam "AJAX" estas ĝenerala Javascript-termino, Ajax Dokumentujo rigardis dependi de specifa tria servo. Nur ĉirkaŭ 100 instalas. Pluirante...
Skala PDF
Skala PDF nur havis 40 instalojn, sed mi devis rigardi, ĉar ĝi klare estis parto de pli granda projekto nomita (jes) Skaldulo. Kiel la Skolta projekto-paĝo klarigis: " Scald estas pionira pripensado pri kiel manipuli Media Atomojn en Drupalo."
Tiu frazo kondukis du grandegajn ruĝajn flagojn: "novajn prenojn" kaj la vorton "Media" simila al "Atom". "Atomo" evidente estis repurpita vorto por "afero", kiu faris ĝin ruĝa flago ĉio aparte. Drupalo pripensas ĉi tiujn malplenajn skatolojn: nodo , ento , trajto ... La pli ĝenerala vorto, kiom pli balaas la ŝanĝoj.
Kiam mi malpuriĝis, miaj suspektoj konfirmiĝis. Mi legis ekscititajn asertojn pri kiel Skaldo resume reinventus kiel mi manipulis Media en mia retejo.
Nun, la vero estas, ke la uzado de Drupal-Duonao povus uzi iom da reinventado. Skalo ne estas la nura ambicia projekto en ĉi tiu spaco. Tamen, kun malpli ol 1000 instaloj ĝis nun, mi ne volis eniri sur la plankon.
Verŝajne, ĉi-foje la venonta jaro, Scald eble estos la sekvaj Vidoj . Tio rokus. Sed ĝi eble ankaŭ povus esti forlasita, kun (malgranda) vojo de rompitaj lokoj lasita plori.
Nuntempe mi volis resti kun multe malpli ambicia kaj perforta solvo. Nur montri PDF-dosierojn, bonvolu. Tio estas ĉio, kion mi petis.
Shadowbox
Shadowbox surprizis min: ĝi asertis esti sola solvo por montri ĉiajn amaskomunikilarojn, de PDFoj al bildoj al video. Ĉi tio ne estis kiel balado, ĉar ĝi nur fokusus montri amaskomunikilaron sen enkonduki novajn konceptojn kiel "Media Atomoj". Sed mi jam ŝatas Colorbox, kiel mi menciis. Mi ne volis voli repensi tiun decidon.
Tamen, mi rimarkis (kun interna gajeco), ke kun pli ol 16,000 instaladoj, Shadowbox povus esti pli potenca alternativo en la sama spaco. Mi devis rigardi.
La Shadowbox Drupal-modulo estas esence ponto al Javascript-biblioteko, Shadowbox.js, do mi kontrolis la retejon de la biblioteko. Tie mi malkovris du kialojn por translokiĝi:
- La biblioteko postulas permesilon por komerca uzo. La kotizo estis sufiĉe racia, sed mi provas eviti programojn malfermitajn fontojn, kiuj ne estas senpagaj .
- Zorgema serĉo de la Demandoj malkaŝis, ke, kontraŭe al la priskribo en la paĝo de Drupal modulo, PDFs ne estas 100% subtenataj de la Shadowbox-biblioteko. Oops. Bona afero mi kontrolis.
The Two Contenders: & # 34; PDF & # 34; kaj & # 34; PDF-legilo & # 34;
Foriginte la reston, mi nun venis al la du evidentaj kontraŭuloj: PDF kaj PDF-legilo
Ĉi tiuj du projektoj havis ŝajnajn similecojn:
- Ambaŭ havis preskaŭ 3,000 instaladojn, multe pli ol la alternativojn (krom Shadowbox).
- Ambaŭ uzis la saman ekstera Javascript-biblioteko, pdf.js.
Kio pri diferencoj?
PDF-legilo ankaŭ havis la eblon por integriĝi Google Docs. En ĉi tiu aparta kazo, mi pensis, ke mia kliento eble ŝatas tion, do mi ŝatis havi la eblon.
Dume, PDF estis markita kiel Serĉanta ko-subtenanto (j). Tio povus esti signo, ke la programisto baldaŭ forlasos la projekton, sed aliflanke, la plej freŝa komerco estis antaŭ unu semajno, do almenaŭ la programisto ankoraŭ estis aktiva.
Aliflanke, PDF-legilo estis markita kiel aktive konservita, sed la plej freŝa kompromiso estis antaŭ unu jaro.
Sen klara venkinto, mi decidis provi ilin ambaŭ.
Provante la Kontencantojn
Mi provis ambaŭ modulojn en kopio de mia viva retejo. (Ne gravas kiom solida kaj senkulpa modulo aperas, neniam provu ĝin unue en viva retejo. Vi povus rompi vian tutan retejon.)
Mi preĝis al PDF Reader , ĉar ŝajnis havi pli da ebloj (kiel Google Docs) ol PDF . Do mi decidis provi PDF unue, por eviti ĝin.
PDF Fail: Kompilaĵo Postulita?
Tamen, kiam mi instalis PDF kaj legis README.txt, mi malkovris problemon, kiun mi vidis sed ignorita sur la paĝo de projekto. Por iu kialo, ĉi tiu modulo ŝajnas postuli, ke vi redaktas pdf.js permane. Kvankam la projekto-paĝo sugestis, ke tio ne necese bezonis, README.txt sugestis, ke ĝi estas.
Pro tio ke PDF Reader uzus la saman bibliotekon sen neceso de ĉi tiu paŝo, mi decidis provi ĝin antaŭ ĉio. Se ĝi ne funkciis, mi ĉiam povus reiri al PDF kaj provi permane kompili pdf.js.
PDF-legilo: Sukceso! Varo de.
Do, fine, mi provis PDF Reader . Ĉi tiu modulo provizas novan fenestraĵon por montri dosieron. Vi aldonas dosieron-kampo al via dezirata enhavo kaj agordu la fenestraĵon-tipon al PDF-legilo. Tiam vi kreas nodo de ĉi tiu tipo kaj alŝutas vian PDFon. La PDF aperas enigita en "skatolo" en la paĝo.
Vi povas provi malsamajn eksterordinarajn elektojn per redaktado de la enhavo-tipo denove kaj ŝanĝante la ekranajn agordojn por la kampo.
Mi trovis, ke ĉiu elekta elekto havis avantaĝojn kaj konsilojn:
- La leganto de Google Docs funkciis bone kiel enkorpigita, sed kiam mi alklakis ĝin por plenumi ekranon, mi vundis sur Google Docs-paĝo, kiu senkulpigis, ke mia imposto limo estis superita. Oops. Eble ĉi tio estus pli fidinda, se mi enkroĉis la modulon por pagi Google Apps-konto, sed mi ne ĝenis ekscii, ĉar mi estis sufiĉe certa, ke mia kliento ne ŝatus la ekranon.
- La opcio pdf.js funkciis mirinde ... sur Firefox kaj Chrome. Sed kiam mi ĵetis Internet Explorer, la skatolo aperis malplena. Ŝajne, ĉi tio estas problemo kun pdf.js mem, ne la PDF- modulo-modulo. Mi supozas, ke mi atendu tion, pro tio ke pdf.js estas disvolvita de Mozilla kaj Internet Explorer estas ... mem. Tamen mi estis seniluziigita, ke mi ne pensis konfirmi, ke pdf.js funkciis fidinde tra ĉiuj retumiloj en la unua loko.
- La enkorpigita eblo estis la plej fidinda. Ĉi tio efektive kuris Adobe Reader en skatolo en la retpaĝo. Mia Firefox ankoraŭ preferis ekzekuti pdf.js, sed mi pensas, ke tio estas foliumilo. De ajna maniero, kondiĉe ke vizitanto havis aŭ Firefox aŭ PDF-vidilon kiel Adobe Reader, la PDF montrus.
Tiel, al la fino, mia solvo estis uzi la PDF-legilon kun la enmeta opcio. Ĉi tiu opcio permesus al mi aliĝi PDF al Drupalo-nodo kaj fidinde montri ĝin sur Drupalo-retpaĝo.
Bedaŭrinde, foje "fidinda" ne sufiĉas. Post ĉio ĉi serĉado mi devis konsideri trian servon post ĉio.