Excel-bibliotheek voor RAD Studio

Lees, schrijf, geef vorm en exporteer Excel-werkmappen zonder Office-automatisering

HotXLS is een native Object Pascal-bibliotheek voor Delphi- en C++Builder-toepassingen. De bibliotheek verwerkt klassieke XLS-workflows en de huidige XLSX-facade rechtstreeks, met werkmap-API's, werkbladbewerking, uitgebreide opmaak, exporthelpers, demo's en offline documentatie in het pakket

Workbook snapshotXLS + XLSX
Values
Styles
Export
Numbers
Borders
CSV
Dates
Theme colors
HTML
Formulas
Validation
RTF

Huidige momentopname van mogelijkheden

De huidige HotXLS-lijn combineert de oorspronkelijke XLS-facade met een aparte XLSX-engine, dus bestaande code kan gewoon de klassieke API blijven gebruiken terwijl nieuwe projecten rechtstreeks OOXML-functies kunnen benutten

Native workbook I/O

Maak, open, wijzig en sla Excel-werkmappen rechtstreeks vanuit Delphi- of C++Builder-code op. Noch een Microsoft Excel-installatie, COM-automatisering noch een extern spreadsheetproces is vereist

Sla macrovrije XLTX-sjablonen op met SaveAs(FileName, xlsxOpenXMLTemplate) of de bijpassende stream-overload, inclusief streaming-uitvoer; het standaardopslagformaat blijft ongewijzigd

Classic XLS facade

