Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Aspose.Words vereist waar Type lettertypen voor verschillende taken, waaronder het renderen van documenten naar vaste paginaformaten, bijvoorbeeld PDF of XPS. Wanneer Aspose.Words maakt een document, het moet uitvoeren inbedding en subset inbedding van TrueType lettertypen in het resulterende document, dat is een normale praktijk tijdens een document generatie, inclusief populaire PDF of XPS formaat. Dit zorgt ervoor dat het document hetzelfde zal verschijnen voor elke kijker. Bovendien heeft de XPS specificatie vereist dat lettertypen altijd in het document worden ingebed.
Om ervoor te zorgen Aspose.Words nauwkeurig de karakters meet en met succes relevante lettertypen insluitt, moet aan de volgende voorwaarden worden voldaan:
Merk op dat het lettertype in het document een entiteit vertegenwoordigt, zoals familienaam, stijl, grootte, kleur, die verschilt van de TrueType Lettertype (fysiek lettertype) entiteit. Aspose.Words lost het lettertype in het document op tot een fysiek lettertype in een bepaald stadium van verwerking. Dit maakt het mogelijk bepaalde taken, meestal de taak van het berekenen van tekstgrootte tijdens de lay-out constructie en inbedding / subsetting naar vaste pagina formaten. Een aantal andere minder populaire taken, zoals het oplossen en vervangen van lettertype tijdens het laden van HTML of inbedding/subsetting naar sommige stroomformaten, zijn eveneens ingeschakeld.
Alle beschikbare font manipulatie mechanismen zijn opgenomen in de FontSettings Klasse. Deze klasse is verantwoordelijk voor het ophalen van lettertypen binnen gedefinieerde lettertypebronnen en voor het Font Substitutieproces, zoals hieronder beschreven.
Lettertypen worden in verschillende stappen ontleed:
Wanneer Aspose.Words Ontmoett een lettertype in het document voor de eerste keer, het probeert om basislettertype informatie te verkrijgen, zoals het lettertype volledige naam, familienaam, versie, stijl, uit de lettertypebestanden in elke bron. Nadat alle lettertypen zijn opgehaald, Aspose.Words gebruikt deze gegevens om de vereiste lettertypegegevens te vinden of een geschikte vervanging voor het gewenste lettertype.
Aangezien de hierboven beschreven procedure tijdrovend is, kan deze negatieve gevolgen hebben voor de prestaties van de toepassing bij de eerste lancering. Elk geval van FontSettings heeft een eigen cache, die de verwerkingstijd van latere documenten kan verminderen. U kunt bijvoorbeeld een voorbeeld van de FontSettings klasse tussen verschillende documenten, waarmee u het laden van de documenten kunt versnellen. Het volgende voorbeeld toont dit aan:
In het geval van FontSettings niet expliciet gedefinieerd is; Aspose.Words gebruikt de standaard FontSettings voorbeeld. Deze instantie wordt ook automatisch gedeeld tussen documenten, en kan als volgt worden uitgepakt:
Java
FontSettings fontSettings = FontSettings.getDefaultInstance();
Als u er zeker van bent dat alle verwerkingsdocumenten dezelfde lettertypeinstellingen vereisen, dan is het raadzaam om de standaardinstellingen in te stellen en te gebruiken FontSettings voorbeeld. Stel dat u dezelfde lettertypebronnen moet gebruiken voor al uw documenten. In dit geval kunt u de standaard instantie als volgt wijzigen:
Een tekst in een document kan worden geformatteerd met verschillende lettertypen, zoals Arial, Times New Roman, Verdana en anderen. Wanneer Aspose.Words geeft een document weer, het probeert de lettertypen te selecteren die in het document zijn opgegeven.
Er zijn echter situaties waarin het exacte lettertype niet gevonden kan worden en Aspose.Words moet het vervangen door een soortgelijk lettertype. Aspose.Words selecteert het lettertype volgens het volgende proces:
FontConfig nut. DitWindows functie moet worden gebruikt met een FontConfig-compatibel besturingssysteem. Bijna elke Unix-gebaseerde besturingssysteem heeft al een FontConfig bibliotheek die is ontworpen om systeembrede lettertype configuratie, aanpassing en toegang tot toepassingen te bieden. Anders kan deze bibliotheek eenvoudig worden geïnstalleerd door de gebruiker.FontConfig hulpprogramma is uitgeschakeld. U kunt het als volgt inschakelen: fontSettings.getSubstitutionSettings().getFontConfigSubstitution()().setEnabled(true);
<TableSubstitutionSettings xmlns="Aspose.Words">
<SubstitutesTable>
<Item OriginalFont="Arabic Transparent" SubstituteFonts="Arial" />
…
</SubstitutesTable>
</TableSubstitutionSettings>
fontSettings.getSubstitutionSettings().getTableSubstitution().load("Table.xml");
fontSettings.getSubstitutionSettings().getTableSubstitution().save("MyTable.xml");
fontSettings.getSubstitutionSettings().getTableSubstitution().setEnabled(false);
FontInfoCollection fontInfos = doc.getFontInfos();
fontSettings.getSubstitutionSettings().getFontInfoSubstitution().setEnabled(false);
FontInfo Ook vervanging is mislukt. Deze regel is standaard ook ingeschakeld. Volgens deze regel, Aspose.Words zal proberen het standaardlettertype te gebruiken dat in de DefaultFontName eigendom. Als de gebruiker zijn eigen standaardlettertype niet heeft gekozen, wordt “Times New Roman” gebruikt als standaardlettertype. Deze regel kan uitgeschakeld worden zoals hieronder getoond: fontSettings.getSubstitutionSettings().getDefaultFontSubstitution().setEnabled(false);
fontSettings.getSubstitutionSettings().getDefaultFontSubstitution().getDefaultFontName();
fontSettings.getSubstitutionSettings().getDefaultFontSubstitution().setDefaultFontName("Arial");
Soms kan het onduidelijk zijn waarom de documentindeling is veranderd, of waarom sommige lettertypen er niet uitzien zoals verwacht. In dergelijke gevallen worden door de IWarningCallback interface komen te hulp. Zij hebben de FontSubstitution het waarschuwingstype en het tekstformaat van de standaardbeschrijving, “Font”
Er zijn twee verschillende mechanismen gebruikt in Aspose.Words Lettertypevervanging en fallback. Lettertypevervanging wordt gebruikt wanneer het in het document gespecificeerde lettertype niet gevonden kon worden onder de broncode zoals beschreven in de bovenstaande secties. Het Font-fallbackmechanisme wordt gebruikt wanneer het lettertype is opgelost, maar het bevat geen specifiek karakter. In dit geval, Aspose.Words probeert een van de fallback lettertypen voor het karakter te gebruiken.
Er is een BuildAutomatic methode die automatisch bouwt de terugval instellingen door het scannen van beschikbare lettertypen. Aangezien deze methode kan produceren een niet-optimale terugval instelling, kunt u het font terugval gedrag te controleren door gebruik te maken van de eigenschappen van de FontFallbackSettings Klasse. Deze klasse specificeert de instellingen van het font terugvalmechanisme. U kunt een voorbeeld van de FontFallbackSettings klasse:
Java
FontFallbackSettings settings = fontSettings.getFallbackSettings();
Net als Table substitutieregel gebruikt dit mechanisme XML-tabellen voor configuratie. Deze XML tabellen kunnen worden geladen en opgeslagen met de volgende methoden:
Java
fontSettings.getFallbackSettings().load("MyNewFallbackTable.xml");
fontSettings.getFallbackSettings().save("Current_FallbackTable.xml");
De Aspose.Words release bevat twee tabellen: MsOfficeFallbackSetting.xml en NotoFallbackSetting.xml.
De MsOfficeFallbackSetting tabel definieert een vervangende strategie voor een reeks karakters, die vergelijkbaar is met de strategie gebruikt door Microsoft Word. De strategie vereist dus de installatie van Microsoft Kantoorlettertypen. MsOfficeFallbackSetting kan worden geactiveerd met de volgende methode:
.Java
fontSettings.getFallbackSettings().loadMsOfficeFallbackSettings();
De NotoFallbackSetting tabel is speciaal gemaakt voor gebruik met Google Noto lettertypen (zie meer over Google Noto lettertypeinstellingen in de volgende sectie) en kunnen als volgt worden ingeschakeld:
Java
fontSettings.getFallbackSettings().loadNotoFallbackSettings();
Het volgende voorbeeld van code laat zien hoe je font fallback instellingen uit een XML-bestand kunt laden:
In het bovenstaande voorbeeld wordt het volgende XML bestand gebruikt:
<FontFallbackSettings xmlns="Aspose.Words">
<FallbackTable>
<!-- Fallback table consists of the rules. Each rule defines the fallback fonts which Aspose.Words should use for specified Unicode ranges and base fonts. Rules are checked one by one and the first applicable fallback font is used. If none of the rules are applicable then ".notdef" glyph (missing glyph) from the base font will be used. -->
<!-- This rule defines that "Vijaya" fallback font should be used for "U+0B80..U+0BFF Tamil" Unicode block. -->
<Rule Ranges="0B80-0BFF" FallbackFonts="Vijaya"/>
<!-- This rule defines that "Segoe UI Emoji" and "Segoe UI Symbol" fallback fonts should be used for "U+1F300..U+1F5FF Miscellaneous Symbols and Pictographs", "U+1F600..U+1F64F Emoticons" Unicode blocks. If "Segoe UI Emoji" font does not contains the glyph for the requested Unicode code point then "Segoe UI Symbol" will be checked. -->
<Rule Ranges="1F300-1F64F" FallbackFonts="Segoe UI Emoji, Segoe UI Symbol"/>
<!-- This rule defines that "Arial" fallback font should be used for "U+2000..U+206F General Punctuation", "U+2070..U+209F Superscripts and Subscripts" Unicode blocks and specific "U+20B9 INDIAN RUPEE SIGN" code point. -->
<Rule Ranges="2000-206F, 2070-209F, 20B9" FallbackFonts="Arial" />
<!-- These rules defines that for "U+3040..U+309F Hiragana" Unicode block "MS Gothic" fallback font should be used if base font is "Times New Roman" and "MS Mincho" fallback font for all other base fonts. -->
<Rule Ranges="3040-309F" FallbackFonts="MS Gothic" BaseFonts="Times New Roman"/>
<Rule Ranges="3040-309F" FallbackFonts="MS Mincho"/>
<!-- This rule defines that "Arial Unicode MS" fallback font should be used if applicable fallback font was not found by previous rules. -->
<Rule FallbackFonts="Arial Unicode MS"/>
</FallbackTable>
</FontFallbackSettings>Aspose.Words geeft vooraf gedefinieerde font fallback instellingen voor Google Noto lettertypen. Dit zijn gratis lettertypen gelicentieerd onder SIL Open License, die kunnen worden gedownload van Google Noto Lettertypen. De FontFallbackSettings klasse geeft a LoadNotoFallbackSettings methode. Het laadt vooraf gedefinieerde terugval instellingen, die gebruiken Google Noto lettertypen zoals weergegeven in het onderstaande codevoorbeeld:
Aspose.Words probeert TrueType-lettertypen automatisch op het bestandssysteem te vinden. Meestal kunt u vertrouwen op het standaardgedrag van Aspose.Words om de TrueType lettertypen, maar soms moet je je eigen mappen opgeven die TrueType lettertypen bevatten. De Waar mogelijk Locatie lettertypen onderwerp beschrijft hoe en waar Aspose.Words zoekt naar lettertypen, evenals hoe u uw eigen lettertypelocaties kunt opgeven.
Er zijn enkele verschillen in de verwerking van lettertype formaten in Aspose.Words en Microsoft Word zoals aangegeven in onderstaande tabel:
| Microsoft Word | Aspose.Words | |
|---|---|---|
| TrueType lettertypen en OpenType lettertypen met TrueType contouren | Ondersteund. | Ondersteund. |
| OpenType lettertypen met PostScript contouren | Voor de meeste scenario’s ondersteund. Inbedding naar vaste paginaformaten zoals PDF en XPS worden niet ondersteund. De tekst wordt vervangen door bitmap afbeeldingen. | Ondersteund voor de meeste scenario’s, inclusief inbedding naar fixed-page formaten. |
| OpenType lettertypevariaties | Alleen genoemde instanties worden ondersteund. Continue variaties worden niet ondersteund. | Ondersteund voor de enige standaard instantie. Genoemde instanties en continue variaties worden niet ondersteund. |
| Type1 lettertypen | Ondersteund op Windows versies vóór 2013 en op MacOS versies. Ondersteuning wordt afgebroken Windows versies vanaf 2013. | Niet ondersteund. |
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.