Delegate CustomFontSource

Delegate CustomFontSource

Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)

Función del proveedor de fuente personalizada

public delegate CustomFontData[] CustomFontSource(params object[] args)

Parámetros

args object[]

Los argumentos.

Retorna

CustomFontData[]

La lista de fuentes específicas para renderizar la imagen.

Ejemplos

Este ejemplo demuestra cómo el proveedor de fuente personalizada se utiliza para emplear la(s) fuente(s) específica(s) en la renderización de imágenes. A diferencia del método FontSettings.SetFontsFolders, que funciona en el ámbito de la imagen y permite proporcionar las fuentes en escenarios de múltiples usuarios.```csharp [C#]

                                                                                                                                                                                                                                                 public void CustomFontSourceTest(string inputPath, string outputPath, string fileName, string fontPath)
                                                                                                                                                                                                                                                 {
                                                                                                                                                                                                                                                     var loadOptions = new Aspose.Imaging.LoadOptions();
                                                                                                                                                                                                                                                     loadOptions.AddCustomFontSource(GetFontSource, fontPath);
                                                                                                                                                                                                                                                     using (var img = Image.Load(System.IO.Path.Combine(inputPath, fileName), loadOptions))
                                                                                                                                                                                                                                                     {
                                                                                                                                                                                                                                                         Aspose.Imaging.ImageOptions.VectorRasterizationOptions vectorRasterizationOptions =
                                                                                                                                                                                                                                                             (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)img.GetDefaultOptions(new object[] { Color.White, img.Width, img.Height });
                                                                                                                                                                                                                                                         vectorRasterizationOptions.TextRenderingHint = Aspose.Imaging.TextRenderingHint.SingleBitPerPixel;
                                                                                                                                                                                                                                                         vectorRasterizationOptions.SmoothingMode = Aspose.Imaging.SmoothingMode.None;

                                                                                                                                                                                                                                                         img.Save(System.IO.Path.Combine(outputPath, fileName + ".png"), new Aspose.Imaging.ImageOptions.PngOptions
                                                                                                                                                                                                                                                         {
                                                                                                                                                                                                                                                             VectorRasterizationOptions = vectorRasterizationOptions
                                                                                                                                                                                                                                                         });
                                                                                                                                                                                                                                                     }
                                                                                                                                                                                                                                                 }

                                                                                                                                                                                                                                                 // Ejemplo del proveedor de fuentes personalizadas. 
                                                                                                                                                                                                                                                 private Aspose.Imaging.CustomFontHandler.CustomFontData[] GetFontSource(params object[] args)
                                                                                                                                                                                                                                                 {
                                                                                                                                                                                                                                                     string fontsPath = string.Empty;
                                                                                                                                                                                                                                                     if (args.Length > 0)
                                                                                                                                                                                                                                                     {
                                                                                                                                                                                                                                                         fontsPath = args[0].ToString();
                                                                                                                                                                                                                                                     }

                                                                                                                                                                                                                                                     var customFontData = new System.Collections.Generic.List<aspose.imaging.customfonthandler.customfontdata>();
                                                                                                                                                                                                                                                     foreach (var font in System.IO.Directory.GetFiles(fontsPath))
                                                                                                                                                                                                                                                     {
                                                                                                                                                                                                                                                         customFontData.Add(new Aspose.Imaging.CustomFontHandler.CustomFontData(Path.GetFileNameWithoutExtension(font), System.IO.File.ReadAllBytes(font)));
                                                                                                                                                                                                                                                     }

                                                                                                                                                                                                                                                     return customFontData.ToArray();
                                                                                                                                                                                                                                                 }</aspose.imaging.customfonthandler.customfontdata>
 Español