Een volwassen API voor Excel 97-2003-werkmappen (.xls), met het volledige klassieke objectmodel en high-fidelity BIFF8-roundtrip, plus het lezen van legacy Excel 2.0/3.0/4.0-bestanden (BIFF2-4) voor hun waarden

  • Geïndexeerde formeluitvoer-intervallen vermijden herhaalde scans van voorafgaande rijen bij het herbouwen van grote afhankelijkheidsgrafieken, inclusief verwijzingen naar array-uitvoer en afhankelijkheden die over werkbladen heen lopen
  • Het opslaan van classic XLS behoudt geladen of berekende formulecaches, inclusief de wortels van gedeelde en array-formules; ontbrekende caches houden de berekenings-fallback aan, terwijl een expliciete Recalculate bestaande waarden ververs
  • Scalaire verwijzingen naar gedefinieerde namen snijden bereiken van één rij of één kolom af op de formulecel, terwijl aggregaat- en lookup-bereikargumenten volledige bereiken houden; herberekening vermijdt valse bereikcycli, geeft prioriteit aan voltooide lookup-caches en behoudt drijvende-kommaprecisie in gemengde integer- en drijvende-komma-aritmetiek
  • XLSX-roundtrips behouden dynamische formules voor het afdrukgebied, gekwalificeerde bereikunies en de vereiste fonetische fontindex met waarde nul; gegenereerde en behouden onderdelen delen unieke content-type-declaraties, terwijl aangepaste eigenschappen en opaake wortelrelaties aparte relationship-ID's houden
  • Classic XLS behoudt de afwezigheid van geïmporteerde marge-records totdat de betreffende marge expliciet wordt gezet, zonder de standaardmarge-uitvoer voor nieuwe werkmappen te veranderen
  • AGGREGATE behandelt niet-gecachte fouten en geneste selectie onafhankelijk, met aparte semantiek voor verwijzingen en berekende arrays voor de opties 0 t/m 7
  • XLSX-roundtrips behouden ongewijzigde grafiek-XML en offsets van grafiekankers, fontnamen, -groottes en -schema's van voorwaardelijke opmaak, expliciete stijlvlaggen en RGB-kleuren, en een niet-gespecificeerde pagina-oriëntatie wanneer alleen marges zijn gezet
  • Volledig objectmodel: werkmap, werkblad, bereik, formule, opmaak, afbeelding, hyperlink, gedefinieerde naam, beveiliging, pagina-instelling en rapportexport
  • Klassieke kolommetadata legt outline-samenvouwmarkers bloot onafhankelijk van verborgen status en groeperingsniveau, en behoudt ze door rauwe XLS-roundtrips, kolomformaatkopieën en werkbladkopieën heen
  • Klassieke pagina-instelling legt HasSetupRecord en PrinterSettingsInitializedbloot, behoudt een onaangeroerd BIFF- Setup -record byte voor byte, laat een afwezig record afwezig en initialiseert printerafhankelijke velden alleen wanneer hun setters dat vragen
  • Conversie van XLS naar XLSX en van XLSX naar XLS draagt getypeerde pagina-instelling en opaake printer-driverbytes onafhankelijk over, laat standaardvelden leidend zijn boven dubbele privé-standaardwaarden en wijst niet-representeerbare BIFF8-instellingen af vóór de bestemming wordt geschreven
  • Classic-XLS- en XLSX-werkmappen bieden gelijke SaveExternalLinkValues - en UpdateLinks -beleidsvormen; gecachte waarden van externe werkmappen kunnen worden weggelaten zonder koppelingsdefinities of in-memory caches te verwijderen, ongeldige onaangeroerde brondeclaraties blijven verliesvrij, conversie tussen formaten houdt legale beleidswaarden aan, en updatevoorkeuren starten nooit bestands- of netwerktoegang
  • XLSX-werkmappen bieden exacte detectie, telling en atomische verwijdering van taakvensters van web-invoegtoepassingen; de verwijdering valideert begrensde interne relatieafsluitingen vóór de mutatie, behoudt elk onderdeel dat door een andere relatie wordt gedeeld, verwijdert eigendomsrelatieonderdelen en verouderde content-type-items, voorkomt heropstanding van gekopieerde gecomprimeerde bronnen en blijft idempotent, terwijl classic XLS en ODS de bewerking als niet-ondersteund melden zonder het pakket te scannen
  • Classic-XLS- en XLSX-werkbladen bieden gelijke vensterbewuste selectie- en scrollmethoden (genummerd vanaf 1) via TXLSPanePosition; TryGetWindowScroll en ScrollWindow mappen de gedeelde boven-, onder-, linker- en rechterassen op de native tweelaagse weergavestatus van elk formaat, behouden die door opslaan, openen en werkbladkopiëren heen en wijzen ontbrekende vensters of ongeldige coördinaten atomisch af; selectiesnapshots blijven geordend, overlappend en eigendom van de aanroeper, structurele bewerkingen over hele rijen of kolommen mappen elk venster opnieuw terwijl de identiteit van het actieve gebied behouden blijft met deterministische fallbacks voor overlevende en grenscellen, en grote gebiedsbewerkingen blijven geamortiseerd lineair; classic XLS aggregeert bovendien opeenvolgende selectierecords, behoudt onaangeroerde of ongeldige record-inhoud, meldt misvormde groepen via xlsDiagnosticSelectionRecordInvaliden verdeelt selecties groter dan 1369 gebieden in chunks
  • De engine-neutrale unit lxOutline bouwt outline-geometrie voor rijen of kolommen uit gesorteerde sparse spans, vindt summary-before- of summary-after-knooppunten in O(log n + k) -tijd en maakt gecomprimeerde idempotente plannen voor het samenvouwen van knooppunten, wijzigingen in het weergaveniveau, behoud van geneste onderliggende knooppunten en recursieve updates van kindstatus, zonder ongebruikte werkbladcoördinaten te scannen; beide werkblad-engines leggen dezelfde knooppunt-query- en besturingsmethoden bloot, terwijl OpenDocument-groepen hun native weergavestatus behouden en naar XLSX-summary-node-markers worden geconverteerd
  • Classic-XLS- en XLSX-werkmappen bieden hetzelfde neveneffectvrije ResolveIndexedColor -contract voor openbare kleurindexen, BIFF- icv -waarden en OOXML-geïndexeerde kleuren; palet-, automatische, systeem- en ongeldige tokens blijven onderscheiden, randindex nul houdt zijn niet-gespecificeerde betekenis, ARGB-uitvoer wordt genormaliseerd, en besturingssysteemkleuren worden uitsluitend opgelost via een expliciete callback van de aanroeper
  • Beide werkmap-engines bieden een neveneffectvrije NearestIndexedColor -query, ondersteund door een mutatiebewuste OKLab-cache; hij doorzoekt alleen de 56 fysieke BIFF-paletitems, geeft openbare en fysieke indexen terug met afstands- en exact-match-metadata, wijst partiële alpha af en lost gelijke afstanden op naar de laagste openbare index
  • Beide werkmap-engines bieden een deterministische, neveneffectvrije ScanIndexedColorUsage -inventaris voor alle 56 fysieke paletslots, inclusief genormaliseerde ARGB-waarden, definities en referentietellingen, consumentsoorten en preservatielocks over stijlen, sparse cellen, werkbladobjecten, grafieken, opmerkingen en voorwaardelijke opmaak heen, zonder ongebruikte cellen te materialiseren
  • Beide werkmap-engines bieden een mutatievrije BuildBiffPalettePlan -preview die geïndexeerde consumenten beschermt, directe en opgeloste themakleuren per weergavefrequentie aggregeert, bestaande exacte matches behoudt, kleuren deterministisch via OKLab mapt en bronidentiteit, slotwijzigingen, exacte dekking, gewogen fout en overloopkwantisatie meldt, zonder de werkmap of het opslaggedrag te veranderen
  • Beide werkmap-engines kunnen een actueel 56-slot-plan valideren en atomisch toepassen via ApplyBiffPalettePlan, waarbij verouderde of gemanipuleerde invoer vóór elke mutatie wordt afgewezen en de perceptuele matcher één keer wordt herbouwd; classic-werkmappen bieden bovendien een expliciete BiffPaletteSavePolicy waarvan de standaardinstelling de historische uitvoer behoudt, waarvan de optimalisatiemodus alleen voor BIFF8 geldt en waarvan mislukte of geannuleerde saves het oorspronkelijke palet herstellen
  • Beide werkmap-engines leggen een gevalideerde TXLSRenderCalibration -waarde bloot met instellingen voor breedte, hoogte, regelafstand voor meerdere regels, celmarge, schermschaling en meet-dpi; toewijzing is atomisch, vastleggen geeft een onafhankelijke bewerkingssnapshot terug, standaardwaarden zijn deterministisch en de runtime-instelling wordt nooit geserialiseerd en schaalt zelf nooit de werkbladgeometrie
  • Beide werkmap-engines maken bewerkingseigen IXLSRenderGeometry -services waarvan de onveranderlijke kalibratie, werkmapgeneratie, backend, volledige fontsignatuur, terugloopbreedte en tekst een begrensde lokale metrische cache-identiteit vormen; gedeelde GDI-meting en conversies voor pixels, punten, kolombreedtes, MDW en bruikbare celbreedte elimineren procesglobale DPI- en basisbreedtecaches voor AutoFit, terwijl schermschaling buiten de schaling van uitvoercoördinaten blijft
  • Classic-XLS- en XLSX-AutoFit leggen per bewerking één rendergeometrie-snapshot vast en passen gekalibreerde fontmeting, terugloop, regelafstand en celmarges toe; paginering legt per build dezelfde werkmaplokale geometrie vast, zodat standaardpaginaformaten stabiel blijven, latere kalibratiewijzigingen een expliciete herbouw vragen en paginaberekening nooit opgeslagen rijhoogten of kolombreedten wegschrijft
  • Paginering voor PDF, SVG, bitmap, afdrukvoorbeeld en werkmapviewer identificeert zijn eigen renderbackend en behoudt een onveranderlijke werkmapkalibratie voor de volledige bewerking; gedeelde paginatekstpassing en SVG-terugloop gebruiken de bewerkingslokale begrensde metrische cache met volledige fontstijlen en tekensetidentiteit in plaats van procesglobale meetobjecten
  • TDataToXLS datasetexports kunnen alleen gekozen velden opnemen of gevoelige velden uitsluiten, met koppen, datarijen, callbacks en kolombreedtes in lijn
  • Automatische XLSX-dynamische arrays vergroten zelf hun spill-cellen mee en zijn eigenaar van die cellen, behouden obstructies van de gebruiker met #SPILL!, ondersteunen A1# en unaire @ en herstellen hun eigendom na heropenen; vaste CSE-formules evalueren ruwe bereikrekenkunde element voor element
  • Multiple-array MAP en berekende-array FILTER behouden fouten per element, terwijl rich-value-metadata in XLSX getypeerde #SPILL!- en #CALC!-fouten bewaart
  • GetConversionReport inventariseert bekende verliezen van het doelformaat zonder te muteren, en opt-in SaveAsChecked kan die weigeren vóór het wegschrijven; expliciete xlsxOpenXMLMacroEnabledTemplate-uitvoer maakt XLTM-pakketten en behoudt bestaande VBA
  • Door de aanroeper geleverde TXLSQueryTableProvider-implementaties verversen query-table-data met een vast schema transactioneel, met het herschalen van tabel- en filterbereiken plus begrensde resultaten, voortgang, annulering en rollback
  • Automatische databasequery's binden begrensde positionele parameters uit expliciet getypeerde literals of opgeslagen werkbladcellen, inclusief Unicode, lege tekst, datums, nulls en beschikbare formulecaches; Jet en ACE behouden getypeerde datums zonder locale-afhankelijke timestampconversie, en refresh past de resultaten transactioneel toe
  • Automatische Text-query's verversen bestanden met scheidingstekens of vaste kolombreedte met expliciete decoding, getypeerde velden, overgeslagen kolommen, geconfigureerde kop- en startrijen en begrensde transactionele updates; posities bij vaste breedte gebruiken gedecodeerde UTF-16-code-eenheden, trimmen opvulling en behouden gedeclareerde kolommen bij korte records
  • Importvalidatie controleert strikte scalaire typen, numerieke en datumbereiken, samengestelde uniekheid en relaties tussen kolommen tegen opgeslagen waarden en formulecaches, met gestructureerde overtredingen op celadres en expliciete annotatie- of correctiewerkmap-operaties
  • CELL leest de werkelijke identiteit van het bestand waarnaar verwezen wordt, ondersteunde basisgetalnotaties, uitlijning, vergrendelingsstatus en kolombreedte in XLS en XLSX; INFO("recalc") leest de berekeningsmodus van de werkmap, terwijl niet-beschikbare Excel-omgevingsinformatie een expliciete fout teruggeeft
  • Herhaalde rapportbanden klonen complete threaded conversaties met opnieuw gemapte identiteiten, en gedeelde native paginering rendert samengevoegde celbereiken terwijl grafiekcaches zich verversen vanuit ondersteunde lokale bereiken na bewerkingen en herberekening
  • Ingebouwde formuleberekening met procesbrede en werkmaplokale registers voor gebruikersfuncties, override-semantiek voor lokale namen, lock-free handler-aanroepen, OnUserFunction - en OnUserFunctionEx -callbacks, plus courante Excel-functies voor tekst, datum, werkdag, techniek/basisconversie, bitwise, statistiek, aggregaat, wiskunde en dynamische arrays, waaronder broadcast-array-operators met fouten per cel, volledige multivariabele LINEST -/ LOGEST -matrices, gevormde TREND -/ GROWTH -voorspellingen, stabiele rij- of kolom- SORT, stabiele multi-key rij- of kolom- SORTBY met onafhankelijke richtingen en arraysleutels, array-bewuste CEILING.MATH -/ FLOOR.MATH -afronding met singleton-broadcasting en lokale fouten, stabiele array-bewuste evaluatie van COT / ACOT / COTH / ACOTH / CSC / CSCH / SEC / SECH met lokale fouten en overloopveilige takken voor grote invoer, overloopgecontroleerde herhalingsberekeningen in COMBINA / PERMUTATIONA , geheugenbegrensde identiteitsmatrices via MUNIT , Unicode-scalarconversie via UNICHAR , Thaise valutatekst via BAHTTEXT, referentiebehoudende ISFORMULA -inspectie zonder herberekening van het doel, hash-geïndexeerde rij- of kolom- UNIQUE, overlopende FREQUENCY -resultaten, logaritmisch binaire XMATCH / XLOOKUP, ISOMITTED -detectie van optionele argumenten, ARRAYTOTEXT -/ VALUETOTEXT -arrayconversie, gevalideerde XIRR -/ XNPV -berekeningen, investeringstiming en groeipercentages via PDURATION / RRI en afschrijving over fractieperiodes via VDB , plus volledige LET -bindingen en LAMBDA -closures die via gedefinieerde namen aanroepbaar zijn en lexicaal binnen LET
  • De engine-neutrale EvaluateFormulaAt evalueert A1- of R1C1-formuletekst in een expliciete werkbladcelcontext zonder het celmodel, de cache, de dirty-status, het actieve werkblad of de afhankelijkheidsgrafiek te muteren; getypeerde resultaten behouden formulefouten, arrays, lege waarden, volatiliteit, annulering, autorisatie van externe verwijzingen en stabiele faalcategorieën, terwijl IXLSFormulaEvaluationTemplate een onveranderlijk gecompileerd anker hergebruikt over doelcellen heen onder configureerbare budgetten voor formulielengte, stappen, recursie en array-geheugen
  • Classic XLS en XLSX bieden gelijke mutatievrije ValidateFormulaEntry -methoden, een FormulaEntryPolicyop werkmapniveau en geparsedere AuditFormulaSymbols-scans over cellen en gedefinieerde namen, met snellere scans van sparse classic XLS-werkmappen en één enkele symbooldoorgang die onafhankelijke functie- en naambevindingen, scope, deduplicatie en bevindingsvolgorde behoudt; exact lege invoer, formules die een lege string teruggeven, onbekende functies, onbekende namen, syntaxfouten, ongeldige doelen en beperkingen van het doelformaat blijven onderscheiden, normale formuletoewijzing past strikte afwijzing of behoud atomisch toe, behouden onbekende symbolen evalueren en propageren als #NAME?, wijzigingen aan UDF's of gedefinieerde namen verklaren verouderde afhankelijkheden ongeldig, classic BIFF slaat behouden onbekende aanroepen op als add-in-gebruikersfuncties, validatie herkent geregistreerde of callback-gebruikersfuncties, lexische en gedefinieerde-naam-lambda's, rapport-placeholders, geregistreerde externe koppelingen en geldige gestructureerde verwijzingen zonder handlers aan te roepen, en gevaarlijke externe of macro-stijl functiecallbacks blijven geblokkeerd vóór de evaluatie van argumenten, tenzij expliciet geautoriseerd
  • Verliesvrije formuletoken-inspectie en bewaakte mutatie voor beide werkmap-engines via TXLSFormulaTokenStream, ParseFormulaTokens, GetFormulaTokens, FormulaTokensToTexten SetFormulaTokens, met streams in eigendom van de aanroeper, read-only tokenprojecties, rauwe BIFF-payloads, onafhankelijke verwijzingsvlaggen, klonen, atomische vervanging van verwijzingen, contextherkomst en validatie vóór het terugschrijven
  • What-if-datatabellen met één variabele per rij, één variabele per kolom en twee variabelen, met geïsoleerde herberekening van afhankelijkheden, fouten bij verwijderde invoer, structurele bewerkingen, werkbladkopieën en BIFF8-roundtrip-ondersteuning
  • Celscanning, template find & replace, callback-bereikvulling, directe getypeerde arraywrites via ForEachCell, FindText, ReplaceText, WriteCellsen de numerieke, string- en variant-schrijvers voor rijen en kolommen, plus hele-werkblad- of enkelcel- ConvertFormulasToValues die formules bevriest tot hun berekende resultaten terwijl de gecachte waarde behouden blijft
  • Engine-neutrale formulecache-inspectie via IXLSFormulaCacheReader en de CreateFormulaCacheReader van elke werkmap-engine meldt aanwezigheid, geladen of berekende herkomst en het soort waarde (blank, getal, datum-tijd, string, Boolean of fout) zonder formules te evalueren, gebruikersfuncties aan te roepen, tokens te decompileren of de werkmapstatus te veranderen; lifetime-leases maken lezers veilig ongeldig na vernietiging van de werkmap, leden van gedeelde formules houden onafhankelijke caches en XLSX en ODS behouden getypeerde fouten en expliciet lege caches bij heropenen
  • Classic IXLSWorkbook.CreateReadOnlyView en XLSX IXLSXWorkbookOwner.CreateReadOnlyView maken IXLSReadOnlyWorkbookView -instanties met gedeeld model in constante tijd, met view-lokale actieve werkbladen, by-value snapshots van opgeslagen cellen, geen blootstelling van beschrijfbare objecten, standaard gecachte formuleresultaten en opt-in formuletekst of geïsoleerde formule-evaluatie; gelijktijdige views houden recursiestatus, scalaire en array-caches en gecompileerde XLSX-formules privé, externe XLSX-evaluatie leest alleen bestandslokale koppelingscaches, gepakte cellen blijven niet-gematerialiseerd, en elke view houdt een leeslease die modelwrites afwijst vóór de mutatie
  • Sinds 2.384.51 is TXLSReadOnlyCellSnapshot.SheetName een leesbare en beschrijfbare WideString-property op gedeelde UnicodeString-opslag, wat de naamtoewijzing per cel vermindert; gewone lees- en toewijzingssyntaxis is ongewijzigd, maar het ruwe veldadres en de eerdere recordlayout worden niet ondersteund en aanroepers moeten opnieuw compileren
  • TXLSWorkbookWorkspace accepteert herroepbare classic-XLS-, XLSX- of ODS-adapters via de CreateWorkspaceWorkbookvan elke engine, behoudt volledige pad- of IRI-identiteiten, herleidt externe werkbladen op naam vóór positie en evalueert externe formules via expliciete live-registraties, een optionele door de aanroeper bestuurde loader die één keer per identiteit laadt, getypeerde bestandscaches en #REF!; gelijktijdige laadverzoeken delen één resultaat, getypeerde diagnostiek legt fouten en resourcelimieten bloot, compatibiliteitsregistratiemethoden blijven op beide werkmapfacades beschikbaar, vernietigde doelen koppelen veilig af en herberekening opent nooit impliciet een bestand of netwerkresource
  • TXLSWorkbookWorkspace.BuildDependencyGraph haalt één formulegrafiek over werkmappen heen uit geregistreerde classic-XLS-, XLSX- en ODS-modellen, houdt volledige werkmap- en werkbladidentiteiten vast, behoudt symbolische lokale en externe gedefinieerde namen, herleidt lokale namen waar mogelijk naar hun concrete afhankelijkheden en slaat grote rechthoekige bereiken op als compacte intervallen; rij-intervalbomen versnellen het bouwen van randen en het opzoeken van afhankelijken, en het bouwen van de grafiek leest gepakte XLSX-opslag zonder die te materialiseren
  • TXLSWorkbookWorkspace.Recalculate behoudt de gedeelde afhankelijkheidsgrafiek en maakt die incrementeel dirty, plant acyclische formuleknooppunten in cross-werkmap topologische volgorde, wijst echte sterk samenhangende formulecycli af zonder onschuldige bidirectionele werkmapkoppelingen af te wijzen en deelt een pass-lokale externe-celcache met expliciete hit-, miss-, invalidatie- en geblokkeerd-knooppunt-diagnostiek; aanroepen binnen dezelfde workspace worden geserialiseerd, verwijdering tijdens een pass geeft een workspace-gewijzigd-status terug via veilige adapter-snapshots, vernietiging wacht op actieve berekening en mislukte knooppunten blijven dirty voor expliciete retry
  • CalculateAndVerify vergelijkt opgeslagen formuleresultaten met verse niet-vluchtige berekeningen en meldt diagnostiek voor werkblad, cel, formule, verwachte en werkelijke waarde zonder de cache te vervangen; RecalcAndVerifyEx voegt daar de diepe audit aan toe met een geïsoleerde afhankelijkheidsgrafiek-resultaatoverlay, getypeerde faalcategorieën met begrensde callstacks, voortgangsannulering en een opt-in atomische toepassing van de herberekende waarden
  • Toleranties van de diepe audit filteren mismatch-rapporten zonder verse tussenresultaten te onderdrukken: afhankelijke formules gebruiken de gecontroleerde waarden, en een expliciete toepassing ververst gewijzigde caches zelfs wanneer geen mismatch wordt gerapporteerd; zowel absolute als relatieve tolerantie geldt voor double-precision-resultaten
  • Diepe formuleaudits in classic XLS reserveren traversecapaciteit en kopiëren opeenvolgende plain-double cachesnapshots efficiënt terwijl andere Variant-typen en de geïsoleerde evaluatie-overlay behouden blijven
  • Classic-herberekening gebruikt een lui opgebouwde afhankelijkheidsgrafiek, propageert dirty invoer alleen naar transitieve afhankelijken, berekent vluchtige formules bij elke pass opnieuw, evalueert acyclische formules in afhankelijkheidsvolgorde en past iteratie over sterk samenhangende componenten toe voor kringverwijzingen; het uitschakelen van volledige precisie rondt formule- en what-if-datatable-caches af naar hun effectieve weergegeven numerieke precisie voordat afhankelijken ze consumeren
  • AutoFilter, lijst-gegevensvalidatie, Excel-tabellen met layouts zonder koprij en opmerkingen per tabel plus evaluatie van formules met gestructureerde verwijzingen (Table[Col], kolomspans, [#Data] / [#All] / [#Headers] / [#Totals]), extensies voor voorwaardelijke opmaak (databalk met negatieve-waarde-vulling en randkleuren, kleurschaal, iconenset) met bladunieke prioriteiten bij het opslaan en op draaitabellen ingestelde regels die naar de Excel 2010+-extensiebucket worden gerouteerd, en grafiekbladen
  • Tekstvakken, OfficeArt-drawings, op relaties gebaseerde getypeerde draaitabelimport, gefilterde en gegroepeerde materialisatie van meerdere waarden, berekende velden, items en leden, subtotalen, eindtotalen, stabiele sortering, klassieke en uitgebreide ShowDataAs-berekeningen, plus rich-text-opmerkingen
  • Transactionele refresh van de lokale Pivot-cache herleidt rechthoekige bronnen, bronnen via werkbladspecifieke gedefinieerde namen en tabelbronnen op hun huidige geometrie, sluit fysieke tabeltotalen uit, behoudt de bronidentiteit bij verplaatsen en hernoemen van werkbladen, houdt bestaande veld- en lididentiteiten in stand bij herordening, verwijdering en herintroductie van de bron, houdt gedeelde view-selecties stabiel, verwerkt getypeerde foutwaarden en weigert niet-ondersteunde schema's of nieuwe niet-gemapte discrete groupleden vóór het wijzigen van de cache
  • Veilige Pivot-werkbladmaterialisatie evalueert een geïsoleerde cache, weigert onveilige overlappen, behoudt celobjecten en opmaak en volgt exacte eigendomsrelaties van waarden bij herschaling, verplaatsing en heropenen van XLSX
  • Getypeerde niet-OLAP Pivot Slicer-selectie inspecteert en wijzigt geïmporteerde gedeelde-leden-selecties, snijdt filters van verbonden views bij elkaar, behoudt onafhankelijke beperkingen op andere velden en weigert dubbelzinnige of niet-ondersteunde koppelingen vóór mutatie
  • High-fidelity BIFF8-roundtrip die door Excel gemaakte records behoudt, plus exacte RGB- en themakleuren, aangepaste weergaven en metadata voor delen en revisies
  • Met wachtwoord beveiligde werkmappen via BIFF8-RC4-versleuteling, plus Agile-versleuteld XLSX opslaan en laden met een geverifieerde data-integriteits-HMAC over het versleutelde pakket, en klassieke schrijfreserveringen (SetModifyPassword) die de aanbevolen alleen-lezen-vlag, de wachtwoordhash en de reserverende gebruikersnaam dragen
  • AutoFit-overloads voor samengevoegde cellen kunnen de vereiste rij- of kolomgroei toewijzen aan het eerste lid, het laatste lid of die gelijkmatig over de samengevoegde span verdelen, met behoud van verborgen status en inachtneming van grenzen per lid
  • Werkbladkopie tussen werkmappen (TXLSWorksheets.AddCopy) die celwaarden, formules (opnieuw gecompileerd tegen de bladnamen van de bestemming), opmaak met exacte RGB- en themakleuren, samengevoegde cellen, opmerkingen, hyperlinks, rij- en kolomindeling, bevroren vensters, beveiliging, pagina-instelling, tabkleur, voorwaardelijke opmaak, gegevensvalidaties, AutoFilter-criteria, tabellen, ingesloten afbeeldingen, rich-text-runs (waarvan de lettertypes by value meemigreren) en grafiekbladen (met serieverwijzingen opnieuw gecompileerd naar de bestemming) naar een andere werkmap kloont; formules waarvan de bladen in de bestemming ontbreken, verwijzen daarna als externe koppeling naar de bronwerkmap zodra die een bestandsidentiteit heeft
  • Gedeelde-cache Pivot-views, lokale Pivot Slicer-creatie en expliciete verwijdering met selectiebewustzijn, gefixeerde grouped-cache refresh en previews van native compacte layout-metadata
  • Transactionele native Pivot-werkbladuitvoer ondersteunt gegroepeerde layouts en eigen rijsubtotalen; lokale SUM-berekende velden en cache-eigen items behouden contextsommen, oplosvolgorde, ondersteunde weergaveberekeningen en filtering, terwijl niet-ondersteunde staten vóór mutatie worden geweigerd
  • Pivot Timelines en Slicer-datastates bieden bewaakte lokale datumfiltering, gedeelde view-levenscyclus en expliciete native refresh van lege data-items
  • Automatische query-providers verversen ondersteunde Text-, ADO-, ODBC- en Web-query's expliciet, met begrensde resultaten en geregistreerde custom providers
  • Inspectie van classic grafieken decodeert ondersteunde native OfficeArt-vultabellen, legt markerdiameters in punten bloot en valideert opgeslagen tekst- en annotatie-omvangen vóór het toepassen van getypeerde status; rauwe grafiekopslag blijft behouden en het draagbare classic-grafiekuiterlijk wordt apart gevalideerd
  • Draagbare headless uitvoer vangt ondersteunde classic XLS- of XLSX-rechthoeken op in onveranderlijke snapshots en rendert PDF, SVG en PNG op Linux en macOS met expliciete fontgeometrie, rich text, gemodelleerde drawing-objecten, in-cell-afbeeldingen, Boolean-checkboxen, ondersteunde gecachte XLSX-grafieken en begrensde core BIFF8-gecachte grafieken met door de aanroeper opgegeven layout en effectieve legendagrootte
  • Tekst- en statistische berekende-array-argumenten behouden functiespecifieke coercie en fouten, koppelen covariantie op oorspronkelijke posities en respecteren rekenbudgetten
  • Gedefinieerde namen in aggregaatberekeningen behouden scalaire, array- en referentiecoercie, getypeerde fouten, afhankelijkheden en resourcelimieten

Modern XLSX facade

Een aparte OOXML-engine gebouwd rond TXLSXWorkbook for Excel 2007+ (.xlsx) workbooks

  • Shared strings, stijlen, drawings, werkbladfeatures, ZIP/XML-verpakking en roundtrip-metadata, inclusief veldbewuste SpreadsheetML-Xstring-afhandeling die control characters en letterlijke _xHHHH_ -tokens behoudt zonder de formulesyntax te herschrijven
  • De pagina-instelling van het werkblad behoudt byte-exacte binaire printerinstellingen via de pageSetup -relatie en het printerSettingsN.bin -onderdeel per blad, accepteert niet-standaard locaties van het brononderdeel, schrijft deterministische canonieke doelen, maakt deep-copies van de payload bij werkbladkopieën binnen dezelfde werkmap en over werkmappen heen en meldt ontbrekende, verkeerd getypeerde of bungelende printerrelaties zonder een niet-verwant binair onderdeel te koppelen
  • Getypeerde schrijvers voor rijen en kolommen (numeriek, string en variant) laten de celcapaciteit geometrisch groeien over herhaalde batches, voegen forward-rijbatches rechtstreeks toe aan vooraf gegrootte sparse-rijvectoren, clippen veilig op werkbladlimieten, houden stabiele handles aan bij overlap en vermijden callback-dispatch
  • OpenDocument (.ods) lezen en schrijven: importeer bestaande spreadsheets via Open / OpenODS, export via SaveAsODS of SaveAs(xlsxOpenDocumentSpreadsheet), stem de uitvoer af met TODSExportOptions en laat stijlen, rich text, afbeeldingen, grafieken, validaties, voorwaardelijke opmaak, pagina-instelling, afdrukbereiken, outlinengroepen, werkbladstructuur en werkmapmetadata round-trippen; exportopties behouden het normale herberekeningsbeleid, de voortgangsannulering, de diagnostiek en de schrijfbeveiliging, en bestandsuitvoer behoudt bij serialisatiefout of annulering de bestaande bestemming
  • ODS-regels voor celvergelijking en expressies behouden differentiële lettertype-opmaak, effen of transparante achtergronden en ondersteunde getalnotaties over volledige hele-rij-, hele-kolom- en brede doelen heen, met compacte herhaalde lege dragers; expliciet gewiste kenmerken overleven, onafhankelijke basisopmaak blijft op elke cel staan, en thema- of geïndexeerde kleuren worden geëxporteerd als concrete kleurwaarden
  • Meerformaat importeren: OpenDocument (.ods) en CSV / TSV met scheidingstekendetectie, BOM-detectie en optionele afleiding van waardetypen
  • Inhoudshandtekeningdetectie: DetectExcelContentFormat onderzoekt de eerste bytes van een bestand of stream om BIFF-compoundfiles, OOXML-pakketten, OpenDocument-pakketten en platte tekst met scheidingstekens uit elkaar te houden, ongeacht de bestandsextensie, en beide werkmap-engines wijzen containers die niet bij de extensie passen af met een duidelijke melding die de juiste loader noemt
  • Opgemaakte weergavetekst: de read-only FormattedText eigenschap (op IXLSRange en TXLSXCell) geeft de waarde van een cel weer via de getalnotatie — scheidingstekens, procenten, datum-/tijdmaskers, meerdelige maskers, boolese notaties — precies zoals Excel het in het raster toont
  • Bestandswijzigingen monitoren: TXLSFileMonitor houdt een werkmap op schijf in de gaten en vuurt OnFileChanged af zodra een ander proces er overheen opslaat, met een configureerbaar poll-interval en event-aflevering op de main-thread of de watcher-thread; handlers mogen de monitor stoppen of vernietigen, of het gevolgde bestand wisselen
  • Wachtwoordprompt: het OnPassword -event van de klassieke XLS-engine vraagt de toepassing om een wachtwoord wanneer Open een versleutelde werkmap tegenkomt met een ontbrekend of verkeerd wachtwoord en het openen opnieuw probeert
  • Format brush: TXLSXCellFormat beschrijft font, vulling, rand, uitlijning, getalnotatie en beveiliging één keer en zet die daarna op cellen, bereiken, rijen, kolommen of hele werkbladen — alleen aangeraakte aspecten worden toegepast, en pool-indices worden per toepassing één keer opgelost voor snel bulkformattering
  • Gestreamde rijen op één manier: TXLSRowCursor loopt .xls-, .xlsx-, .xlsm-, .ods-, CSV- of TSV-bronnen rij voor rij af (FindFirst / FindNext) en houdt alleen de huidige geprojecteerde rij of het ODS-herhaalsjabloon in het geheugen, duwt rijgrenzen en kolomselectie vóór de waardetoewijzing, behoudt gecachte formuleresultaten en opgeslagen opgemaakte lege cellen, onderscheidt formule-aanwezigheid van beschikbaarheid van formuletekst, onderdrukt formuletekst optioneel, slaat ODF-covered cells over, springt rechtstreeks tussen geselecteerde kolommen in herhaalde ODS-spans, decodeert UTF-8- of UTF-16-BOM's en meerregelige gequoteerde tekstrecords, snuffelt komma-, puntkomma-, tab- of pipe-scheidingstekens op en biedt constante-tijd ValueByCol -opzoeken; expliciete levenscyclusstatussen, idempotente annulering, geleende of overgedragen streameigendom, generatiegecontroleerde zero-copy-rijviews, PeakRowBufferedBytesen SheetPassesStarted maken langlopende scans waarneembaar en veilig, terwijl TXLSForwardReader dezelfde backends adapteert naar blad- en celcallbacks (genummerd vanaf 1) zonder overgeslagen werkbladonderdelen te openen
  • Voortgang en diagnostiek: klassieke XLS- en XLSX-werkmappen bieden work-callbacks plus begin/work/end-callbacks met annulering, terwijl IXLSWorkbookProgress en TXLSXWorkbook.Diagnostics tonen stabiele codes, ernst, bewerking, werkblad- of pakketcontext, native retourwaarden en exceptiedetails
  • Failure-safe opslaan: commitfouten bij klassiek werkblad, grafiek, stijlextensie, VBA, control-stream, storage en uitvoer propageren naar de aanroeper, terwijl XLS-, XLSX- en ODS-uitvoer naar schijf eerst wordt gestaged voordat de bestemming atomair wordt vervangen
  • Vervanging van de bestemming op Windows tolereert metadata- en lezerhandles die verwijdering toestaan op bestandssystemen met POSIX-rename, terwijl bestaande lezers de oorspronkelijke bytes behouden; verwijderrechten, niet-verwijderdeelbare locks en alleen-lezenbeveiliging worden gecontroleerd vóór één enkele commit, zonder save-retry, en oudere of niet-ondersteunde bestandssystemen behouden het legacy-commitpad
  • Actiegerichte opslagdiagnostiek: TXLSXWorkbook.SaveAs(FileName) en de overload met expliciet formaat behouden de native Windows-fout wanneer het vervangen van de bestemming faalt, met diagnostische code 1005 en de oorspronkelijke bestemming onaangeroerd
  • Compacte cel- en stijlopslag: XLSX-cellen leven in blokken van 256 rijen met stabiele openbare handles en rijgewijze, cachevriendelijke serialisatie; rijitems dragen geen redundante payload-tag, en wijzigingen in waarde, formule en rich text vermijden indexherclassificatie; geïmporteerde celstijlen worden opgelost via één onveranderlijke direct-index-cellXf-array; en automatische stijlpoolcompactie verwijdert niet-gerefereerde lettertypen, vullingen, randen, getalnotaties, uitlijningen en beveiligingen vóór elke save
  • Intervalstijl-overlays: opmaak voor rijen, kolommen en rechthoeken blijft compact zonder lege celobjecten te materialiseren, wordt lui opgelost bij celtoegang, overleeft structurele bewerkingen en maakt als compacte kolom-, rij- en stijlcelitems een roundtrip
  • Rijgestreamde normale save: StreamingWrite (de standaard) schrijft elke werkbladrij rechtstreeks in de deflate-stream van het pakket, zodat het piekgeheugen de grootste enkele rij volgt, terwijl shared strings en hulp-XML-onderdelen één item per keer streamen door één herbruikbare UTF-8-serializer
  • Metadata-only openen: TXLSXWorkbook.MetadataOnly parseert werkmap-eigenschappen, gedefinieerde namen, bladnamen en zichtbaarheidsstatussen, stijlen, thema, verbindingen en externe koppelingen, maar slaat werkbladcel-XML plus shared strings, opmerkingen- en persoonsgegevens, werkbladrelaties, drawings, grafieken, tabellen, querytabellen, draaitabellen en vanuit werkbladen bereikbare opaake payloads over, om snel met weinig geheugen eigenschappen en namen uit grote werkmappen te ontdekken
  • XLSX-slots van externe werkmappen volgen de declaratievolgorde van workbook.xml en behouden lege placeholders voor gebroken relaties, zodat latere [N] -formuleverwijzingen stabiel blijven over laden en opslaan heen
  • Selectief werkbladen laden: TXLSXWorkbook.SelectedSheets laat Open cel-XML alleen voor benoemde bladen parsen, terwijl andere bladen hun naam en zichtbaarheid houden maar geen cellen; roep LoadSheet(Index) aan om een overgeslagen blad op verzoek te materialiseren uit het oorspronkelijke archief
  • Incrementeel kopiëren van gecomprimeerde onderdelen: TXLSXWorkbook.PreserveRawParts opent per SaveAs-bewerking één privé gevalideerd bronarchief en kopieert ongewijzigde theme-, VBA-project-, verbinding-, external-link-, afbeeldings-, grafiek-, draaitabel-, pivot-cache- en via relaties bereikbare opaake items met hun oorspronkelijke gecomprimeerde payloads; geslaagde bestands-saves worden de volgende schone baseline, terwijl stream-ondersteunde werkmappen, gewijzigde bronbestanden, gemuteerde payloads, niet-ondersteunde compressiemethoden en compressed-size-mismatches gebruikmaken van transactionele serialisatie-fallback of afwijspaden
  • Behoud van werkmapextensies: XLSX openen en opslaan behouden vreemde namespace-declaraties op de werkmapwortel, markup-compatibiliteitsattributen, volledige <extLst> -payloads op werkmapniveau en hun onbekende relaties, terwijl getypeerde bladen, namen, views, berekeningseigenschappen en pivot-caches bewerkbaar blijven; relatieverwijzingen worden opnieuw gemapt wanneer gegenereerde ID's conflicteren
  • Slicers: Worksheet.Slicers.Add(Table, ColumnName) maakt tabel-slicers (Excel 2013+) end-to-end — inclusief slicer-cache, gereserveerde gedefinieerde naam, werkbladextensie en tekeninganker — met instellingen voor positie, bijschrift, kolomaantal, stijl en rijhoogte; werkmappen met door Excel gemaakte slicers (tabel of draaitabel) round-trippen ze onaangetast via openen en opslaan, waarbij ongewijzigde onderdelen en ankers byte-voor-byte worden gereplayd terwijl de omringende werkmap volledig bewerkbaar blijft
  • Meerdere werkmapvensters: TXLSXWorkbook.WorkbookViews biedt een geordende collectie met add-, insert-, delete-, move- en clear-operaties, getypeerde zichtbaarheids- en geometriestatus, bewerkbare unknown-attributen en extensies, en werkblad- workbookViewId remapping; de gevestigde single-window-eigenschappen blijven compatibele projecties van de eerste view
  • Externe gedefinieerde namen en refresh-fouten: TXLSXExternalLink parseert, bewaart en round-tript <definedNames> items uit gekoppelde werkmappen, terwijl elke TXLSXExternalSheetData tracks a RefreshError vlag voor de refresh-foutstatus, zonder dat er een live databron nodig is
  • Meerformaat klembordimport: XLSPasteFromClipboardRich geeft de voorkeur aan het XML Spreadsheet-klembordformaat (formules, stijlen, merges) boven platte Unicode-tekst, met eigen functies voor formaatdetectie, extractie en SpreadsheetML 2003-parsing
  • Native Biff8-klemborduitwisseling: CopyToClipboard publiceert op beide engines naast tekst en HTML ook de eigen "Biff8"-compound-documentpayload van Excel, en PasteFromClipboard wordt het eerst gelezen — waarden arriveren zonder locale-afhankelijke herparsing, relatieve formuleverwijzingen verankeren opnieuw op het plakdoel, en getalnotaties, lettertypen, vullingen, randen, uitlijning en samengevoegde cellen round-trippen zowel tussen HotXLS-werkmappen als vanuit Excel-kopieën
  • XLS- en XLSX-PasteFromClipboard vangen BIFF8 en fallbacktekst samen op onder één klembordlock, behouden het bestaande retry-beleid en gebruiken leesbare vastgelegde tekst zonder het klembord opnieuw te openen wanneer BIFF8 niet beschikbaar is of niet geparseerd kan worden; leesbare BIFF8 blijft bruikbaar als de tekstmetgezel niet opgehaald kan worden, en alleen niet-beschikbare tekst voegt geen cellen in
  • Mislukte publicatie van vereiste tekst- en BIFF8-klembordinhoud behoudt de oorspronkelijke Win32-GetLastError-diagnostiek over opruiming heen voor directe inspectie door de aanroeper
  • Rich-text markup: the TaggedText celeigenschap converteert tussen rich-tekstruns en lichtgewicht tags (<b>, <i>, <u>, <s>, <sub>, <sup>, <color=#RRGGBB>, <font=Name>, <size=N>) in beide richtingen
  • 64-bit-veilige klembordlezers met contention-retry, gecachte matching van voorwaardelijke-opmaak- en gegevensvalidatiedoelen voor absolute, omgekeerde, hele-rij-, hele-kolom- en door witruimte gescheiden gebieden, consistente regelopzoeking, -verwijdering, -evaluatie en validatiecontroles, en een PDF-hyperlinkindex die via binair zoeken wordt doorzocht
  • Berekeningsuitbreidbaarheid: registratie van gebruikersfuncties op naam, een audit-API voor onbekende functies, opens in herstelmodus die beschadigde onderdelen overslaan, native Biff8-klemborduitwisseling en gecachte matching van gegevensvalidatiebereiken
  • PDF-afbeeldingen: werkbladafbeeldingen worden ingebed als Flate-RGB-XObjects met JPEG-passthrough en hergebruik van PNG-streams (geen hercodering, alphakanaal behouden via soft masks), byte-identieke afbeeldingen worden één keer ingebed, keep-together-blokken en XlsxAutoPageBreaks stemmen paginering af, en ZipCompressionLevel en DeterministicOutput sturen de save-uitvoer aan
  • PDF-uitvoerpijplijn: pagina-contentstreams worden Flate-gecomprimeerd, opeenvolgende tekstoperaties delen gebatchete tekstblokken met gededupliceerde font- en kleurselectie, gelijke aangrenzende vullingen versmelten tot enkele rechthoeken en collineaire randsegmenten worden als samengevoegde runs getekend — kleinere bestanden en snellere generatie; OnProgress en afbreekbare OnProgressEx melden de statussen begin, pagina en einde, terwijl Cancel lange exports stopt zonder een partiële PDF aan de bestemmingsstream te committen
  • PDF-celtekstgetrouwheid: echte woordterugloop met verticale blokuitlijning en uitgevulde of verdeelde regels, gedraaide en verticaal gestapelde tekst, shrink-to-fit, Excel-achtige overloop in lege buurcellen met afknippen, rechtsuitlijning van getallen onder algemene uitlijning, inspringing, rich-text-runs met stijl, grootte, kleur, onderstreping, doorhaling, super- en subscript per run, diagonale en dubbele randen, en tekst die over samengevoegde cellen heen loopt — alles gepositioneerd via GDI-gekalibreerde Helvetica-advance-breedtes
  • PDF-afdrukgetrouwheid: opgemaakte kop- en voetteksten met Excel's codes voor fontgrootte, kleur, bold/italic/underline/strike en super/subscript, zwart-wit-afdrukmodus, afgedrukte rij- en kolomkoppen, horizontale en verticale afdrukcentrering, opmerkingindicatoren plus een opmerkingslijstpagina aan het einde via PrintCommentsAtEnd, in-document GoTo-links voor interne hyperlinks, een PageLayout -voorkeur voor de viewer met XMP-metadata, Excel-exacte MDW-kolombreedtes en TrueType-collection-inbedding met gesynthetiseerde bold/italic-sneden van het Unicode-font
  • PDF-grafieken: werkbladgrafieken tekenen als native vectoren — gegroepeerde, gestapelde en procentueel gestapelde kolommen/balken, lijnen met markers, vlakken, taarten en donuts met percentagelabels, spreiding en radar — met getitelde kaders, automatisch geschaalde assen en ticklabels, rasterlijnen, legendas, gegevenslabels, vullingen per reeks en Excel's standaard accentpalet; grafieken die voorbij de laatste gegevenscel zijn verankerd, vergroten het afgedrukte oppervlak
  • Interactieve PDF: werkbladhyperlinks worden klikbare linkannotaties en elk geëxporteerd blad krijgt een document-outline-bladwijzer
  • Uitbreidbaarheid op pakketniveau: getypeerde aangepaste documenteigenschappen, custom XML-data-onderdelen, SVG-afbeeldingscompanions, grafiekgegevenslabels per reeks uit cellen met geïndexeerde caches en point-visibility-overrides, door de gebruiker gedefinieerde tabelstijlen met kleuren per sectie en een gegevensvalidatie-audit-API die elke overtredende cel opsomt
  • Formaatgetrouwheids-upgrades: de getalnotaties voor verlopen tijd [h]:mm:ss en breuken # ??/?? renderen overal, [Red] -haakjes kleuren PDF-tekst om, gradiëntvullingen van cellen maken een roundtrip en renderen in HTML/PDF/viewer, bevroren vensters en vensterscrolling worden teruggelezen, DispBlanksAs/PlotVisibleOnly zijn grafiekeigenschappen, opmerkingsvakken krijgen hun grootte via WidthPt/HeightPt/AutoSizeFromText, en ValidateNumberFormat toetst aangepaste notatiestrings
  • Zoeken met Excel-semantiek: FindText / ReplaceText ondersteunen wildcards (*, ?, ~ als escape), matching van hele cellen, hoofdlettergevoeligheid, zoeken op formuletekst, achterwaarts scannen, scanvolgorde per kolom, windowed FindTextIn / ReplaceTextIn die de zoekactie tot een rechthoekig bereik beperken en een replace-callback per match, groeperen met Excel-semantiek via AddSubtotals (gelabelde SUBTOTAL-rijen, eindtotaal, outlineniveaus, pagina-einden en replace-modus), A1ToR1C1 en R1C1ToA1 die formules in beide richtingen tussen de A1- en R1C1-verwijzingsstijlen omzetten, plus WriteAutoValue voor Excel-achtige typesniffering van tekst (ISO, Amerikaanse m/d/yyyy- en Europese d.m.yyyy-datums met optionele AM/PM-tijden), bereikaggregatie via GetRangeStatistics , hoofdletterongevoelige SortRange die formules behoudt met Excel-verwijzingsemantiek ($-delen blijven staan, relatieve verwijzingen verankeren opnieuw), GetHtmlFromCell voor HTML-fragmenten van één cel en SetCellFromHtml voor HTML-fragmenten als rich runs
  • Werkbladachtergronden: SetBackgroundImage maakt tegelafbeeldingen in beide werkmap-engines; XLSX behoudt het media-eigendom van het pakket over werkbladkopieën heen, terwijl classic getypeerde BIFF8-achtergrondrecords leest en schrijft met continue payload-splitsing, exact behoud van onbekende formaten, kopie-isolatie en conversie tussen bekende formaten over engines heen; de werkmapviewer toont geldige achtergronden achter niet-gevulde cellen, terwijl print, PDF, SVG, bitmap, metafile en beide HTML-exporteurs achtergronden standaard uitgeschakeld houden en ExportSheetBackgroundImages blootleggen voor expliciete uitvoer met cross-page-fasecontinuïteit en hergebruik van resources per sessie
  • Diepte van de formaat-engine: voorwaardelijke secties van getalnotaties ([>=100]) selecteren op waarde, tekstsecties (@) fungeren als sjabloon voor strings, TaggedText accepteert <br>, <strong>/<em>en de attribuutvorm <font color=...> , ConvertFormulasToValues biedt op beide facades een only-external-modus, kolom-keep-together-blokken vullen rijblokken aan, klassieke Spinner/ScrollBar-formulierbesturingselementen schrijven naar XLS en rij-auto-fit verwerkt samengevoegde cellen
  • Clipboard exchange: PasteFromClipboard leest tab-gescheiden tekst in cellen met getal-/datum-/boolean-typepromotie en formulierherkenning, terwijl op bereikniveau CopyToClipboard zowel Unicode-tabellartekst als opgemaakte HTML publiceert met formules, samengevoegde cellen, koppelingen, weergaveopmaak en behoud van ingesloten scheidingstekens
  • Bewerkbare werkmapviewer: TXLSWorkbookViewer bindt rechtstreeks aan beide werkmap-engines, laadt XLS-, XLSX-, XLSM-, XLTX-, XLTM- of ODS-bestanden, rendert stijlen en voorwaardelijke opmaak zonder sparse XLSX-cellen te materialiseren en voegt in-place bewerking toe die rekening houdt met beveiligde cellen, invoer via de formulebalk, automatische herberekening, rechthoekige selectie, formuleverwijzing-events en O(1) begrensde undo en redo
  • Classic-XLS-draaitabelcaches gebruiken onafhankelijke opslagstreams met unieke identificatoren, bronverwijzingen naar werkbladen of benoemde bronnen, Unicode-bladnamen en versleuteld cachelezen/-schrijven; bestaande cache-extensies behouden hun oorspronkelijke bytes bij het opslaan
  • Herbruikbare pivot-layoutontwerper: TXLSPivotDesigner legt de zones available, row, column, filter en value bloot, met deterministisch herordenen van velden, typebewuste standaardaggregatie, expliciete aggregatiewijzigingen, layoutvalidatie en het toepassen van het resultaat op XLS- of XLSX-pivotmodellen
  • Klassieke formulierbesturingselementen: werkbladen en shape-verzamelingen kunnen knop-, radioknop-, selectievakje-, combo-box- en list-box-besturingselementen aanmaken, opsommen, bewerken, verwijderen en een roundtrip geven, met getypeerde labels, check-states, platte of 3D-rendering, macro-bindingen, gekoppelde cellen, bronbereiken, besturingselementsoorten en celankers
  • Inspectie van classic-XLS-grafieken via GetChartModel decodeert de grafiekfamilie, 3-D-status, grafiek- en astitels, legenda, assen met hun primaire of secundaire asgroep, reeksnamen, categorieën, waardeformules en de show-vlaggen met scheidingstekens voor gegevenslabels per reeks, de primaire of secundaire grafiekgroepbinding per reeks, benoemde of externe categorie- en waardeverwijzingen, lijn-, vul- en markerstijl per reeks waarbij themagekleurde vullingen worden gedragen door de GelFrame OfficeArt-themakleurextensie (themakleurindex plus tint), de volledige 3-D-scenaparameters uit de grafiekstream, en pivot-chart-koppelingen (naam van de bron-draaitabelview plus de hide-field-captions-vlag via de SXViewLink-/PivotChartBits-records), plus ingebedde grafiekobjecten die via AddChartObjectop gewone werkbladen zijn verankerd, samen met trendlijnen per reeks (regressiesoort, orde of periode, automatisch of vast snijpunt, weergave van vergelijking en R-kwadraat, forecast en backcast, weergavenaam) en foutbalken (richtingszijde, waardetype, einddoppen, magnitude)
  • Getypeerde kop- en voettekstafbeeldingen voor XLSX via TXLSXWorksheet.HeaderFooterImages, met dekking van alle linker-, middelste en rechter slots op oneven, even en eerste pagina's, inclusief afbeeldingsbytes, formaten, titels, puntafmetingen, puntmarges, automatische picture-veldcodes, werkbladkopieën en relatieveilige open/save-roundtrips naast opmerkingen
  • Bewerkbare XLSX-afbeeldingseffecten via TXLSXImage, inclusief bijsnijdranden in procenten, transparantie, helderheid, contrast, stretch- of tegelvulling, rotatie in graden en structureel behoud van niet-gerelateerde geïmporteerde DrawingML
  • Geavanceerde XLSX-grafiekbouw en roundtrips met geordende kolom-, balk-, lijn-, taart-, vlak-, spreidings-, bel-, radar-, koers-, surface- en 3D-plotgroepen, echte combinatiegrafieken met expliciete tekenvolgorde van plotgroepen, primaire en secundaire asparen, getypeerde datum- en reeksassen, configureerbare 3D-weergaven, Excel-galerijstijlen, tekststijlen voor titel, legenda en as, handmatige layouts voor plot, titel, legenda en astitel, sparse string- of numerieke reekscaches, sparse categoriecaches op meerdere niveaus met live tweedimensionale bereikresolutie en bewerkbaar behoud van onbekende ChartML-extensies en -opmaak
  • Selectieve opmaakpatches: TXLSXRange.ApplyFormatPatch kopieert alleen de gevraagde font-, fill-, rand-, getalnotatie-, uitlijnings- of beveiligingscomponenten, tegelt kleinere bronpatronen over grotere bestemmingen en laat celwaarden onaangetast
  • Master-detail gegevensexport: TDataToXLS.ReadDetailTables exporteert recursief actieve gekoppelde detailgegevenssets onder elk hoofdrecord, terwijl IndentDetailTables voegt één inspringkolom per relatieniveau toe en overgeërfde exportinstellingen houden de hiërarchie visueel consistent; write-ahead record- en waarde-events kunnen records filteren en veldwaarden transformeren zonder datasetcursors te verstoren
  • WordArt maken: TXLSXWorksheet.AddWordArt maakt celgeankerde DrawingML-tekst met een configureerbare preset-warp, tekstvulkleur en contourkleur, terwijl volgende open-/opslagcycli het volledige shape-anker behouden
  • Behoud van niet-ondersteunde OOXML-pakketdelen: aangepaste onderdelen die via onbekende package-root-, werkmap-, werkblad- of drawing-relaties bereikbaar zijn, behouden botsingsveilige relationship-ID's, content types, child relationships, compressiekeuze en exacte payload-bytes over openen/opslaan-roundtrips heen, met opt-out en retained-part-diagnostiek via TXLSXWorkbook
  • Excel-tabellen met stijlen, filterbereik en criteria, sorteertoestand, stabiele kolom-ID's, labels en functies voor de totalenrij, formules voor berekende kolommen en voor de totalenrij, structuurbewuste rij- en kolombewerkingen en round-trip-collectionhelpers
  • Getypeerde regels voor genegeerde fouten op werkbladen via TXLSXWorksheet.IgnoredErrors, met dekking van elke standaardfoutcategorie, celverwijzingen over meerdere gebieden, werkbladkopieën, rij- en kolombewerkingen en open/save-roundtrips
  • Getypeerde authoring van What-If-Scenario Manager via TXLSXWorksheet.Scenarios, inclusief actieve en getoonde scenario's, bereiken met veranderbare cellen, vergrendelde en verborgen statussen, gebruikersopmerkingen, invoerwaarden en getalnotaties, werkbladkopieën, structurele bewerkingen en reparatievrije open/save-roundtrips
  • Getypeerde what-if-datatabellen via TXLSXWorksheet.AddDataTable en DataTables, met dekking van rij-invoer-, kolom-invoer-, tweevariabelen-, verwijderde-invoer-, berekeningsvolgorde-, werkbladkopie-, structurele-bewerkings- en SpreadsheetML-roundtrip-semantiek
  • Getypeerde externe gegevensverbindingen via TXLSXWorkbook.Connections en werkblad-queryresultaten via TXLSXWorksheet.QueryTables, inclusief verversingsbeleid, credentials, database-, web- en tekstinstellingen, exacte getypeerde parameterwaarden, tabel- en veldbindingen, structurele bewerkingen, werkbladkopieën en extensieveilige OOXML-roundtrips
  • Compleet berekeningsbeleid voor de werkmap via CalcMode, RefMode, iteratie-instellingen, herberekeningsvlaggen, besturing van volledige precisie en instellingen voor gelijktijdige berekening, met schema-standaardwaarden en onafhankelijke persistence van niet-standaardwaarden, plus opt-in RecalcLookupCache - en RecalcAggregateCache -memo's die herhaalde XLOOKUP/XMATCH-, VLOOKUP/HLOOKUP/MATCH- en SUMIF/COUNTIF/AVERAGEIF -scans plus onvoorwaardelijke SUM/AVERAGE/MIN/MAX/COUNT over één kaal bereik het eerste resultaat laten hergebruiken tijdens een herberekeningspass, en alleen aanslaan wanneer de afhankelijkheidsgrafiek aantoonbaar referentiestabiel is, zodat resultaten nooit verschillen
  • Herberekeningsbeleid bij het opslaan via RecalcBeforeSave (manual, if-dirty, always) plus RecalcNeeded voor inspectie van de dirty-status en RecalcCell voor het ophalen van de waarde van één cel na een volledige herberekening
  • Rapportwaarde-placeholders met {{name;default}} -fallbacks, dbvalue/dbcount/tonumber/ref -expressies bovenop een geregistreerde DataContext en een geïsoleerde datasessie per run, kale {{=formula(...)}} -cellen die als live formules worden weggeschreven, en de structurele directives {{#imgsize}}, {{#comment}}, {{#html}}, {{#sheetvisible}}en {{#deletesheet}} structurele directives
  • Getypeerde luie gebruikerstabellen via exacte {{#usertable(alias, logicalName, providerKey, name=expression)}} -cellen, met syntaxcontroles tijdens compilatie, resolvervrije statische preflight, dynamische getypeerde parameters, afdwingen van geregistreerde providers, hoofdletterongevoelige conflictdiagnostiek, declaratielimieten en laden bij eerste gebruik via dbvalue of dbcount; TXLSReportGenerator.DataContext en TXLSReportTemplateChecker.DataContext dragen hetzelfde register mee naar generatie en validatie
  • Rapportdatavormgeving via luie Filter-, stabiele multi-key Sort- en Distinct -combinators; FromDataSet - en FromObjects -adapters binden open datasets en objectlijsten met published properties als rapporttabellen; RunBidirectional -banden geven elke hoofdrij zijn eigen door onderliggende data gedreven kolommen; PreprocessAndRun laat templates zichzelf tegen de data aanpassen vóór de uiteindelijke vulling
  • Plakopties voor het klembord (alleen waarden, rijen/kolommen invoegen) op beide werkmap-engines, plus OnSkippedRecord -diagnostiek op de direct reader, de row cursor en de forward reader die overgeslagen misvormde celverwijzingen en afgebroken BIFF-bladscans blootlegt
  • Classic-XLS-shared-revision-beveiliging maakt roundtrips via SharedRevisionProtected en SharedRevisionPasswordHash, en rapporten behandelen versleuteling end-to-end: versleutelde templates openen op wachtwoord en RunToEncryptedFile levert in één stap een versleuteld resultaat
  • Cross-werkmap CopyRangeTo/CloneRangeTo mapt celstijlen by value opnieuw over pools heen, en classic-XLS CreatedDate, LastSavedDate, RevisionNumber en EditTimeMinutes maken een roundtrip via de OLE-summary-stream
  • Grafiekrendering verbruikt de GapWidth, Overlap en gestapelde/procentueel gestapelde groepering van de balk-plotgroep, zodat gerenderde balk- en kolomgrafieken aansluiten op de layoutsemantiek van het model
  • Grafieken maken een roundtrip met grafiekruimte-opmaak (afgeronde hoeken, achtergrond-/rand-/plotgebiedkleuren) en de vijf grafiekbeveiligingsschakelaars, waarbij de renderer de kleuren verbruikt; Smooth op reeksniveau en marker-vul-/randkleuren maken een roundtrip en renderen als gebogen segmenten; assen dragen de kruisingsmodus en tick-mark-stijlen, en AutoTitleDeleted onderdrukt afgeleide titels
  • TXLSPDFWriter bouwt PDF's zonder enige spreadsheet: expliciet paginaformaat, multi-page-flow, rechthoeken/lijnen/ellipsen, gemeten tekst, transforms, clipping en besturing van de graphics-state
  • AutoFit biedt een tweefasen- MarkSheet/ApplyMarked -flow met inspecteerbare lopende metingen, fit-region-grenzen, IgnoreStrings, KeepHeightAutomatic, een DefaultRowHeightVisual -ondergrens en FitWorkbook
  • PDF-Unicode-lettertypen ondersteunen automatische, required-subset-, complete-program- en map-only-inbeddingsbeleiden, standalone OpenType CFF-programma's, gedeelde GPOS/kern-positionering voor meting en tekenen, een pre-resolutie- OnFontEmbed -callback en een recursief gecachte OnGetFontDirectories -family/style-resolver; PDF/A-uitvoer blijft ingebedde fontprogramma's vereisen
  • Collectie-hulpfuncties om werkbladen, tabellen, grafieken, afbeeldingen, samengevoegde bereiken en externe koppelingen op naam of positie op te zoeken, te verwijderen en te herordenen
  • Grafiek in één aanroep vanuit een gegevensbereik: AddChartFromRange en de AddColumnChart / AddBarChart / AddLineChart / AddPieChart / AddAreaChart shortcuts leiden reeksen en categorieën automatisch af uit een gegevensblok, zoals Excels grafiek-invoegen-uit-selectie
  • Rij- en kolominvoeging en -verwijdering die formules aanpast, tabelkolommen en hun filter- of soft-metadata bijwerkt, verwijderde gestructureerde verwijzingen naar tabelkolommen ongeldig maakt voor formulegebruikers, voorwaardelijke opmaak op celwaarde en expressie plus gegevensvalidaties opsplits wanneer bewerkte gebieden andere formule-ankers vereisen, geaggregeerde conditional-format-domeinen intact laat en gedefinieerde namen, hyperlinks, grafiekreeksen inclusief belgroottes plus afbeeldings-, grafiek-, tekstvak- en WordArt-ankers automatisch meeverplaatst
  • Formuleberekening die de classic-XLS-evaluator deelt, met procesbrede en werkmaplokale registers voor gebruikersfuncties, werkmaplokale override-semantiek, parallel-veilige lock-free handler-aanroepen, broadcast-array-operators en fouten per cel, volledige multivariabele LINEST -/ LOGEST -matrices, gevormde TREND -/ GROWTH -voorspellingen, dekking van functies voor tekst, datum, werkdag, techniek/basisconversie, bitwise, statistiek, aggregaat en wiskunde, referentiebehoudende ISFORMULA -inspectie zonder herberekening van het doel, logaritmisch binaire XMATCH / XLOOKUP, ISOMITTED -detectie van optionele argumenten, ARRAYTOTEXT -/ VALUETOTEXT -arrayconversie, gevalideerde XIRR -/ XNPV -berekeningen, investeringstiming en groeipercentages via PDURATION / RRI , afschrijving over fractieperiodes via VDB en OnUserFunction -callbacks voor aangepaste functies; AnalyzeFormulaIssues biedt een gestructureerde preflight voor ontbrekende functies, externe verwijzingen en exacte componenten van circulaire afhankelijkheden
  • Gestructureerde verwijzingen in de huidige-rij-vorm (Table[@Col]) evalueren tegen de eigen rij van de formulecel, zowel bij seriële als parallelle herberekening
  • Afhankelijkheidsanalyse vouwt scoped en geneste formule-gedefinieerde namen uit, inclusief verwijzingen over meerdere gebieden, en gebruikt cyclusguards alleen wanneer statische afhankelijkheidsresolutie onmogelijk is
  • Door Excel gemaakte gedeelde formules openen met elke follower uitgevouwen naar de juiste celrelatieve expressie, in de paden voor volledige werkmap, streaming direct reader en rijcursor, terwijl CSE-array-ankers en -followers veilige structurele bewerkingen op hele arrays, volledige bereikkopieën, werkbladduplicatie en werkblapkopies over werkmappen heen overleven
  • Dynamische matrices kun je opstellen met TXLSXRange.SetDynamicArrayFormula, behouden formulebereiken en XLDAPR-metadata via open- en save-cycli, delen één gededupliceerd metadatrecord tussen hoofdcellen, verwijzen dat record om bij kopieën tussen werkmappen en ruimen het op nadat de laatste hoofdcel is gewist
  • Berekende-array-compositie omvat getypeerde TRANSPOSE, berekende matrixvermenigvuldiging, determinanten en inversie, negatieve en vectorselectors voor CHOOSECOLS / CHOOSEROWS, berekende opzoekvectoren en array-verzoeken voor XLOOKUP / XMATCH / MATCH, en stack- en reshape-operaties met evaluatiestap- en arraygeheugenlimieten
  • Authoring van formulierbesturingselementen op XLSX-werkbladen (AddFormButton / AddFormCheckBox / AddFormRadioButton / AddFormComboBox / AddFormListBox) met VML-shapes, ctrlProps-onderdelen en letterlijke roundtrip van bestanden met besturingselementen
  • Live XLSX-evaluatie over werkmappen heen via de padbehoudende ExternalWorkspace en de compatibele RegisterExternalWorkbook -facade: volledige relatiedoelen en extensies blijven onderscheiden, dubbelzinnige aliassen falen expliciet, vernietiging van het doel herroept de live adapter veilig en bestandslokale getypeerde caches blijven de fallback, zonder impliciete bestands- of netwerktoegang
  • Werkmapvergelijking via TXLSXWorkbookCompare die verschillen in blad, cel, formule en samenvoeging meldt als een gestructureerde lijst of een rapport van één regel per verschil
  • Generatie van werkmap-naar-code via TXLSCodeGen (de dialecten Delphi en C++Builder) en importvalidatie met kolomregels via TXLSImportCheck , met annotatie in rode font en opmerkingen plus keep-only-violations-compactie
  • Onherkende XLS-werkbladrecords maken een letterlijke roundtrip — leveranciersspecifieke of nieuwere-spec-records worden bij het lezen vastgelegd en bij het opslaan gereplayd
  • Shapes met preset-geometrie via AddPresetShape — elk OOXML ST_ShapeType -token rijdt letterlijk met de drawing mee en maakt een roundtrip
  • Templateverwerking: ApplyTemplate vervangt {{key}} -placeholders op het hele blad en FillTemplateBand kloont sjabloonblokken per record met formulevertaling, afhankelijke voorwaardelijke opmaak, validaties, koppelingen, opmerkingen, afbeeldingen, grafieken, samenvoegkloon en #skip -voorwaarden op rijniveau; CloneRangeTo stelt hetzelfde afhankelijkheidsbewuste kopieerpad bloot met selecteerbare payloads; TXLSCompiledReportTemplate compileert placeholderlocaties en tekstfragmenten één keer voor herhaalde runs over cellen, rich text, opmerkingen, hyperlinks, drawingtekst, kop- en voetteksten, bladnamen, gedefinieerde namen en documenteigenschappen, zonder de werkmap opnieuw te scannen, en ondersteunt adresserbare preflight-diagnostiek, strikte validatie vóór de mutatie en diagnosiewerkbladen; TXLSCompiledReportRunner voegt voortgang op targetniveau, annulering, deterministische toegepaste aantallen, herbruikbare voltooiings- of faalstatus, gekoppelde werkmap- en werkbladlevenscyclus-events, herstelbare issue-snapshots en atomische stream-, bestands- of versleuteld-bestandsuitvoer toe; TXLSReportGenerator voegt template-lees-events toe, bronnen als werkmap, bestand, stream en versleuteld bestand plus in-place of atomisch-klonende modificatie; IXLSReportTable, IXLSReportCursor, luie providers en resolvers per run en relatie-indexen op samengestelde sleutels leveren herbruikbare virtuele of in-memory databronnen zonder niet-gerefereerde tabellen te dwingen te laden, terwijl TXLSReportTableFactory top-, projectie-, getelde, minimum-, aggregaat-, union-, split- en hash-joined-views samenstelt zonder volledige tussenliggende rijpayloads te kopiëren; uitvoerbare Delphi- en C++Builder-galerijen demonstreren dezelfde datacontext, dezelfde gecompileerde runner, het diagnosiewerkblad, LastResulten het RunToFile -pad
  • Benoemde structurele rapportbanden: TXLSCompiledReportBand herleidt een exacte rechthoekige gedefinieerde naam met werkmap- of werkbladscope en vouwt die omlaag, naar rechts of over beide assen uit vanuit begrensde rij- en kolomsnapshots in één pass, met behoud van waardetypes, gemengde-verwijzing-formules, samenvoegingen, regels, validaties, hyperlinks, opmerkingen, drawings en expliciete rij- of kolomlayout-metadata, terwijl niet-ondersteunde partiële structuren vóór de mutatie worden afgewezen
  • Herhaalde kopieën van bereiken en rapportbanden hergebruiken scope-bewuste suffixzoekopdrachten in gedefinieerde namen, met behoud van eerst-beschikbaar-naamgeving na verwijderen, hernoemen of scopewijzigingen
  • Uitvouwbare Excel-tabelrapportbanden via TXLSCompiledTableReportBand gebruiken één begrensde cursor-snapshot om één datatemplate-rij uit te vouwen, met behoud van koppen, totalen, tabel- en AutoFilter-bereiken, filter- en sorteerstatus, kolommetadata, berekende en totalenformules, stijlen, gestructureerde verwijzingen en afhankelijke werkbladobjecten; representeerbare lege resultaten verwijderen de datatemplate-rij, terwijl op query's gebaseerde tabellen en onveilige layouts worden afgewezen vóór structurele writes
  • Bereik- en Excel-tabelrapportbanden delen ErrorMode, StrictDataAccess, RuntimeLimitsen onveranderlijke LastResult -diagnostiek; WriteAndContinue slaat een expliciet herstelbare rijfout op als letterlijke tekst met zijn invoerrij en werkelijke uitvoeradres en gaat daarna door met de resterende targets en rijen, terwijl fatale structurele en resourcefouten de uitvouwing terugdraaien
  • Cel- en rijnscanning met callbacks voor rauwe waarden of weergavetekst, template find & replace en bulk-writing
  • Centraal beheer van scratch-bestanden (geregistreerde tijdelijke bestanden worden opgeruimd bij finalize), opt-in VerifyEncryptedSave als ontsleutelingscontrole na het schrijven, en constanten voor gridlimieten per formaat met een OnExportLimit -event op de dataset-exporteur
  • Helpers voor gegevensvalidatie met lijst-dropdowns uit een stringarray in één aanroep, gedeelde getypeerde IME-modussen over classic XLS en XLSX heen, tabelformules die onafhankelijke array-attributen behouden, extensies voor voorwaardelijke opmaak, configureerbare HTML-export met gecentraliseerde CSS-stijlklassen en AES-versleuteld opslaan en laden — ECMA-376 Standard Encryption (AES-128) met AES-NI-versnelling, plus het lezen van Excel's standaard Agile Encryption (SHA-512-key derivation, AES-128/192/256)
  • Classic- en XLSX-HTML-exporteurs gebruiken bewerkingseigen xlsrgbHtml -geometriesnapshots om tekenbreedtes via maximum-digit-width-metrics van het Normal-font naar vaste CSS-lengtes te converteren, hergebruiken één begrensde cache per multi-blad-bewerking, leggen de actieve snapshot bloot voor diagnostiek en behouden de opgeslagen werkbladafmetingen
  • Voorgeprepareerde evaluatie van XLSX-voorwaardelijke opmaak met prioriteits- en StopIfTrue -laagvorming, relatieve formules, gedeelde multi-gebied-statistieken, Top/Bottom- en gemiddelderegels, dubbele en unieke waarden, relatieve datumperiodes, themabewuste differentiële stijlen, kleurschalen, directionele databalken en alle ingebouwde iconenset-families
  • Tolerant XLSX openen: namespace-prefixen worden genormaliseerd tijdens het parsen, zodat werkbladen, grafieken, drawings en documenteigenschappen die aan niet-canonieke namespaces of ISO 29500 strict-namespaces hangen, laden als gewone bestanden, en werkbladen waarvan rijen of cellen positieattributen missen, elke cel afleiden na zijn voorganger in scanvolgorde
  • Strikte Open XML-uitvoer via StrictOOXML: het hele XLSX-pakket — werkbladen, shared strings, stijlen, thema, drawings, grafieken, opmerkingen, documenteigenschappen en behouden onderdelen — wordt opgeslagen in ISO/IEC 29500 strict-conformiteit met de purl.oclc.org -vocabulaires, en strict-relatietypes herleiden bij het openen net zo goed als transitionele
  • Het openen van volledige XLSX-werkmappen streamt werkblad-ZIP-items rechtstreeks door naar worker-lokale inflaters en XML-lezers, houdt geen opgeblazen staging-kopieën van werkblad-XML aan en beperkt het tijdelijke geheugen voor werkbladinvoer tot de actieve parse-workers
  • Streaming directe lezer (TXLSDirectReader) die .xlsx / .xlsm cel voor cel scant met events per cel en per blad en een bijna-constant geheugengebruik voor zeer grote werkmappen, waarbij de waarde, het soort, de formuletekst en de stijlindex van elke cel worden gemeld met optionele datumdetectie, vroegtijdige afbreking die doorwerkt in de ZIP-invoer en decompressie, row-range-pushdown en constante-tijd kolomprojectie vóór het decoderen van waarden; opt-in layout-events leggen werkbladafmetingen, standaardgroottes, kolomspans, rijmetadata, bevroren of gesplitste vensters en samengevoegde bereiken bloot vóór afhankelijke cellen; begrensd parallel parsen streamt worker-lokale werkbladinflaters door onafhankelijk gebudgetteerde producer-consumer-wachtrijen met behoud van callback-volgorde op de aanroepende thread, rich-string-behoud legt opgemaakte runs, fonetische bereiken en fonetische eigenschappen bloot, en de begrensde shared-string-opslag houdt kleine tabellen in het geheugen terwijl grotere tabellen en rich payloads migreren naar geïndexeerde delete-on-close-tijdelijke opslag
  • Streaming directe schrijver (TXLSDirectWriter) die .xlsx -werkmappen cel voor cel produceert en elk werkblad rechtstreeks in het pakket wegschrijft naarmate rijen binnenkomen, zodat zeer grote bestanden ontstaan met een bijna-constant geheugengebruik, met dekking van inline of gededupliceerde shared strings, rich strings met opgemaakte en fonetische runs, getallen, booleans, datums, formules, herbruikbare celstijlen op pakketniveau met gekloonde handles, gededupliceerde fonts/vullingen/randen/getalnotaties, fontnadruk, underline, outline en schaduw, 19 vulpatronen, 14 randstijlen over vijf randen, horizontale en verticale uitlijning, terugloop, verkleining, inspringing, rotatie, quote-prefixes, locked/hidden-beveiliging, ingebouwde en aangepaste getalnotaties, kolombreedtes, rijhoogten, verborgen rijen en kolommen, samengevoegde bereiken, werkblad- en tabel-AutoFilter-bereiken met waarde-, leeg-, datumgroep-, aangepaste, dynamische en top/bottom-filters plus sorteerstatussen, werkbladbeveiliging met fijnmazige permissies, legacy- of moderne wachtwoordmetadata en bewerkbare beveiligde bereiken, werkmapstructuur- en vensterbeveiliging, bevroren vensters, bladtabkleuren, rechts-naar-links-bladweergaven, weergaveschakelaars van bladviews, paginamarges, kop-/voetteksttekst, afdrukopties, pagina-instelling, fit-to-page-instellingen, handmatige pagina-einden, werkbladhyperlinks over meerdere bladen heen, werkmap- en bladlokale gedefinieerde namen, gegenereerde gedefinieerde bereiken, afdrukgebieden, titelrijen of -kolommen voor afdruk, gegevensvalidaties met prompts en foutwaarschuwingen, voorwaardelijke opmaak met acht celwaarde-operators, expressies, tekstmatching, top/bottom-rangschikking, gemiddelde, duplicaat/uniek, leeg/fout-predikaten, databalken, twee- en driekleurschalen, 17 iconenset-families, differentiële font/vulstijlen, prioriteiten en stop-if-true-besturing, Excel-tabelonderdelen met kolomnamen, header/totals-rijvlaggen, tabelopmerkingen, kolomlabels en functies van de totalenrij, formules voor berekende kolommen, totalenrijformules en weergaveopties voor tabelstijlen, plus current-sheet-zijkanalen voor klassieke opmerkingen, gestreamde afbeeldingsbronnen, verankerde DrawingML, getypeerde grafieken op basis van formules en door de aanroeper aangeleverde ChartML
  • Opt-in overflow-vervolg (AutoSplitRows) splitst exports over <name>_2 -bladen zodra een rij voorbij de werkbladlimiet komt, en FillTableCalculatedColumn duwt een formule van een tabelkolom in elke datarijl, zoals Excel dat bij authoring doet
  • In-place patchen van werkbladen via BeginPatch: de streaming writer herschrijft één werkblad van een bestaand pakket terwijl elk onaangeroerd onderdeel wordt gekopieerd met zijn gecomprimeerde bytes letterlijk — vervang een datablad of voeg er een nieuw toe zonder het template opnieuw te schrijven; mislukte initialisatie en afronding geven bronhandles vrij, de aanroeper blijft verantwoordelijk voor tijdelijke bronregistraties, en de writer kan na een mislukte initialisatie opnieuw worden gebruikt
  • Camera-objecten via AddCamera: live snapshot-afbeeldingen gebonden aan een celbereik, conform de gedocumenteerde camera-tool drawing-extensie; de binding maakt een roundtrip door opslaan en heropenen heen
  • PDF-bijlagen via AddAttachment — bestanden gaan mee in de export als /EmbeddedFiles-items met een naamboom, en IXLSPDFAttachmentSource kan elke payload lui leveren, één keer per save, via een begrensde spool; de eindmontage streamt objecten sequentieel naar de bestemming, zodat bijlagepayloads in vaste chunks worden gekopieerd met een indirect lengteobject en het piekgeheugen vlak blijft
  • Expliciete PDF/A-1a-, 1b-, 2a-, 2b-, 3a- en 3b-uitvoer via PDFAProfile, inclusief profielspecifieke identificatie, kleurbeheer, tagging, bijlagen en atomische validatieregels; UsePDFA blijft een compatibiliteitsschakelaar voor PDF/A-2b
  • PDF-export draait in een klassieke layout of een opt-in PDF 1.5-layout met gecomprimeerde objectstreams en een binaire cross-reference-stream (UseXRefStream) voor kleinere bestanden
  • PDF-export ondersteunt herbruikbare begin-, pagina- en eind-progress-callbacks met annulering en zonder partiële stream-commit, plus optionele Unicode-opmerkingsannotaties op celpositie die kunnen samengaan met comments-at-end-pagina's
  • PDF-gradiënten en transparantie gebruiken native axiale of radiale shadings met gestikte multi-stop-functies, alpha-masks per stop, celvulpatronen, afbeeldingsschaduwen, clipping op paginaniveau en documentlevel-resourcecaches; geselecteerde PDF/A-profielen passen hun graphics-restricties toe vóór de uitvoer-commit
  • Stijlbewuste PDF-font-fallbackketens via SetFontFallbackChain, AddFontFallbacken ClearFontFallbackChains kiezen ingebedde faces op bronfamilie, stijlniveau en glyph-dekking, cachen geladen faces en selecties, behouden aanvullende scalars en cross-run-grapheme-clusters, houden shared-glyph-Unicode-reeksen onderscheiden via CID-mappings en wijzen PDF/A-uitvoer atomisch af in plaats van een niet-ingebed font te gebruiken
  • TXLSPageImageExporter bouwt de paginering één keer en exporteert geselecteerde XLS- of XLSX-pagina's incrementeel als PNG of JPEG, met configureerbare dpi, schaal, kwaliteit, voortgang, annulering en bitmaplevensduur per pagina; ExportRange schrijft één strakke celrechthoek weg en before/after-paint-events leggen het werkelijke paginacanvas bloot via een read-only context met pixelgrenzen, paginaformaat, resolutie, schaal, paginanummers en het bronwerkblad, en vuren precies één keer per gerenderd frame, inclusief multipage-TIFF-frames
  • TXLSCellImageExporter meet, rendert en slaat elke classic- of XLSX-celrechthoek op als één compacte afbeelding zonder pagineringsartefacten, met configureerbare resolutie, schaal, formaat en JPEG-kwaliteit, transparante PNG of gekleurde achtergronden, onafhankelijke schakelaars voor objecten, rasterlijnen en celranden, pixel- en bytebudgetten die vóór allocatie worden gevalideerd, en opslaan naar bestand via atomische vervanging in dezelfde map die bij mislukking nooit een bestaand doel beschadigt
  • ODS-export vertaalt ondersteunde scalaire formules, gekwalificeerde A1-verwijzingen, custom Boolean-validatie, formulegewaardeerde grenzen en lijstbronnen naar OpenFormula; niet-ondersteunde celformuledialecten behouden de compatibiliteitsfallback, terwijl niet-ondersteunde validatiedefinities en verwijzingen samen worden weggelaten
  • Herhaalde ODS-rijhoogten en lege-celstijlen gebruiken compacte bereiken; ODS-uitvoer behoudt rijhoogten en herhaalde opgemaakte staarten, terwijl bewerkingen van één rij, wissen, werkbladkopiëren, rijverschuivingen, tiling en XLSX-export de effectieve hoogten behouden
  • Rijtoevoer in pull-modus (OnNeedRow + RunRows) stuurt de streaming writer vanuit een datapipeline één rij per keer aan
  • Rechts-naar-links-werkbladen spiegelen in PDF-export en flippen via dir="rtl" in HTML, waarmee de weergavevlag-roundtrip compleet is
  • De zero-display-modus van het werkblad verbergt de werkelijke numerieke nul, inclusief formuleresultaten, valutawaarden en de nul van de datumbasis, over viewers en visuele exports heen vóór getalnotatie of tekstmeting; de formuleweergavemodus gaat voor, visuals van voorwaardelijke opmaak en hyperlinks blijven actief, en opgeslagen waarden, openbare geformatteerde tekst, CSV en ODS-uitvoer houden hun bestaande contracten aan
  • Opt-in streamingmodus met gevolgde breedtes (TrackColumnWidths) zet het werkblad klaar in het geheugen, zodat het kant-en-klare bestand de used-range- <dimension> -hint draagt en kolombreedtes die zijn afgestemd op de langste gezien waarde per kolom, als benadering van autofit voor data die alleen bekend is tijdens het streamen
  • Referentieveilige structurele bewerkingen van XLSX-rijen en -kolommen die formules, gedefinieerde namen, regels, koppelingen, drawings, afdrukinstellingen, beveiligde bereiken, klassieke en threaded opmerkingsankers, sparklines, getypeerde pivot-bronnen en views en herkenbare behouden extensieverwijzingen bijwerken in één bewaakte transactie, met een geordende participant-API voor metadata in eigendom van de applicatie
  • Compacte random-access XML-boom (TSimpleDomReader) die in één pass vanuit dezelfde pull-lezer wordt opgebouwd voor het bevragen van werkmapmetadata, relaties, thema's en andere pakketonderdelen via hoofdlettergevoelig QName- of local-name-pad
  • Stap-voor-stap formule-evaluatie via TXLSFormulaTracer met exacte operand-stack-overgangen, plus interactieve diagnose via TXLSFormulaDebugger die geparseerde knooppunten, operandwaarden, evaluatievolgorde, cel- en bereikafhankelijkheden, luie vertakkingskeuzes, overgeslagen expressies en propageerde foutbronnen blootlegt
Versie 2.384.120

Volledige set aan werkmap-, rapportage- en weergavecapaciteiten

De huidige release breidt de ondersteunde werkmap-, rapportage- en weergave-API's uit met begrensde uitvoeringspaden en expliciete regels voor formaatveiligheid

Werkmapformaten en berekening

  • Bewerkbare XML Maps en schemabindingen voor één cel via TXLSXXmlMaps en TXLSXXmlCellBindings, inclusief relationship-roundtrips en validatie vóór het opslaan
  • Geordende multi-window-werkmapstatus via TXLSXWorkbookViews, inclusief actieve tabbladen, geometrie, zichtbaarheid, weergavevlaggen, extensies en veilige remapping van bladindexen
  • Selecties over meerdere bereiken en onafhankelijke actieve cellen per venster voor XLS en XLSX, met structurele remapping en atomieke afwijzing van ongeldige bereiken
  • Verliesvrije formuletokens die de aanroeper zelf beheert, via TXLSFormulaTokenStream, ParseFormulaTokens, GetFormulaTokens, FormulaTokensToTexten SetFormulaTokens
  • Formules bevriezen in classic XLS classificeert gecompileerde BIFF-verwijzingen zonder de formuletekst te decompileren, converteert in de modus OnlyExternal alleen bevestigde verwijzingen naar externe werkmappen, laat onzekere formules met rust en bevriest arraygroepen atomisch met letterlijke tekenreeksresultaten intact
  • Formules naar externe werkmappen in XLSX gebruiken één lexer die grammatica-bewust is voor numerieke slots, voor strikte conversie, diagnostiek, herberekening, kopiëren tussen werkmappen en gegenereerde saves; bestandsnaamcompatibiliteit wordt alleen genormaliseerd wanneer precies één geregistreerd target matcht
  • TXLSXExternalLink stelt bron-relatie-ID's, 1-gebaseerde slots en de linksoorten werkmap, DDE, OLE of onopgelost bloot, terwijl wijzigingen aan target en bladlijst gecompileerde externe bindingen ongeldig maken via een constante-tijd revisie-update
  • ConvertExternalDefinedNamesToRefErrors vervangt bevestigde definities uit externe werkmappen atomisch door native #REF! in classic XLS en XLSX, waarbij naamidentiteit, scope, zichtbaarheid, opmerkingen, macro- en ingebouwde metadata, onbekende XLSX-attributen, gewone celformules en external-link-onderdelen behouden blijven
  • Stabiel sorteren op rij of kolom met TXLSSortFormulaMode, horizontale sleutels, eigen comparers en de keuze tussen behoud van logische afhankelijkheden en fysiek verplaatsen van formules
  • Bewerkbare BIFF2-t/m-4-lettertypen, getalnotaties, XF-stijlen en formules die tijdens het laden in de huidige werkmap- en berekeningsmodellen worden omgezet
  • Eén TXLSForwardReader -callbackfacade voor XLS, XLSX, CSV en TSV met projectie op backend-niveau, rijgrenzen, formule-aanwezigheidsstatus, optionele onderdrukking van formuletekst, formaatdetectie en annulering
  • Getypeerde aangepaste weergaven voor vensters, selecties, filters, pagina-instelling en pagina-einden, terwijl onbekende BIFF-records hun oorspronkelijke payloads houden
  • Getypeerde OLAP-eigenschappen, webtabel-selectors, velden met vaste breedte en verbindingsparameters met behouden extensie-inhoud
  • AnalyzeFormulaIssues -diagnostiek voor ontbrekende functies, verwijzingen naar externe werkmappen en exacte componenten van circulaire afhankelijkheden
  • Thread-safe globale en werkmaplokale UDF-registers met lokale override, gemiddeld O(1)-opzoeken en handler-aanroepen buiten locks om
  • XLSBidiVisualOrder voor gemengde Arabische of Hebreeuwse tekst, Latijnse tekst, cijfers, diakritische tekens en gespiegelde leestekens, zonder de logische celtekst te veranderen
  • AutoFit-strategieën voor samengevoegde cellen die de groei toewijzen aan het eerste of het laatste lid of hem gelijkmatig over de samenvoeging verdelen, voor zowel XLS als XLSX
  • Getypeerde preservatie van Excel 4-macrobladen plus ScanMacroCommands -bevindingen uitsluitend ter inspectie, met werkbladadressen
  • Berekeningsondersteuning voor ISOMITTED, ARRAYTOTEXT, VALUETOTEXT, PDURATIONen RRI met Excel-compatibel opslag- en foutgedrag
  • Gegroepeerde werkbladsamenvattingen via TXLSXWorksheet.Subtotal, inclusief ingevoegde formules, een configureerbaar eindtotaal, overgeërfde zichtbare opmaak en de outline-hiërarchie
  • Effectieve stijlinspectie zonder materialisatie via GetCellVisibleFormat , plus validatie op kandidaatniveau en atomische commit via CheckDataValidation
  • Metadata-only-openen en openen van geselecteerde bladen in classic XLS gebruiken BOUNDSHEET -offsets, begrensde SST-spill-opslag en één forward-leescontract dat gedeeld wordt met XLSX, CSV en TSV
  • Dynamische arrays streamen rechtstreeks door in scalaire aggregaten, herhaalde lookups hergebruiken getypeerde incrementele bereikcaches en onveranderlijke formuletokens delen stateless objecten over compilaties heen
  • Native lokale Pivot-materialisatie ondersteunt compacte, tabulaire en outline-rapportrasters, herhaalde labels, standaard subtotalposities en meerdere measure-assen met gecachte cellen en wire-metadata, geverifieerd tegen Excel-openen en expliciete refresh
  • Native Pivot-weergaveberekeningen omvatten vergelijkingen met basisitems, running totals, rij- en kolompercentages, bovenliggende percentages, cumulatieve percentages en dense ranks met native gecachte uitvoer en refresh-metadata
  • REGEXTEST, REGEXEXTRACT en REGEXREPLACE gebruiken de gebundelde UTF-16-backend met gedeelde formulebudgetten; GROUPBY en PIVOTBY ondersteunen scoped callbacks, meerdere measures, filters, sortering, hiërarchische totalen en relatieve percentages
  • Wissen van bereiken en plakken van Unicodetekst gebruiken één begrensde undo- of redo-transactie met beschermingscontroles, sparse inhoudssnapshots en herstelde moderne celmetadata
  • Getypeerde lokale PNG/JPEG in-cell-afbeeldingen en sparse cel-, rij- en kolom-Checkbox-formaten behouden toegankelijkheidsmetadata, prioriteit, stijlen, inhoudseigendom en structurele bewerkingen door XLSX-roundtrips heen
  • Uitgebreide XLSB-lees- en schrijftaken behouden ondersteunde formules en caches, namen, samenvoegingen, hyperlinks, vensters, tabellen en filters met expliciete preflight van niet-ondersteunde features
  • Native Linux x64- en macOS ARM64-werkmap-API's laden, bewerken, berekenen en slaan ondersteunde XLSX-, XLSB- en ODS-bestanden op met echte platformservices
  • Native classic BIFF8-werkmappen ondersteunen bewerking, berekening, grote geneste compound-containers, documentproperties en standaard RC4- of 128-bit CryptoAPI-uitvoer op Linux x64 en macOS ARM64
  • Native Pivot-uitvoer ondersteunt numerieke, datum- en handmatige groepering en elf custom subtotalfuncties in ondersteunde rapportlayouts
  • Werkmapvergelijking behoudt strikte waardetypen en exacte grote integers, eindige numerieke toleranties, optionele formulecaches, effectieve stijlen, geometrie, rich text en begrensde ondersteunde featuredefinities, inclusief lokale Pivot-, Slicer- en Timeline-status, terwijl sparse opslag en eerdere resultaten behouden blijven bij fouten
  • ODS behoudt gewone notitietekst en auteurs, representeerbare waarde- en custom filters en gelijkwaardige bescherming zonder wachtwoord, met precieze conversieverliesrapporten; geannuleerde stream-saves behouden de bestemming, en saves op een niet-nulpositie behouden geldige ZIP-offsets
  • FORMULATEXT leest opgeslagen expressies zonder hun doel te evalueren, en GETPIVOTDATA bevraagt ondersteunde zichtbare aggregaten uit begrensde losse lokale caches in XLS, XLSX en geïsoleerde evaluatoren; native XLS-inlinecache-waarden en rapportfilterverwijzingen behouden hun identiteit, terwijl onvolledige of niet-ondersteunde caches expliciete fouten geven
  • INDEX, SORT en UNIQUE accepteren berekende arrays en constanten, dus filteren, sorteren, dedupliceren en rij- of kolomextractie combineren direct met automatische XLSX-spill-herschaling en vastebereik-CSE-berekening; INDEX accepteert rij-, kolom- en gebiedselectorarrays met orientatiebewuste broadcasting en getypeerde fouten per cel, accepteert gebied 1 voor een berekende bron en behoudt ondersteunde scalaire multi-area-referentie-identiteit via gedefinieerde namen, LET en scalaire CHOOSE; zie INDEX-gebiedselectie voor voorbeelden en grenzen
  • Benoemde stijlen behouden gekoppelde formaatonderdelen en lokale overrides, terwijl elke ingebouwde lichte, medium en donkere tabelstijl uitkomt op het effectieve formaat dat de bewerkings- en exportpaden gebruiken
  • Eén verenigde drawing-facade groepeert DrawingML-objecten of heft die groepering op en herordent gemengde afbeeldingen, grafieken, tekstvakken, bewaarde ankers en geneste groepen zonder relaties te verliezen
  • TXLSFormatSnapshot legt een compleet classic-formaat vast, los van de bronwerkmap, en IXLSRange.ApplyFormat past het toe op cellen, rijen of kolommen
  • Classic- en XLSX-werkmappen bieden dezelfde streaming- SaveSemanticSnapshot - en incrementele SHA-256- ComputeSemanticHash -API's, met de profielen Content en SecurityComplete plus expliciete opties voor viewerstatus, vluchtige metadata en formulecache
  • Nieuwe XLSX-bladen ondersteunen compatibele rijgewijze getypeerde bulkwrites in gepakte RLE-opslag, beantwoorden query's op bestaan en opslagstatistieken zonder materialisatie en vouwen pas eenmalig uit naar stabiele celobjecten wanneer toegang op objectniveau dat vereist
  • Classic- en XLSX-celopslag en werkbladcollecties leggen onafhankelijke structurele generaties bloot, zodat langlopende lezers topologiewijzigingen opmerken zonder waarde-, formule-, formaat-, hernoem- of activeringsbewerkingen als structurele invalidatie te behandelen
  • Celhandles houden de standaardstijlstatus allocatievrij, en identieke lege cellen met alleen een stijl delen een payload met referentietelling en copy-on-write-isolatie voor latere lokale bewerkingen, met meetbaar vermeden bytes in de opslagstatistieken

Gecompileerde rapportage en datacompositie

  • TXLSCompiledReportTemplate compileert placeholders één keer voor cellen, rich text, opmerkingen, opmerkingen in threads, hyperlinks, drawings, grafieken, kop- en voetteksten, bladnamen, gedefinieerde namen en documenteigenschappen
  • TXLSCompiledReportBand vouwt rij-, kolom- en kruistabbanden op basis van gedefinieerde namen uit vanuit begrensde één-pass-datasnapshots, waarbij formules, afhankelijke objecten en expliciete as-metadata behouden blijven
  • TXLSCompiledTableReportBand vouwt Excel-tabelsjablonen van één rij uit terwijl koppen, totalen, filters, sortering, formules, stijlen, gestructureerde verwijzingen en veilige resultaten met werkelijk nul rijen behouden blijven
  • IXLSReportTable, IXLSReportCursor, IXLSReportRandomAccessTableen TXLSReportMemoryTable bieden één contract voor virtuele en in-memory bronnen
  • TXLSReportRelationIndex bouwt exacte getypeerde buckets op samengestelde sleutels één keer op, voor gemiddeld O(1) master-detail-opzoeken zonder rijpayloads te kopiëren
  • IXLSReportTableProvider en TXLSReportDataContext registreren expliciete en luie tabellen, terwijl BeginRun een geïsoleerde IXLSReportDataSession aanmaakt met hoofdletterongevoelig hash-opzoeken, negative caching, deterministische caching van providerfouten en directe detectie van recursie via dezelfde alias; gecompileerde templates, runners, bereikbanden en Excel-tabelbanden gebruiken automatisch één sessie per logische run, beide PreprocessAndRun -passes delen dezelfde snapshot, gelijktijdige runs blijven geïsoleerd en elk succes-, annulerings- of faalpad geeft zijn snapshot vrij vóór het terugkeren
  • TXLSReportDataRequest en IXLSReportDataResolver voegen benoemde of gebruikersrequests toe met geordende getypeerde parameters, bronmetadata, read-only runbesturing en expliciete resultaten als unhandled, resolved, not-found of data-error; resolvers registreren zich op hoofdletterongevoelige providersleutel voor O(1)-dispatch, legacy-providers blijven compatibel via een adapter, expliciete tabellen blijven leidend en een run wijst conflicterende fingerprints voor dezelfde alias af vóór een tweede resolver-aanroep
  • TXLSReportDataLimits begrenst het aantal gecachte aliassen, benoemde en legacy-providers, tabelschema's, namen, parameters, tekenreeksen en foutmeldingen; misvormde broncoördinaten, control characters, dubbele parameternamen, niet-ondersteunde Variant-containers, ongeldige resultaatcombinaties, recursie en annulering halverwege de resolutie gaan mis vóórdat het target commit, terwijl annulering het onafgeronde cache-item verwijdert voor een schone retry
  • TXLSReportTableFactory levert luie top-, projectie-, union- en split-cursors plus rijtelling, minimum, aggregaat en hash-joins die duplicaten behouden
  • TXLSReportQueryProvider stelt alleen geregistreerde read-only querydefinities aan templates bloot en geeft getypeerde parameters plus begrensde timeouts door aan een host-executor
  • TXLSCompiledSheetReportBand en TXLSCompiledOverflowReportBand maken afhankelijkheidsbewuste bladen per record en begrensde vervolgbladen vanuit een forward-cursor
  • TXLSReportIncludeLibrary herleidt recursieve benoemde includes, rapporteert cycli deterministisch en bevriest tot een onveranderlijke herbruikbare bibliotheek
  • Gecompileerde rapportcondities, lookup, reguliere expressies en dynamische formules hergebruiken geparseerde expressieknooppunten en geresolveerde kolomindexen
  • TXLSReportDynamicFormat en TXLSReportFormatEvent passen recordbewuste getalnotaties, rijhoogten en kolombreedten toe op de granulariteit van het gecompileerde target
  • IXLSReportImageDataProviderV2 en TXLSReportImageBinder herleiden getypeerde afbeeldingstargets uit begrensde bytes of streams die de aanroeper beheert, met stabiele context voor werkblad, band, tabel, logische rij, cursorrij, read-only huidige rij, anker, transformatie, annulering en groottelimiet; runners, generators, bereikbanden en Excel-tabelbanden binden elk target rechtstreeks zonder gegenereerde werkbladcellen te scannen
  • V2-rapportafbeeldingen herleiden fysieke grootte en DPI uit begrensde PNG-, JPEG-, GIF-, BMP-, EMF- of WMF-headers, ondersteunen de passingen Natural, gecentreerde Contain, bijgesneden Cover en Stretch, wijzen onveilige rastergeometrie af vóór er iets wordt gemuteerd en behouden ankerrelatieve offsets door XLSX- en ODS-roundtrips heen
  • IXLSXImageBlob en TXLSXImageBlob laten herhaalde afbeeldingen één onveranderlijke raster- en SVG-payload delen met een eenmalige SHA-256-digest en een optionele cache key; XLSX en ODS hergebruiken aparte media-payloads over bladen heen en herstellen gedeelde payloads bij het heropenen
  • Afhankelijkheidsbewuste grafiekrebinding herleidt reeksen, formules, namen en ankers wanneer bereik- en bladbanden uitvouwen
  • TXLSCompiledReportRunner rapporteert de fasen begin, target, saving en end, ondersteunt annulering, stream- en atomische bestandsuitvoer, exacte toegepaste aantallen en herbruikbare executie over geïsoleerde datasessies; ErrorMode kiest tussen compatibel stopgedrag of doorgaande afhandeling van expliciet getypeerde data-, provider-, deling-door-nul- en ongeldig-reguliere-expressie-fouten, StrictDataAccess toont ontbrekende data in plaats van legacy-blanks of sentinel-aantallen, en onveranderlijke LastResult -snapshots bewaren geordende runtime-issues en de eindtoestand bij hergebruik van de runner
  • Stream-, bestands- en versleuteld-bestandsuitvoer van rapporten loopt via één getrapte transactie; fatale, geannuleerde, serialisatie-, partiële stream-write- en bestandsvervangingsfouten laten de volledige eerdere bestemming intact, terwijl geslaagde onversleutelde uitvoer het formaat van de bronwerkmap houdt en grote stream-rollback-snapshots overlopen naar beheerde tijdelijke opslag
  • Rapportuitvoer slaat back-upsnapshots over voor lege bestemmingsstreams terwijl rollback van bestemming-inhoud en -positie behouden blijft als de uitvoer faalt
  • Gecompileerde targets evalueren vóór de dynamische opmaak en committen daarna atomisch inhoud, getalnotaties, rijhoogten en kolombreedten met exacte rollback; herstelbare celdiagnostiek wist formules, laat de resterende basistijl staan en deelt gepoolde rode-lettertype- en gele-vul-derivaten over gelijke basislettertypen heen, terwijl veilige niet-cel-targets hun oorspronkelijke waarde behouden en structurele targets fail-fast blijven
  • TXLSReportRuntimeLimits begrenst het aantal bewaarde issues, de lengte van gesaniteerde berichten en het issue-geheugen vóórdat het target muteert; berichten zijn één regel lang en redacteren courante credentials, en RuntimeDiagnosticsSheetName schrijft optioneel één gestructureerd diagnosiewerkblad dat met de gegenereerde werkmap een roundtrip maakt
  • TXLSReportGenerator beheert de volledige lees- en generatielevenscyclus voor werkmap-, bestands-, stream- en versleuteld-bestandssjablonen, met gekoppelde events, stabiele werkbladcontext, veilige annulering, uitvoerisolatie via atomische klonen en hetzelfde herstelbare-fout- en onveranderlijk-resultaatcontract als de gecompileerde runner
  • CloneRangeTo kloont geselecteerde cellen en afhankelijkheden die identiteit dragen, met vertaling van gemengde verwijzingen, overlap-preflight en lineaire herhaalde tegeling vanuit een vaste bron; hele-as voorwaardelijke en validatiedoelen volgen structurele bewerkingen en klonen die elk doel volledig omvatten, terwijl celkopieën over hele rijen, hele kolommen en het hele werkblad sparsame opslag en veilige overlappende bronmomentopnamen behouden; elkaar kruisende virtuele stijloverlays worden ook gekopieerd en opnieuw gemapt zonder lege coördinaten uit te breiden, en overlay-opmaak van de bestemming buiten de gekopieerde rechthoek blijft intact
  • TXLSReportPaginationPlanner levert vaste voetteksten, keep-together-groepen, rijopsplitsing, samenvoegen van gelijkvormige spans en gebalanceerde rapportkolommen
  • Gecompileerde rapportanalyse, strikte executie en WriteDiagnostics rapporteren misvormde placeholders en ontbrekende waarden met targetsoorten en exacte adressen
  • TXLSReportTemplateChecker en TXLSReportTemplateMigrator hergebruiken de compilersemantiek om templates te valideren en ondersteunde legacy-placeholdervormen te converteren

Toegankelijke, vector-, afbeeldings- en webuitvoer

  • TXLSPDFTagMode en DocumentLanguage genereren automatische PDF-structuurbomen met tabellen, rijen, semantische kop- en gegevenscellen, informatieve XLSX-afbeelding-Figures met Unicode-alternatieve tekst, dichte marked-content-identificatoren per pagina, spans van samengevoegde cellen, exacte ouderbomen en artifact-isolatie voor decoratieve afbeeldingen en andere niet-semantische drawings
  • TXLSPDFSignature ondersteunt zichtbare of onzichtbare signaturevelden, contained-, covered- of gestretchte PNG-verschijningsvormen, door de host aangeleverde CMS-data, digest-callbacks, gepatchte byteranges en expliciete DocMDP-certificeringsbeleiden voor geen wijzigingen, formulieren invullen en ondertekenen, of formulieren invullen, ondertekenen en annoteren, zonder private keys op te slaan
  • TXLSPDFAProfile kiest PDF/A-1a, 1b, 2a, 2b, 3a of 3b met profielvalidatie vóór de uitvoer-commit; PDF/A-3-associated files dragen een Unicode-naam, MIME-type, beschrijving, bytegrootte, wijzigingstijd en een Source-, Data-, Alternative-, Supplement- of Unspecified-relatie via de gedetailleerde AddAttachment -overload
  • Herbruikbare PDF-voortgang voor begin, pagina en eind plus annulering voorkomen partiële bestemmingsstreams
  • Stijlbewuste PDF-font-fallbackketens cachen glyph-dekking en ingebedde faces met behoud van aanvullende tekens, grapheme-clusters en extractiemappings
  • Contextuele complex-text-shaping past ligaturen, posicionering van combinerende tekens, Arabische verbindingen en broncluster-mappings toe vóór de glyph-uitvoer
  • Natieve axiale en radiale multi-stop-PDF-gradiënten, alpha-masks per stop, celvulpatronen, clipping en afbeeldingsschaduwen hergebruiken gecachte graphics-resources
  • Celopmerkingen kunnen gepositioneerde Unicode-PDF-tekstannotaties worden, terwijl de comments-at-end-uitvoer beschikbaar blijft
  • TXLSSvgExport rendert bereiken, werkbladen, werkmappen, pagina's en benoemde objecten met vectortekst, opt-in veilige links, grafieken, shapes en afbeeldingen; pagina-callbacks geven telkens één complete SVG terug, deterministische ID-prefixen isoleren ingesloten documenten en de gedeelde pagina-renderer tekent Excel-celvullingen, ingeklapte randen, lettertypen en uitlijning per cel, shrink-to-fit en overloop naar buurcellen
  • TXLSPageImageExporter hergebruikt één pagineringssessie terwijl geselecteerde PNG- of JPEG-pagina's incrementeel ontstaan, of schrijft geselecteerde pagina's atomisch als één LZW-gecomprimeerde multipage-TIFF
  • TXLSGraphicsBackend en gedeelde pagineringgeometrie stemmen preview, print, PDF, SVG, afbeelding, HTML en objectplaatsing op elkaar af, terwijl serializers de formatspecifieke codering behouden
  • De begrensde EMF- en WMF-decoder valideert record-enveloppen en wijst escape-records af voordat hij zijn veilige subset replayt via gedeelde Canvas- en SVG-geometrie: DC-state stacks, window-, viewport- en world-transforms, objecttabellen voor pen, brush en extended pen met stock objects, rechthoeken, ellipsen, lijnketens, polygonen, Bézier-curves, padhaken met fill-, stroke- en gecombineerde passes, afgeronde rechthoeken, bogen, korden, taartpunten en hoekbogen, regiovullingen en -frames, begrensde textruns met lettertypen en uitlijning, en stretch-DIB-afbeeldingen die opnieuw naar PNG worden gecodeerd; clipping en private records blijven buiten de whitelist en vallen bij mislukking gesloten terug op de begrensde raster-fallback
  • Classic- en XLSX-HTML-exporters bieden een expliciete spreadsheetweergave met semantische rij- en kolomkoppen en getypeerde pure-CSS-hot-tracking; externe links delen één URI-sanitizer die script-, data-, blob-, file-, UNC- en control-character-doelen afwijst
  • XLSX-datumasgrafieken gebruiken werkmapserials als doorlopende coördinaten, behouden het compatibiliteitsslot voor de schrikkeldag van 1900, respecteren het 1904-datumsysteem en schuiven ticks op met echte kalenderdagen, -maanden of -jaren, over gedeelde paginering, SVG, PDF, afbeelding, preview, print, viewer en HTML-rendering heen; weggelaten eenheden worden één keer afgeleid over alle zichtbare reeksen, automatische dichtheid gebruikt de zichtbare reikwijdte, de asbreedte, het gemeten labelfont, de getalnotatie en de rotatie, en geconfigureerde hoofd- en secundaire rasterlijnen hergebruiken dezelfde begrensde tick-collecties
  • XLSX-datumasmodellen behouden onafhankelijke aanwezigheid voor basis-, hoofd- en secundaire kalendereenheden plus de automatic-category-vlag van de datumas, zodat weggelaten ChartML-elementen weggelaten blijven terwijl expliciete dageneenheden en false-Booleaanse waarden een roundtrip maken; getypeerde Classic-datumas-extensievelden behouden elke rauwe waarde en vlag, terwijl actieve waarden in het XLSX-asmodel gemapt kunnen worden
  • Assen met categorieën op meerdere niveaus behouden leaf-first sparse caches en live tweedimensionale bereiken, erven weggelaten labels terwijl expliciet lege labels als grenzen gelden, voegen gelijke labels alleen binnen hun bovenliggende span samen, respecteren omgekeerde en rechts-naar-links-volgorde plus verborgen categorieën en stellen NoMultiLevelLabels beschikbaar voor uitvoer op één niveau
  • Gegevenslabels voor grafieken uit cellen behouden onafhankelijke formules en geïndexeerde caches per reeks, verversen de lokale werkbladweergavetekst één keer per werkmapgeneratie, houden externe caches aan zonder impliciete toegang, vertalen formules bij het kopiëren van werkbladen en het uitvouwen van rapporten en respecteren gedeelde plus zichtbaarheid per punt over paginering, SVG, PDF, afbeelding, preview, print, viewer en HTML-rendering heen
  • Classic-XLS- en XLSX-werkmappen delen een verliesvrij beleid voor objectweergave met drie toestanden; verborgen objecten worden uitgesloten vóór bereikuitbreiding en mediawerk, de viewer rendert lichte benoemde placeholders en PDF-, SVG-, bitmap-, print- en HTML-exporters kunnen kiezen voor placeholder-uitvoer, terwijl volledige objectuitvoer de standaard blijft
  • Handmatige grafieklayouts behouden de onafhankelijke aanwezigheid van velden en ongeldige brontokens, zetten factor- en edge-modi om met begrensde, groottebehoudende plaatsing, onderscheiden binnen- en buitentargets van de plot, delen de geometrie van titel, legenda, plotgebied en astitel over paginering, SVG, PDF, afbeelding, preview, print, viewer en HTML-uitvoer heen en converteren ondersteunde ODF-posities via absolute grafiekafstanden
  • XLSX-datumassen behouden labelgetalnotaties en source-link-status, passen astekstopmaak en rotatie met de klok mee toe, respecteren omgekeerde richting en behouden doorlopende tussenafstand voor dubbele en schaarse datums over paginering, SVG, PDF, afbeelding, preview, print, viewer en HTML-rendering heen
  • De formuleweergavemodus levert in de werkmapviewer en over de paden preview, print, afbeelding, EMF, SVG, PDF, Classic HTML en XLSX HTML dezelfde eindtekst met inachtneming van beveiligde cellen, dezelfde uitlijning en dezelfde begrensde tweevoudige effectieve layoutbreedte, zonder opgeslagen waarden, formulecaches of kolombreedten te veranderen
  • Op flatness gestuurde adaptieve kubische Bézier-bogen delen één precisiecontract over PDF-, SVG- en afbeeldingsuitvoer en wijzen extra segmenten alleen toe wanneer schaal of excentriciteit daarom vraagt
  • PDF-outlines ondersteunen geneste Unicode-bladwijzers, kleuren, vette of cursieve tekst en uitgeklapte of ingeklapte onderliggende niveaus, met pagina-callbacks voor achtergronden en overlays
  • Geresolveerde benoemde en ingebouwde tabelstijlen stromen mee door gedeelde HTML-, PDF-, afbeeldings-, preview- en vieweropmaak zonder lege cellen te materialiseren
  • TXLSSvgExport.SaveObjectAsSVG rendert één benoemde grafiek, afbeelding of shape op de exacte objectgrenzen zonder een hele pagina bij te snijden
  • HTML-export schrijft grafieken en shapes als inline SVG en behoudt SVG-afbeeldingen, drawing-ankers, links en ondersteunde effecten zonder het hele werkblad te rasteren
  • TXLSXHtmlExportSession scant gedeelde stijlen één keer en exporteert daarna werkbladen incrementeel, met voortgang, annulering en reset
  • TXLSImageRenderEffects past crop, helderheid, contrast, gamma, rotatie, dekking en schaduw consistent toe over graphics-backends heen
  • Preset-shapes, adjustments, ballonnen, stroomdiagrammen, tekstvakken en WordArt gebruiken gedeelde vectorgeometrie over uitvoerformaten heen
  • Geavanceerde grafiekrendering omvat foutbalken, trendlijnen, datumassen, numerieke tussenruimte, labels uit cellen met custom-first-componentvolgorde en financiële high-low- en up-down-balken
  • Labels van dichte en taartgrafieken krijgen deterministische botsingscorrectie en leader-line-routering vóór de definitieve vectoruitvoer

XLSX-functies die klaarstaan voor applicatiecode

De XLSX-API dekt nu praktische werkmapgeneratie, rapportuitvoer en scenario’s voor het muteren van werkmappen in plaats van alleen eenvoudig cellen schrijven

  • WerkbladstructuurCellen, formuleberekening, hele bereiken en merge-across-bereiken met direct opzoeken/verwijderen van samengevoegde bereiken, rij- en kolomgroottes met begrensd AutoFit, outlines, verborgen rijen en kolommen, bevroren vensters, actieve bladstatus, verborgen en zeer verborgen bladen
  • Stijlen en presentatieFonts, vullingen, randen, getalnotaties, uitlijning, rich text, themakleuren, geïndexeerde kleuren, tint en shade, diagonale randen en herbruikbare stijlpools
  • Excel-objectenHyperlinks en opmerkingen met celopzoeking plus hulpfuncties voor bereikverwijdering, afbeeldingen en zelfstandige drawing-tekstvakken met ankeropzoeking en hulpfuncties voor bereikverwijdering, voorwaardelijke opmaak en gegevensvalidaties met bereikbewuste opzoeking en verwijdering, Excel-tabellen met opzoeking op naam en verwijdering, AutoFilter-criteria met directe kolomopzoeking en verwijdering, grafiekobjecten met titelopzoeking en verwijdering, grafiekbladen, gedefinieerde namen met bereikgebonden opzoeking en verwijdering, behoud van VBA-project met HasVbaProject / VbaProjectDefined query's plus inspectie en bewerking van de bron van bestaande modules, en externe werkmapkoppelingen met doelopzoeking en hulpfuncties voor verwijdering
  • Pagina- en metadataondersteuningWerkbladweergavemodi, afdrukgebieden, titelrijen en -kolommen, afdrukopties voor rasterlijnen en koppen, handmatige pagina-einden met indexopzoeking en hulpfuncties voor bereikverwijdering, Date1904-werkmappen, documenteigenschappen, applicatiemetadata en streamgebaseerd opslaan/openen

Uitvoerformaten vanuit dezelfde werkmapgegevens

HotXLS beperkt zich niet tot binaire werkmapbestanden. De huidige API’s bieden directe exportpaden naar veelgebruikte integratie- en rapportagedoelen

XLSClassic Excel 97-2003: werkmappen lezen, schrijven en wijzigen; loaded-cell-cursor in constante status met eigendom-snapshots, optioneel onafhankelijk opgemaakte lege cellen en fail-fast-topologievalidatie; snel bladnamen ontdekken uit bestanden of streams; bladen opzoeken op naam; pane-helpers; actief tabblad van de werkmap; saved-by-metadata; helpers om de VBA-payload te laden, op te slaan en te wissen plus inspectie en bewerking van de bron van bestaande modules; besturing van venstergeometrie/-status; tab-, scrollbar- en AutoFilter-datumgroeperingsbesturing; werkbladweergave, rasterlijnkleur en Window2-vlaggetrouwheid van bevroren vensters; besturing van outline-stijlen; permissies voor werkbladbeveiliging; pagina-instellingsvlaggen met begrensd, byte-exact behoud van de BIFF-printer-driverpayload; kopie-geïsoleerde toegang tot de openbare payload; conversie naar XLSX met typed-field-prioriteit; multi-key-bereiksortering; ingebouwde celstijlen; documenteigenschappen; en exportworkflows
XLSXOOXML-werkmapgeneratie; formuleberekening met uitgebreide functiedekking en A1-verwijzingen over het volledige 1,048,576 × 16,384-werkbladraster en OnUserFunction/OnUserFunctionEx; loaded-cell-cursor in constante status over gematerialiseerde sparse-blokken of gepakte opslag, met eigendom-snapshots, optioneel onafhankelijk opgemaakte lege cellen en fail-fast-levenscyclusvalidatie; loaded-cell-scanning en callback-writing; begrensde AutoFit-limieten voor rapportkolombreedtes en rijhoogten; deterministische sparse XLSX-naar-BIFF8-conversie via SaveXLSXWorkbookAsXLS met behoud van vergrendelde geïndexeerde kleuren, gewogen OKLab-paletkwantisatie en gepreflightte getypeerde printerinstellingen; byte-exact behoud van het werkblad-printerinstellingenonderdeel met kopie-geïsoleerde toegang tot de openbare payload, exacte wissemantiek en dangling-relationship-diagnostiek; Excel-compatibel AES-versleuteld opslaan en laden (ECMA-376 Standard Encryption) met AES-NI-versnelling en software-fallback; preservatie van het VBA-project met HasVbaProject / VbaProjectDefined -query's plus inspectie en bewerking van de bron van bestaande modules; template-tekst find/replace; configureerbare HTML-export van werkmap/bereik; direct opzoeken/verwijderen van AutoFilter-criteria en preview-evaluatie; direct opzoeken/verwijderen van ankers van ingebedde afbeeldingen; bereikbewust opzoeken/verwijderen van voorwaardelijke opmaak en gegevensvalidatie; en roundtrip via de dedicated lxHandleX -facade
XLSBGevalideerde waarden en basale stijlen via de XLSX-facade, inclusief getypeerde getallen, Booleans, Unicodetekst, gewone fouten, opgemaakte lege cellen, zichtbaarheid van werkbladen, gewone views, rij- en kolomdimensies, paginamarges, ZIP-compressie en deterministische tijdstempels; complete pakketstaging en verplichte featurechecks wijzen niet-ondersteunde formules, namen, featureobjecten en niet-standaard berekeningsinstellingen af vóór het committen van de bestemming
ODSOpenDocument Spreadsheet-import met styles.xml data, rij-/kolomafmetingen, overgeërfde celstijlen, basale formuleconversie, werkbladbeveiliging, benoemde bereiken, niet-getypeerde gecachte scalairwaarden, fractionele datumsseconden en negatieve tijdsduren. Volledige export via SaveAsODS met wegschrijven van getypeerde celwaarden, formules, rich text, samengevoegde bereiken, hyperlinks, afbeeldingen, grafieken, voorwaardelijke opmaak, gegevensvalidaties, bevroren vensters, afdrukbereiken, outlinengroepen en optionele TODSExportOptions in een geldig ODF-pakket
CSV / TSVImport van tekst met scheidingstekens via OpenCSV met automatisch opgesnuffelde scheidingstekens, BOM-encodingdetectie, RFC 4180-quoting, optionele type-inferentie van waarden, importdirectives per kolom en slicen op vaste breedte, plus exporthelpers voor werkmap, werkblad en bereik met stream- en bestandsoverloads en uitvoer met spaties opgevulde vaste breedtes
HTML / RTF / PDFTabelgerichte exports voor rapporten, previews, e-mailbodies en documentoverdracht, waaronder fragmenten van geselecteerde bereiken, configureerbare HTML-titels, tabel-layoutattributen, hyperlinkankers, opmerkingstooltips, stijlen voor verticale uitlijning, rich-text-run-stijlen, voorwaardelijke differentiële stijlen en getalnotaties, kleurschalen, directionele databalken, iconenfamilie-glyphs en minimale tabeluitvoer. TXLSHTMLImport importeert één geselecteerde top-level tabel of elke tabel op een doelcel (genummerd vanaf 1) met een expliciet decimaalteken, en behoudt daarbij de oorspronkelijke all-table-overloads. SaveWorkbookAsHTML publiceert elk zichtbaar XLSX-werkblad in één navigeerbaar document met stabiele per-blad-ankers en ge-escape-te bladnamen. RTF importeert ook terug via OpenRTF, die tabelcellen of paragraaflijsten standaard naar A1 mapt of via de uitgebreide overloads naar een expliciete doelrij en -kolom (vanaf 1). Werkmap- SaveAsPDF combineert alle zichtbare werkbladen in één document, rendert effen en voorwaardelijke vullingen, kleurschalen, databalken, voorwaardelijke iconen, fontkleuren, groottes, bold-, italic- en underline-nadruk, uitlijning, expliciete randen en optionele rasterlijnen, en volgt afdrukgebieden, papierformaat of aangepaste puntprecieze papierafmetingen, oriëntatie, marges, zoom, fit-to-width-instellingen, kolombreedtes, rijhoogten, handmatige pagina-einden, herhaalde titelrijen en -kolommen en links, midden of rechts uitgelichte kop- en voetteksten — inclusief de veldcodes &F voor de bestandsnaam en &Z voor het pad, plus optionele onderdrukking van de kop- of voettekstband — terwijl brede en hoge bereiken over beide assen worden gepagineerd; CalculatePageCount meldt het volledige logische pagina-aantal zonder PDF-objecten te bouwen, en FirstPage en LastPage (vanaf 1) selecteren een uitvoerbereik met behoud van total-page-velden. TXLSPaginationModel stelt die beslissingen bloot als herbruikbare XLS- en XLSX-logische pagina's voor VCL-printpreview, PDF-export, eigen canvassen en EMF-uitvoer, inclusief herhaalde titels, over-then-down- of down-then-over-volgorde, fit-schaling van 10% tot 400% en drawingplaatsingen
Portable PDF / SVG / PNGNative draagbare rendering draagt losse scalar- en scenesnapshots over, behoudt tekenvolgorde en clipping en gebruikt begrensde Cairo-rendering met expliciete fontbestanden; werkmap-printplannen passen afdrukbereiken, titels, pagina-instelling, pauzes en fit-schaling toe zonder herberekening of bronmutatie

Waarom handig

HotXLS houdt het genereren van spreadsheets binnen je eigen Delphi- of C++Builder-proces. Dat maakt de bibliotheek geschikt voor desktophulpprogramma's, batchtools, services en installers waarin Office-automatisering broos of onbeschikbaar is

RAD Studio-dekking

Het pakket ondersteunt Delphi en C++Builder van XE5 tot RAD Studio 13.1 Florence, met pakketprojecten per versie en uitvoermappen per versie

Free Pascal 3.2.2 met Lazarus/LCL wordt ook ondersteund op Windows Win32 en Win64 via het runtime-pakket Lib/FPC/HotXLSLaz.lpk, inclusief de XLS/XLSX-werkmap-API's, direct streaming, formules en de exportcomponenten TDataToXLS en TGridToXLS voor LCL-datasets en TDBGrid

Voer build-FPC-Lib.cmd Win64 of build-FPC-Lib.cmd Win32 uit om het pakket te compileren, daarna Tests/Lazarus/Run-HotXLSLazarusSmoke.cmd Win64 of zijn Win32-tegenhanger om werkmap- en compressieroundtrips te verifiëren; zet LAZARUS_DIR voor een aangepaste installatie

FPC-applicaties moeten de LCL-unit Interfaces vóór de HotXLS-units opnemen en Lib en Lib/FPC aan hun unit search paths toevoegen, plus Lib aan het include search path; VCL-demoforms, de VCL-werkmapviewer en de DevExpress-gridadapter blijven Delphi/C++Builder-componenten

Native Linux x64- en macOS ARM64-applicaties laden, bewerken, berekenen en slaan de ondersteunde classic XLS-, XLSX-, XLSB- en ODS-modellen op; classic BIFF5-tekst gebruikt expliciet gedeclareerde codepagina's, terwijl BIFF8 gecomprimeerde Unicode exacte UTF-16-code-eenheden behoudt en native berekening en zoeken Unicode-hoofdlettervergelijking respecteren

Ondersteunde legacy-grafiektekst wordt getranscodeerd wanneer de codepagina verandert, en migratie van niet-representeerbare of niet-ondersteunde bytetekst weigert vóórdat de uitvoer van de aanroeper verandert; herhaalde ZIP-lezingen geven hun eerdere header-metadata vrij, en opzoeken van benoemde stijlen omvat de eerste opgeslagen entry

Zie Free Pascal- en Lazarus-ondersteuning voor de applicatieopzet, legacy-encodingcontracten en details over regex-compatibiliteit

Het draagbare uitvoersubsysteem rendert native PDF, SVG en PNG op Linux en macOS met FPC, Cairo, FreeType, HarfBuzz en FriBidi; het verbruikt onveranderlijke snapshots uit de ondersteunde native werkmapkern, met expliciete fontgeometrie en resourcebudgetten

Distributievriendelijk

Broncode, packages, buildscripts, demo's, lokale HTML-documentatie en installer-integratie zitten erbij, zodat teams kunnen bouwen, testen en uitrollen zonder afhankelijk te zijn van een webservice

Startpunten

Gebruik deze lokale bestanden als eerste bij het evalueren van de bibliotheek of het inbedden in een project