Byt typsnitt på specifika Unicode tecken vid sparande till PDF
Vissa Unicode-tecken visas inte med det användarvalda typsnittet. Ett sådant Unicode-tecken är Icke-linjär bindestreck (U+2011) och dess Unicode-nummer är 8209. Detta tecken kan inte visas med Times New Roman, men det kan visas med andra typsnitt som Arial Unicode MS.
När ett sådant tecken förekommer inne i ett ord eller en mening som är skriven med ett specifikt typsnitt som Times New Roman, då ändrar Aspose.Cells typsnitt för hela ordet eller meningen till ett typsnitt som kan visa detta tecken, som Arial Unicode MS.
Detta är emellertid ett oönskat beteende för vissa användare och de vill endast att det specifika tecknets typsnitt ska ändras istället för att ändra typsnittet för hela ordet eller meningen.
För att hantera detta problem tillhandahåller Aspose.Cells egenskapen PdfSaveOptions.setFontSubstitutionCharGranularity() som ska sättas till sant så att endast typsnittet för det specifika tecknet som inte kan visas ändras och typsnittet för resten av ordet eller meningen förblir detsamma.
Exempel
Följande skärmdump jämför de två utdatan PDF-filerna som genererats av exempelkoden nedan. En genererades utan att sätta PdfSaveOptions.setFontSubstitutionCharGranularity()-egenskapen och den andra genererades efter att PdfSaveOptions.setFontSubstitutionCharGranularity()-egenskapen sattes till sant. Som du kan se i den första PDF-filen har typsnittet för hela meningen ändrats från Times New Roman till Arial Unicode MS på grund av Non-breaking Hyphen. Medan i den andra PDF-filen har endast typsnittet för Non-breaking Hyphen ändrats.