Énekfüzet fejlemények

A következő Énekfüzetet már egy teljesen új módszerrel kell majd csinálnunk, mivel az eddigi módszerrel már átléptük a korlátait. Az új módszer lényege az lesz, hogy OpenLyrics formátumban lesznek a dalok megírva és abból generálunk PDF-et, webes megjelenést, azt importáljuk az OpenLP-be. A dolog lényege, hogy egyszer készítjük el a dalt, egy helyen gondozzuk azt és mindent abból generálunk.

De még nincsenek meg az eszközök hozzá és az  OpenLyrics-et is fejleszteni kell, hogy elfogadható minőséget hozzon. Tehát ezen dolgozunk. Az eredeti csapat mellett, hogy még néhány csatlakozót várok a projektbe. Én magam pedig dolgozom a Proof of concept kódon ebben a tárolóban:

  • Két módszerrel fog történni a megjelenítés: CSS-sel, vagy XSLT+CSS-sel. A képernyőn történő megjelenítéshez simán csak egy böngésző kell. A nyomtatáshoz pedig a Prince-t használjuk.
  • Az XML formátumú OpenLyrics-et natív CSS segítségével lehet megjeleníteni. Ennek a kódalapját a karácsonyi szünetben leraktam, mostanra már kicsiszoltam. Mellékelve egy PDF- példa. Ez a dokumentumot úgy jeleníti meg, ahogy a szerzőt azt megírta.
  • A másik lehetőséggel egy új dokumentumot generálunk az eredeti szerző OpenLyrics-éből, ahogy pl. egy gyűjteményben egy másik szerző meg akarja azt jeleníteni. Erre való az XSLT technológia, amivel egy új dokumentumot építünk a forrásra épülve. Ezt szintén CSS-sel formázzuk meg. Az elmúlt hetekben már ezen a második módszeren dolgoztam. A CSS gond, az XSLT-vel azonban eddig nem voltam pertuban. Tanultam róla anno, de sohasem kellett igazán használjam. No, jelentem addig vertem a vasat míg itt is sikerült elérni a célt. Egy sima böngésző átalakítja a dokumentumot. A CSS kód még nem kész, csak csupaszan áll a generált HTML kód, de a nagy feladat már kész. Itt is mellékelek egy példa PDF-et.

Itt állok most. Ha a megvalósíthatósági kód kész, akkor nekiállunk az OpenLyrics szabványt felhúzni erre a szintre, elkészítjük az átalakító szkripteket és utána lehet készíteni az akkordos OpenLyrics dokumentumokat.

  • bubu