2015-09-24 4 views
7

Ich benutze ein pdfjs-Viewer in meiner Webanwendung und es kommt mit all diesen bcmap-Dateien. Ich habe den Netzwerkverkehr verfolgt und sie werden nicht angefordert.Was ist eine PDF-Datei bcmap?

Ich möchte diese Dateien nicht wirklich der Versionskontrolle oder dem Issue Tracking System b/c hinzufügen, da es so viele davon gibt, wenn sie nicht benötigt werden.

enter image description here

Was ist eine BCMAP-Datei?

+0

Die Dateinamen weisen auf CJK-Schriftartcodierungen hin, und [in einem Adobe-Blogpost] (http://blogs.adobe.com/CCJKType/page/2) wird der Begriff "Basiszeichen" verwendet. ... Sie sind nicht neugierig genug, um eine dieser Dateien zu öffnen und nach innen zu schauen? – usr2564301

+0

cmap/bcmap Dateien werden nur für einige PDFs benötigt/geladen. Wenn Sie nicht planen, sie zu verwenden/anzuzeigen, können Sie diese Dateien entfernen. – async5

Antwort

6

Das Wort "bcmap" steht für "binary cmap".

CMaps (Zeichenzuordnungen) sind Textdateien, die in PostScript- und anderen Adobe-Produkten zum Zuordnen von Zeichencodes zu Zeichenglyphen in CID-Schriftarten verwendet werden.

Siehe this document by Adobe, um zu sehen, was CID-Schriftarten gut sind. Sie werden hauptsächlich im Umgang mit ostasiatischen Schriftsystemen verwendet. (Diese Technologie ist eine Legacy-Technologie, daher sollte sie nicht in PDFs verwendet werden, die mit modernen Tools erstellt wurden.)

pdfjs benötigt die CMap-Datei, wenn sie solche CID-Fonts anzeigen möchte. Dafür müssen Sie die CMaps bereitstellen.

Sie geben die URL für den Ordner an, in dem die CMaps gespeichert sind, über die Einstellungen für das globale Objekt PDFJS.

PDFJS.cMapUrl = '../web/cmaps/'; 

standardmäßig pdfjs wird versuchen, eine Datei mit dem Namen des gewünschten CMap und ohne Erweiterung zu laden, zum Beispiel „../web/cmaps/Hankaku“.

Wenn Sie aktivieren die Einstellung cMapPacked wie folgt aus:

PDFJS.cMapPacked = true; 

pdfjs wird stattdessen versuchen, eine komprimierte Version des CMap zu lesen mit der Erweiterung „.bcmap“ Datei, zum Beispiel“../web/cmaps /Hankaku.bcmap ".

Die Komprimierung selbst erfolgt mit dem Tool unter https://github.com/mozilla/pdf.js/tree/master/external/cmapscompress.


Fazit: Fügen Sie die Dateien und stellen Sie die PDFJS Optionen korrekt, wenn es eine Möglichkeit gibt, die Sie benötigen pdfs mit ostasiatischer Texte angezeigt werden, die von Legacy-pdf-Creation-Tools erstellt wurden. Fügen Sie die Dateien nicht ein, wenn Sie sicher sind, dass Sie solche Dateien nicht anzeigen müssen.