Impostazione dei metadati | Soluzione API per JavaScript

Come impostare i metadati del carattere nella tabella “Nome”?

È possibile aggiungere o modificare le informazioni sui metadati utilizzando la funzione ASPUSEFONTSETINFO.

Il parametro nameID definisce la categoria stringa logica per un record. I parametri platformid, platformspecificid e linguaid vengono utilizzati per impostare il linguaggio della stringa. E l’ultimo parametro text viene utilizzato per impostare i dati di stringa per un record.

Se il record coincide con quello aggiunto per parametri PlatformId, Platformspecificid, Linguaid e nameId esiste già, il metodo non aggiunge un nuovo record, ma aggiorna i dati di stringa nel record esistente usando il valore, definito dal parametro testo.

Esempi di impostazione di metadati

  1. Crea un “FileReader”.
  2. Definire i parametri ed eseguire la funzione ASPUSEFONTSETINFO.

Utilizzare l’enumerazione TtfNameTableNameId e TtfNameTablePlatformId per nameId e platformId, TtfNameTableMacPlatformSpecificId, TtfNameTableMSPlatformSpecificId, oppure TtfNameTableUnicodePlatformSpecificId per platformSpecificId e TtfNameTableMacLanguageId o TtfNameTableMSLanguageId per i parametri languageId.

  1. Successivamente, se json.errorcode è 0, è possibile ottenere dati sui 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.
  2. L’oggetto JSON risultante contiene il campo FileNAmeresult con nome file del carattere salvato nel file system di memoria. Usa la funzione Downloadfile per ottenerla.
 1  var fFontSetInfo = function (e) {
 2    const file_reader = new FileReader();
 3    file_reader.onload = (event) => {
 4
 5      const nameId = new Function("return Module.TtfNameTableNameId." + document.getElementById("NameId").value)();
 6      const platformId = Module.TtfNameTablePlatformId.Microsoft;
 7      const platformSpecificId = Module.TtfNameTableMSPlatformSpecificId.Unicode_BMP_UCS2.value;
 8      const text = document.getElementById("textValue").value;
 9      const langID = 1033;
10
11      const json = AsposeFontSetInfo(blob, file.name, nameId, platformId, platformSpecificId, langID, text);
12      if (json.errorCode == 0) {
13        DownloadFile(json.fileNameResult);
14        //DownloadFile(file.name);
15      }
16      else document.getElementById('output').textContent = json.errorText;
17    }
18    file_reader.readAsArrayBuffer(file);

o utilizzando il Web Worker:

 1<script type="text/javascript">
 2  /*Create Web Worker*/
 3  const AsposeFontWebWorker = new Worker("AsposeFontforJS.js");
 4  AsposeFontWebWorker.onerror = (evt) => console.log(`Error from Web Worker: ${evt.message}`);
 5  AsposeFontWebWorker.onmessage = (evt) => document.getElementById("output").textContent =
 6    (evt.data == 'ready') ? 'library loaded!' :
 7    (evt.data.json.errorCode == 0) ? `Result:\n${DownloadFile(evt.data.json.fileNameResult, "font/ttf", evt.data.params[0])}` : `Error: ${evt.data.json.errorText}`;
 8 
 9 /*Event handler*/
10  const ffileFontSetInfo = e => {
11    const file_reader = new FileReader();
12    file_reader.onload = event => {
13          const nameId = 'Module.TtfNameTableNameId.' + document.getElementById("NameId").value;
14          //Value will be changed for PlatformId = PlatformId.Microsoft, PlatformSpecificId = MSPlatformSpecificId.Unicode_BMP_UCS2 (1) and languageID = 1033 (English_United_States = 0x0409)
15          const platformId = 'Module.TtfNameTablePlatformId.Microsoft';
16          const platformSpecificId = 'Module.TtfNameTableMSPlatformSpecificId.Unicode_BMP_UCS2';
17          const langID = 'Module.TtfNameTableMSLanguageId.English_United_States';
18          const text = document.getElementById("textValue").value;
19          transfer = [event.target.result];
20          params = [event.target.result, e.target.files[0].name, nameId, platformId, platformSpecificId, langID, text];
21      AsposeFontWebWorker.postMessage({ "operation": 'AsposeFontSetInfo', "params": params }, transfer);
22    };
23    file_reader.readAsArrayBuffer(e.target.files[0]);
24  };
25</script>

Come ottenere la soluzione?

Se sei interessato a ottenere la biblioteca, 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.

Have any questions about Aspose.Font?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.