Trikčių šalinimas
Dažnos problemos ir sprendimai dirbant su Aspose.PDF FOSS for .NET.
Dokumento įkėlimas
| Problem | Cause | Solution |
|---|
Document.Open išmeta klaidą galiojančiame PDF | Failas yra apsaugotas slaptažodžiu | Pateikite slaptažodį konstruktoriuje |
| Trūksta atminties dideliuose PDF | Visas failas įkeliamas į baitų masyvą | Apdorokite puslapius atskirai arba naudokite srautinį apdorojimą |
Pages[0] išmeta indekso klaidą | Puslapiai naudoja indeksavimą nuo 1 | Naudokite Pages[1] pirmam puslapiui |
Anotacijos
| Problema | Priežastis | Sprendimas |
|---|
| Anotacija nematoma po išsaugojimo | Stačiakampis turi nulinį plotą arba yra už puslapio ribų | Patikrinkite, ar koordinatės patenka į puslapį MediaBox |
LinkAnnotation.Uri grąžina null | Nuoroda naudoja GoTo arba JavaScript veiksmą | Išspręskite per PdfAction.Create ir patikrinkite ActionType |
Flatten() išmeta | Anotacijai trūksta /P (puslapio) nuorodos | Įsitikinkite, kad anotacija buvo pridėta per Page.Annotations |
Teksto išgavimas
| Problema | Priežastis | Sprendimas |
|---|
| Ištrauktas tekstas yra iškraipytas | Nestandartinis kodavimas arba CID šriftų susiejimas | Patikrinkite šriftų įterpimą; nuskenuoti PDF gali reikėti OCR |
| Nerasta teksto fragmentų | Puslapio turinys yra rastrinis vaizdas | Naudokite OCR prieš teksto ištraukimą |
| Regex negrąžina atitikmenų | PDF teksto išdėstymas įterpia tarpų | Naudokite laisvesnį šabloną arba normalizuokite tarpus |
Atvaizdavimas ir konvertavimas
| Problem | Cause | Solution |
|---|
| Atvaizdas yra išblukęs | Raiška per maža | Padidinkite DPI Resolution konstruktoriuje |
| HTML išvestyje trūksta vaizdų | Išoriniai vaizdų keliai nesukonfigūruoti | Naudokite HtmlSaveOptions su įterptais vaizdais |
| PDF/A konvertavimas pašalina anotacijas | Tikslinis profilis neleidžia anotacijų | Naudokite PDF/A-2 arba PDF/A-3 |
Formos laukai
| Problema | Priežastis | Sprendimas |
|---|
| Lauko reikšmė yra tuščia | Laukas neturi /V įrašo | Patikrinkite, ar field.Value nėra null |
FillField neturi jokio poveikio | Lauko vardo neatitikimas | Naudokite Form.FieldNames, kad išvardintumėte galimus vardus |
| ExportToJson sukuria tuščią išvestį | Valdiklio anotacija neteisingai konvertuota | Patikrinkite, ar anotacija yra WidgetAnnotation |
Bendri patarimai
- Visada supakuokite
Document į using, kad atlaisvintumėte failų rankenėles. - Naudokite
Document.Open(byte[]) atminties darbo srautams, kad išvengtumėte failų užrakinimo. - Patikrinkite
doc.Pages.Count prieš prieigą prie puslapių pagal indeksą. - Išsaugokite dokumentą vieną kartą po visų modifikacijų, kad pasiektumėte geriausią našumą.
Žr. taip pat