Probleemoplossing Aspose.Words FOSS for .NET
Deze pagina behandelt veelvoorkomende problemen die zich voordoen bij het bouwen en gebruiken van Aspose.Words FOSS voor .NET, en hoe je ze oplost.
Bouw- en installatieproblemen
dotnet add package Aspose.Words kan het pakket niet vinden
Dat commando verwijst naar het commerciële Aspose.Words pakket, niet de FOSS-editie — de FOSS-pakket-ID is Aspose.Words.FOSS:
dotnet add package Aspose.Words.FOSSVoer eventueel git clone uit om de bron te verkrijgen, vervolgens cd in de gekloonde map en voer dotnet build uit op de oplossing:
git clone https://github.com/aspose-words-foss/Aspose.Words-FOSS-for-.NET.git
cd Aspose.Words-FOSS-for-.NET
dotnet build Aspose.Words.sln -c ReleaseVoeg vervolgens een projectreferentie toe aan Aspose.Words.csproj vanuit uw eigen applicatie in plaats van een pakketreferentie.
De projectreferentie wordt niet gevonden na het klonen.
Bevestig dat de referentie naar Aspose.Words.csproj wijst binnen de gekloonde Aspose.Words-FOSS-for-.NET/Aspose.Words/ map, en dat de oplossing eerst succesvol is gebouwd (dotnet build Aspose.Words.sln -c Release). De bibliotheek richt zich op .NET Standard 2.0, dus elke SDK die .NET Framework 4.6.2+ of .NET 6/8/10 target, kan ernaar refereren.
Laadproblemen
UnsupportedFileFormatException bij het laden van een document
UnsupportedFileFormatException wordt gegooid tijdens het laden wanneer het bestandsformaat niet wordt herkend of niet wordt ondersteund door deze editie. De laadformaten van deze editie zijn DOCX, DOCM, DOTX, DOTM, Flat OPC, Markdown en platte tekst — het doorgeven van een niet-ondersteund pad zoals input.doc aan de Document constructor veroorzaakt deze uitzondering in plaats van een geladen document te retourneren:
using Aspose.Words;
try
{
Document doc = new Document("input.doc");
}
catch (UnsupportedFileFormatException ex)
{
Console.WriteLine("Format not supported by this edition: " + ex.Message);
}Het opvangen van UnsupportedFileFormatException rond de Document constructor stelt u in staat een duidelijke boodschap te rapporteren in plaats van de uitzondering als een ruwe stacktrace te laten propageren.
FileCorruptedException op een bestand dat er geldig uitziet
FileCorruptedException wordt gegooid tijdens het laden wanneer het bestand corrupt lijkt en niet kan worden geparseerd — bijvoorbeeld een .docx-bestand dat geen geldig ZIP-gebaseerd OOXML-pakket is, of een bestand dat tijdens de overdracht is afgekapt. Haal het bestand opnieuw op van de bron en controleer of het correct opent voordat je het laadt met Document.
IncorrectPasswordException bij het openen van een beveiligd document
Dit wordt gegooid wanneer een document is versleuteld met een wachtwoord en het wachtwoord dat aan de Document constructor’s LoadOptions overload is geleverd, ontbreekt of onjuist is. Verstrek het juiste wachtwoord via LoadOptions.Password vóór het laden.
Opslaan en exportproblemen
Document.Save() naar een PDF-, XPS- of afbeeldingsextensie mislukt
Deze editie bevat niet het pagina-layout- en renderingssub-systeem, dus Document.Save() kan niet exporteren naar PDF-, XPS- of afbeeldingformaten.
Opslaan als DOCX, DOCM, DOTX, DOTM, Flat OPC, Markdown of platte tekst — dat zijn de formaten die deze editie daadwerkelijk schrijft. De commerciële Aspose.Words voor .NET voegt PDF, XPS en afbeeldingsoutput toe.
Paginanummers en inhoudsopgave-vermeldingen tonen altijd 0
Aspose.Words FOSS voor .NET bevat een volledige veldevaluatie-engine, zodat inhoudsvelden zoals DATE en DOCPROPERTY correct worden bijgewerkt. Velden die afhankelijk zijn van paginalay-out — paginanummers, NUMPAGES, en TOC-items — evalueren naar een placeholder 0 in plaats van een berekende waarde, omdat deze editie niet de layout-engine bevat die normaal het document pagineert. Dit is verwacht gedrag in deze editie, geen bug.
Problemen met digitale handtekeningen
Een document ondertekenen heeft geen effect
DigitalSignatureUtil.Sign() en de verwante onderteken-API’s bestaan in het objectmodel voor structurele compatibiliteit met het commerciële product, maar het maken van een nieuwe handtekening is niet functioneel in deze FOSS-editie — ze aanroepen levert geen ondertekend resultaat op. Deze editie kan handtekeningen die al aan een document zijn gekoppeld inspecteren en verifiëren via Document.DigitalSignatures en DigitalSignatureUtil.LoadSignatures(), maar een ondertekeningsworkflow vereist de commerciële Aspose.Words voor .NET.
Lettertypeproblemen
Ingesloten lettertypen zijn groter dan verwacht
Wanneer EmbedTrueTypeFonts is ingeschakeld, worden lettertypen ingebed als volledige bestanden in plaats van te worden onderverdeeld tot alleen de glyphs die daadwerkelijk in het document worden gebruikt, waardoor opgeslagen bestanden die lettertypen inbedden groter zijn dan de equivalente output van het commerciële product. Er is geen oplossing in deze editie — onderverdeling van ingebedde lettertypen is niet inbegrepen.