FAQ TBarCode .NET
Pourquoi vois-je une police différente dans les exports EPS et AI ?
Pourquoi vois-je une police différente dans les exports EPS et AI ?
TBarCode SDK n'intègre pas les polices dans EPS et AI. Il se contente de référencer la police en spécifiant son nom. Cela dépend donc du périphérique de sortie ou de la suite graphique quant à la disponibilité de la police et à son rendu.
Pour EPS, seuls les noms de police standard en PostScript ou les noms de police ne contenant aucun espace dans le nom de police référencé sont autorisés.
EPS : afin d'éviter des problèmes sur les imprimantes qui n'ont pas Arial installée, nous convertissons toujours les références à Arial en Helvetica, qui est visuellement similaire et constitue une police PS standard (disponible sur toutes les imprimantes). Si cela n'est pas souhaité, vous disposez d'une option qui contrôle si un remplacement de police est appliqué ou non. Il s'agit de l'option UseDeviceFonts.
Voici un exemple de code pour EAN13 SC2 – 100 % :
Export vers EPS avec des polices PostScript standard (Arial ⇒ Helvetica)
Barcode barcode = new Barcode();
barcode.BarcodeType = BarcodeType.Ean13;
barcode.BoundingRectangleF = new RectangleF(0, 0, 37.29F, 25.91F); // SC2 size
barcode.SizeMode = SizeMode.CustomModuleWidth;
barcode.ModuleWidth = 0.330F; // SC2 module width
barcode.Data = "123456789012";
barcode.Font = new Font("Arial", 9);
barcode.UseDeviceFonts = true;
barcode.Draw("c:\\temp\\TestFile.eps", ImageType.Eps);
barcode.Draw("c:\\temp\\TestFile.ai", ImageType.Ai);
Si vous ouvrez le fichier EPS exporté avec un éditeur de texte, vous voyez Helvetica au lieu d'Arial :
/Helvetica findfont
9.0000 scalefont setfont
Voici à quoi cela ressemble si vous ouvrez le fichier EPS avec une visionneuse PostScript (comme GSView) :
Si vous ouvrez le fichier AI exporté avec un éditeur de texte, vous voyez :
%%IncludeResource: font ArialMT
%AI3_BeginEncoding: _ArialMT ArialMT
[/_ArialMT/ArialMT 0 0 1 TZ
Export vers EPS en conservant la police ajustée (Arial ⇒ Arial)
L'imprimante ou le logiciel graphique doit prendre en charge « Arial » ! Les noms de police ne doivent contenir aucun espace !
Barcode barcode = new Barcode();
barcode.BarcodeType = BarcodeType.Ean13;
barcode.BoundingRectangleF = new RectangleF(0, 0, 37.29F, 25.91F);
barcode.SizeMode = SizeMode.CustomModuleWidth;
barcode.ModuleWidth = 0.330F;
barcode.Data = "123456789012";
barcode.Font = new Font("Arial", 9);
barcode.UseDeviceFonts = false;
barcode.Draw("c:\\temp\\TestFile.eps", ImageType.Eps);
barcode.Draw("c:\\temp\\TestFile.ai", ImageType.Ai);
Si vous ouvrez le fichier EPS exporté avec un éditeur de texte, vous voyez :
/Arial findfont
9.0000 scalefont setfont
Si vous ouvrez le fichier AI exporté avec un éditeur de texte, vous voyez :
%%IncludeResource: font Arial
%AI3_BeginEncoding: _Arial Arial
[/_Arial/Arial 0 0 1 TZ
Résumé
Pour utiliser la police ajustée lors de l'export, vous pouvez définir UseDeviceFonts = false. Cela dépend aussi de ce que vous voulez faire avec le fichier EPS. Si vous voulez envoyer le fichier « tel quel » à une imprimante ou un système d'impression, il est peut-être préférable d'utiliser Helvetica avec UseDeviceFonts = true. Nous recommandons d'essayer d'imprimer d'abord avant de vous décider sur les DeviceFonts.
Export PDF sans HRT
Pour l'export PDF, aucun rendu de police n'est inclus dans TBarCode SDK – c'est pourquoi vous n'obtenez aucune sortie de police ou de texte si vous choisissez le format d'export PDF.
Si vous avez besoin d'un export PDF avec intégration de police, vous pouvez utiliser notre SDK d'impression d'étiquettes TFORMer. Le SDK TFORMer prend en charge les mêmes codes-barres que le SDK TBarCode. Ou bien, vous pouvez aussi utiliser Barcode Studio en mode ligne de commande – vous appelez BCStudio.exe depuis votre propre code programme et transmettez les données du code-barres et le nom de fichier à BCStudio (pour les paramètres de ligne de commande disponibles, voir le manuel utilisateur de BCStudio). Alternativement, si vous souhaitez utiliser des bibliothèques PDF de fournisseurs tiers, vous pouvez utiliser le mécanisme de dessin par rappel (Callback) de TBarCode SDK – vous obtenez ici les coordonnées des barres et du texte, et avec ces coordonnées vous implémentez le code-barres avec les fonctions de dessin et de rendu de police/texte de la bibliothèque PDF. Des exemples d'utilisation du dessin par rappel sont inclus dans le SDK.