FontStream
Innehåll
[
Dölj
]FontSavingArgs.FontStream property
Tillåter att ange strömmen där teckensnittet ska sparas.
public Stream FontStream { get; set; }
Anmärkningar
Den här egenskapen låter dig spara teckensnitt i strömmar istället för filer under HTML-export.
Standardvärdet ärnull
. När denna fastighet ärnull
, kommer teckensnittet att sparas i en fil som anges iFontFileName
fast egendom.
Exempel
Visar hur man definierar anpassad logik för att exportera teckensnitt när man sparar till HTML.
public void SaveExportedFonts()
{
Document doc = new Document(MyDir + "Rendering.docx");
// Konfigurera ett SaveOptions-objekt för att exportera teckensnitt till separata filer.
// Ställ in en återuppringning som kommer att hantera teckensnittssparande på ett anpassat sätt.
HtmlSaveOptions options = new HtmlSaveOptions
{
ExportFontResources = true,
FontSavingCallback = new HandleFontSaving()
};
// Återuppringningen kommer att exportera .ttf-filer och spara dem tillsammans med utdatadokumentet.
doc.Save(ArtifactsDir + "HtmlSaveOptions.SaveExportedFonts.html", options);
foreach (string fontFilename in Array.FindAll(Directory.GetFiles(ArtifactsDir), s => s.EndsWith(".ttf")))
{
Console.WriteLine(fontFilename);
}
}
/// <summary>
/// Skriver ut information om exporterade teckensnitt och sparar dem i samma lokala systemmapp som deras utdata .html.
/// </summary>
public class HandleFontSaving : IFontSavingCallback
{
void IFontSavingCallback.FontSaving(FontSavingArgs args)
{
Console.Write($"Font:\t{args.FontFamilyName}");
if (args.Bold) Console.Write(", bold");
if (args.Italic) Console.Write(", italic");
Console.WriteLine($"\nSource:\t{args.OriginalFileName}, {args.OriginalFileSize} bytes\n");
// Vi kan också komma åt källdokumentet härifrån.
Assert.True(args.Document.OriginalFileName.EndsWith("Rendering.docx"));
Assert.True(args.IsExportNeeded);
Assert.True(args.IsSubsettingNeeded);
// Det finns två sätt att spara ett exporterat teckensnitt.
// 1 - Spara den på en lokal filsystemsplats:
args.FontFileName = args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last();
// 2 - Spara det i en stream:
args.FontStream =
new FileStream(ArtifactsDir + args.OriginalFileName.Split(Path.DirectorySeparatorChar).Last(), FileMode.Create);
Assert.False(args.KeepFontStreamOpen);
}
}
Se även
- class FontSavingArgs
- namnutrymme Aspose.Words.Saving
- hopsättning Aspose.Words