Få substitution utan suffix

Välkommen till den här omfattande guiden om hur du hanterar teckensnittsersättning med Aspose.Words för .NET. Om du någonsin har kämpat med att teckensnitt inte visas korrekt i dina dokument, har du kommit till rätt plats. Denna handledning tar dig igenom en steg-för-steg-process för att effektivt hantera teckensnittsersättning utan suffix. Låt oss börja!

Förutsättningar

Innan du dyker in i handledningen, se till att du har följande:

  • Grundläggande kunskaper om C#: Att förstå C#-programmering gör det lättare att följa och implementera stegen.
  • Aspose.Words för .NET Library: Ladda ner och installera biblioteket frånnedladdningslänk.
  • Utvecklingsmiljö: Konfigurera en utvecklingsmiljö som Visual Studio för att skriva och köra din kod.
  • Exempeldokument: Ett exempeldokument (t.ex.Rendering.docx) att arbeta med under denna handledning.

Importera namnområden

Först måste vi importera de nödvändiga namnområdena för att komma åt klasserna och metoderna som tillhandahålls av Aspose.Words.

using Aspose.Words;
using Aspose.Words.Fonts;
using Aspose.Words.WarningInfo;
using System.Collections.Generic;

Steg 1: Definiera dokumentkatalogen

För att börja, ange katalogen där ditt dokument finns. Detta hjälper dig att hitta dokumentet du vill arbeta med.

// Sökväg till din dokumentkatalog
string dataDir = "YOUR DOCUMENT DIRECTORY";

Steg 2: Ställ in utbytesvarningshanteraren

Därefter måste vi ställa in en varningshanterare som kommer att meddela oss när en teckensnittsersättning inträffar under dokumentbehandlingen. Detta är avgörande för att fånga upp och hantera eventuella teckensnittsproblem.

DocumentSubstitutionWarnings substitutionWarningHandler = new DocumentSubstitutionWarnings();
Document doc = new Document(dataDir + "Rendering.docx");
doc.WarningCallback = substitutionWarningHandler;

Steg 3: Lägg till anpassade teckensnittskällor

I det här steget kommer vi att lägga till anpassade teckensnittskällor för att säkerställa att Aspose.Words kan hitta och använda rätt typsnitt. Detta är särskilt användbart om du har specifika teckensnitt lagrade i anpassade kataloger.

List<FontSourceBase> fontSources = new List<FontSourceBase>(FontSettings.DefaultInstance.GetFontsSources());

FolderFontSource folderFontSource = new FolderFontSource("C:\\MyFonts\\", true);
fontSources.Add(folderFontSource);

FontSourceBase[] updatedFontSources = fontSources.ToArray();
FontSettings.DefaultInstance.SetFontsSources(updatedFontSources);

I denna kod:

  • Vi hämtar de aktuella teckensnittskällorna och lägger till en nyFolderFontSource pekar på vår anpassade teckensnittskatalog (C:\\MyFonts\\).
  • Vi uppdaterar sedan teckensnittskällorna med denna nya lista.

Steg 4: Spara dokumentet

Slutligen sparar du dokumentet efter att du har tillämpat inställningarna för teckensnittsersättning. För den här handledningen sparar vi den som en PDF.

doc.Save(dataDir + "WorkingWithFonts.GetSubstitutionWithoutSuffixes.pdf");

Steg 5: Skapa varningshanterarens klass

För att hantera varningar effektivt, skapa en anpassad klass som implementerarIWarningCallback gränssnitt. Den här klassen kommer att fånga och logga alla varningar för teckensnittsersättning.

public class DocumentSubstitutionWarnings : IWarningCallback
{
    public void Warning(WarningInfo info)
    {
        if (info.WarningType == WarningType.FontSubstitution)
            FontWarnings.Warning(info);
    }

    public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}

I den här klassen:

  • DeWarning metoden fångar varningar relaterade till teckensnittsersättning.
  • DeFontWarnings insamling lagrar dessa varningar för vidare inspektion eller loggning.

Slutsats

Du har nu bemästrat processen att hantera teckensnittsersättning utan suffix med Aspose.Words för .NET. Denna kunskap säkerställer att dina dokument behåller sitt avsedda utseende, oavsett vilka teckensnitt som finns tillgängliga i systemet. Fortsätt att experimentera med olika inställningar och källor för att fullt ut utnyttja kraften i Aspose.Words.

Vanliga frågor

F1: Hur kan jag använda typsnitt från flera anpassade kataloger?

Du kan lägga till fleraFolderFontSource instanser tillfontSources lista och uppdatera teckensnittskällorna därefter.

F2: Var kan jag ladda ner en gratis testversion av Aspose.Words för .NET?

Du kan ladda ner en gratis testversion frånAspose gratis provsida.

F3: Kan jag hantera flera typer av varningar med hjälp avIWarningCallback?

Ja denIWarningCallback gränssnitt låter dig hantera olika typer av varningar, inte bara teckensnittsersättning.

F4: Var kan jag få support för Aspose.Words?

För support, besökAspose.Words supportforum.

F5: Är det möjligt att köpa en tillfällig licens?

Ja, du kan få en tillfällig licens frånsida för tillfällig licens.