Ottenere metadati | Soluzione API per JavaScript

Come leggere i metadati del carattere dalla tabella “Nome”?

È possibile leggere i record da “Nome” Tabella di TrueType o OpenType Font usando la funzione ASPUSEFONTgeTinfo.

Le enumerazioni corrispondenti vengono utilizzate per indicare ciascun valore del record dall’array. La funzione restituisce i nomi di queste enumerions.

Quindi, ttfnametablenameid e TtfNametablePlatFormid sono usati per nameID e PlatformId,

TTFAMETABLEMACCLATFORMSPECIFID, TTFNABLEMSPLATFORMSPECIFID, OR TTFNametableUnicodePlatformSpecificid per Platformspecificid, e TtfnametableMacLanguageId o TTFAMetableMsLanguageId per valori Linguaid.

Esempi di metadati

  1. Crea un “FileReader”.
  2. Esegui la funzione ASPOSEFONTgeTinfo.
  3. Successivamente, se json.errorcode è 0, è possibile ottenere i dati dei risultati. Se il parametro json.errorcode non è uguale a 0 e, di conseguenza, ci sarà un errore nel tuo file, le informazioni su tale errore saranno contenute nel json.errortext.
  4. L’oggetto JSON risultante contiene Array “Records”. Ogni record contiene campi nameid, platformid, platformspecificid, linguaid, info con informazioni da name tabella del carattere.
 1  var ffileFontGetInfo = function (e) {
 2    const file_reader = new FileReader();
 3    file_reader.onload = (event) => {
 4      const json = AsposeFontGetInfo(event.target.result, e.target.files[0].name);
 5      if (json.errorCode == 0) {
 6        document.getElementById('output').textContent = "Name records count: " + json.records.length;
 7        for (let recordIndex = 0; recordIndex < json.records.length; recordIndex++) 
 8			document.getElementById('output').textContent += " " + "\n"
 9													     + "NameId : " + json.records[recordIndex].NameId
10                                                         + ";  PlatformId : " + json.records[recordIndex].PlatformId
11                                                         + ";  PlatformSpecificId : " + json.records[recordIndex].PlatformSpecificId
12                                                         + ";  LanguageId : " + json.records[recordIndex].LanguageId
13                                                         + ";  Info : " + json.records[recordIndex].Info;
14      }
15      else document.getElementById('output').textContent = json.errorText;
16    }
17    file_reader.readAsArrayBuffer(e.target.files[0]);
18  }

o utilizzando il Web Worker:

 1<script type="text/javascript">
 2
 3  /*Create Web Worker*/
 4  const AsposeFontWebWorker = new Worker("AsposeFontforJS.js");
 5  AsposeFontWebWorker.onerror = evt => console.log(`Error from Web Worker: ${evt.message}`);
 6  AsposeFontWebWorker.onmessage = evt => document.getElementById('output').textContent = 
 7    (evt.data == 'ready') ? 'loaded!' :
 8      (evt.data.json.errorCode == 0) ? "Name records count: " + evt.data.json.records.length + 
 9										evt.data.json.records.reduce((ret, a) => ret +
10										    "\nNameId : " + a.NameId
11						                  + "; PlatformId : " + a.PlatformId
12						                  + "; PlatformSpecificId : " + a.PlatformSpecificId
13						                  + "; LanguageId : " + a.LanguageId
14						                  + "; Info : " + a.Info,"") :
15        `Error: ${evt.data.json.errorText}`;
16
17  /*Event handler*/
18  var ffileFontGetInfo = function (e) {
19    const file_reader = new FileReader();
20    file_reader.onload = (event) => {
21      var transfer = [event.target.result];
22      var params = [event.target.result, e.target.files[0].name];
23      return AsposeFontWebWorker.postMessage({ "operation": "AsposeFontGetInfo", "params": params }, transfer);
24    }
25    file_reader.readAsArrayBuffer(e.target.files[0]);
26  }
27
28</script>

Come ottenere la soluzione?

Se vuoi avere la libreria, vai su Aspose.Font per la pagina del prodotto JavaScript. Lì troverai più opportunità che la soluzione ti offre. Puoi scaricare una prova gratuita da o acquistare il prodotto lì.

Se hai più problemi o domande, sentiti libero di pubblicarli nella sezione Aspose.Font.Product del Free Support Forum e in poche ore il nostro team di supporto chiarirà tutto per te.

Inoltre, controlla la nostra applicazione FONT Metadata per comprendere appieno la funzionalità e il modo in cui l’API può essere utilizzata per la creazione della propria app.

Have any questions about Aspose.Font?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.