33. Erzeugung einer Datei mit Links auf Bilder
Kapitel hinzufügen

JavaScript zur Erzeugung einer Datei mit Links auf Bilder. Das Script ist Bestandteil von BCS-2 V6 Professional. Sie finden es unter dem Dateinamen tt_snb_create_links.js im folgenden Verzeichnis: C:\ProgramData\ImageWareComponents\BCS2_V6_64\js.

// Indexnames as Script-Variables:
// use them instead numerics...
// -----------------------------------------------------------
// -----------------------------------------------------------

ind_Zeitschrift =  1;   // Index Zeitschrift  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: Titel der Zeitschrift
ind_ZDB_ID      =  2;   // Index ZDB_ID  Type: Zeichenkette [ZDB ID]: ZDB_ID
ind_Jahrgang    =  3;   // Index Jahrgang  Type: Zeichenkette [Datum der Veröffentlichung]: Jahrgang

// -----------------------------------------------------------
// -----------------------------------------------------------


// -----------------------------------------------------------
// -----------------------------------------------------------
// Page-Indexnames as Script-Variables:
// use them instead numerics...
// -----------------------------------------------------------
// -----------------------------------------------------------

page_ind_heft_begin          =  1; // bool
page_ind_heft_nr             =  2; // string
page_ind_has_ihv             =  3; // bool
page_ind_language            =  4; // string
page_ind_anzahl_seiten_ihv   =  5; // int

// -----------------------------------------------------------
// -----------------------------------------------------------


var cl           = [];
var titles       = [];
var page_numbers = [];
var title_str = '';

//
// c3_plus_results: fuer Zugriff auf JobPage oder auf Job: liefert die Liste der C3+ TOC-Items
//


if (job.numPages > 0) {

   //
   // fetch original filename of first image:
   //

   var basename  = ut.getBasenameFromString (job.pages[0].getKeyValue('Original_Filename'));
   var extension = ut.getExtensionFromString (job.pages[0].getKeyValue('Original_Filename'));

   //
   // holt die allererste Nummer aus dem Namen des ersten Images
   //
   var start_num = ut.right(basename, 4);


   var page;
   var heft_offset = 0;
   var is_heft_start = false;
   var heft_nummer = '';
   var titles = [];
   var page_numbers = [];
   var result_str = '';
   var sl = [];

   //
   // laufende Nummer vom basename entfernen
   //
   basename = ut.left (basename, basename.length - 4);
   basepath      = 'C:/SNB/img/';
   basepath_href = 'file://C:/SNB/img/';
   result_str    = 'Heft;Titel;Dateiname;Link\n';
   ihv_laenge    = '0';

   for (i = 0; i < job.numPages; i++) {

     //
     // Objekt: aktuelle JobPage
     //
     page = job.pages[i];

     //
     // Erkenne den Heftanfang
     //
     if (page.indexValues[0]) {
        heft_offset = i;
        heft_nummer = page.index2;
        ihv_laenge  = '0';
        if (page.index5.length > 0)
           ihv_laenge = page.index5;
     }

     if (page.indexValues[2]) {

        cl       = page.getKeyValue('c3_plus_results');
        language = page.index4;

        for (j = 0; j < cl.length; j++) {

          //
          // TOC-Item
          //
          ti = cl[j];


          title_map = ti['title'];
          title     = title_map['lang_default'];
          titles.push(title);

          page_num_map = ti['page_number'];
          page_num     = page_num_map['lang_default'];
          page_numbers.push(page_num);

          sl = page_num.split(',');

          sl = sl[0].split('-');

          file_num  = ut.formatNumber(Number(start_num) + heft_offset + Number(ihv_laenge) + Number(sl[0]) - 1, 4);
          file_name = basename + file_num + '.' + extension;

          result_str += heft_nummer + ';' + title + ';' + file_name + ';' + basepath_href + file_name + '\n';

        } // for j...

     } // if page.indexValues[2]...

   } // for i...

} else {
   ut.notifyUser('Fehler', 'es sind keine Images vorhanden!');
}

result_str;