Ersätt saknade teckensnitt

I den här handledningen går vi igenom processen för att ersätta saknade teckensnitt i en PDF-fil med Aspose.PDF för .NET. När du öppnar en PDF-fil på en maskin där ett specifikt teckensnitt saknas, kan det uppstå problem med teckensnittsvisningen. I sådana fall är det möjligt att ersätta det saknade teckensnittet med ett annat teckensnitt som finns tillgängligt på maskinen. Genom att följa stegen nedan kommer du att kunna ersätta saknade teckensnitt i en PDF-fil.

Förutsättningar

Innan du börjar, se till att du uppfyller följande förutsättningar:

  • Grundläggande kunskaper i programmeringsspråket C#.
  • Aspose.PDF-bibliotek för .NET installerat på ditt system.
  • En utvecklingsmiljö som Visual Studio.

Steg 1: Hitta det saknade teckensnittet

Det första steget är att hitta det saknade teckensnittet i PDF-filen. Använd följande kod:

// Sökväg till dokumentkatalogen.
string dataDir = "YOUR DOCUMENTS DIRECTORY";

Aspose.Pdf.Text.Font originalFont = null;
try
{
     // Hitta det ursprungliga teckensnittet
     originalFont = FontRepository.FindFont("AgencyFB");
}
catch(Exception)
{
     // Teckensnittet saknas på målmaskinen
     // Lägg till enkel teckensnittsersättning
     FontRepository.Substitutions.Add(new SimpleFontSubstitution("AgencyFB", "Arial"));
}

Se till att byta ut"YOUR DOCUMENTS DIRECTORY" med den faktiska katalogen där din PDF-fil finns.

Steg 2: Ersätt saknat teckensnitt

Därefter ersätter vi det saknade teckensnittet med ett annat tillgängligt teckensnitt. Använd följande kod:

var fileNew = new FileInfo(dataDir + "newfile_out.pdf");
var pdf = new Document(dataDir + "input.pdf");

// Konvertera PDF-filen till PDF/A-format med felborttagning
pdf.Convert(dataDir + "log.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);

// Spara den resulterande PDF-filen
pdf.Save(fileNew.FullName);

Se till att byta ut"input.pdf" med den faktiska sökvägen till din ursprungliga PDF-fil och"newfile_out.pdf" med önskat namn för den resulterande PDF-filen.

Steg 3: Spara den resulterande PDF-filen

Slutligen sparar vi den resulterande PDF-filen med det ersatta teckensnittet. Använd följande kod:

// Spara den resulterande PDF-filen
pdf.Save(fileNew.FullName);

Säkerställer att du har angett rätt destinationssökväg för den resulterande PDF-filen.

Exempel på källkod för Ersätt saknade teckensnitt med Aspose.PDF för .NET

// Sökvägen till dokumentkatalogen.
string dataDir = "YOUR DOCUMENT DIRECTORY";

Aspose.Pdf.Text.Font originalFont = null;
try
{
	originalFont = FontRepository.FindFont("AgencyFB");
}
catch (Exception)
{
	// Teckensnitt saknas på måldator
	FontRepository.Substitutions.Add(new SimpleFontSubstitution("AgencyFB", "Arial"));
}
var fileNew = new FileInfo(dataDir + "newfile_out.pdf");
var pdf = new Document(dataDir + "input.pdf");
pdf.Convert( dataDir +  "log.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
pdf.Save(fileNew.FullName);

Slutsats

den här handledningen täckte vi steg-för-steg-processen för att ersätta saknade teckensnitt i en PDF-fil med Aspose.PDF för .NET. Genom att följa instruktionerna ovan kommer du att framgångsrikt kunna ersätta saknade teckensnitt i din PDF-fil.

FAQ’s

F: Vad är Aspose.PDF för .NET?

S: Aspose.PDF för .NET är ett kraftfullt bibliotek som gör det möjligt för utvecklare att arbeta med PDF-dokument i C#-applikationer. Den erbjuder olika funktioner, inklusive möjligheten att ersätta saknade teckensnitt i PDF-filer.

F: Varför skulle jag stöta på saknade teckensnitt i en PDF-fil?

S: Saknade teckensnitt i en PDF-fil kan uppstå när filen öppnas på en maskin som inte har de nödvändiga teckensnitten installerade. Detta kan leda till teckensnittsersättning, vilket påverkar dokumentets visuella utseende.

F: Hur kan jag hitta och ersätta saknade teckensnitt i en PDF-fil med Aspose.PDF för .NET?

S: För att hitta och ersätta saknade teckensnitt kan du användaFontRepository.FindFont metod för att kontrollera förekomsten av det önskade teckensnittet. Om teckensnittet saknas kan du lägga till ett teckensnittsersättning med hjälp avFontRepository.Substitutions fast egendom.

F: Kan jag anpassa teckensnittsersättningsprocessen?

S: Ja, du kan anpassa teckensnittsersättningsprocessen genom att ange ett annat teckensnitt för ersättningen. I den angivna koden använde vi Arial som ersättning för det saknade typsnittet “AgencyFB”, men du kan välja ett annat typsnitt enligt dina preferenser.

F: Hur kan jag säkerställa noggrannheten i teckensnittsrenderingen efter ersättning?

S: Aspose.PDF för .NET ger robusta teckensnittshanteringsmöjligheter, vilket säkerställer korrekt teckensnittsrendering efter ersättning. Du kan förhandsgranska den resulterande PDF-filen för att verifiera teckensnittsersättningen.