Tabelopmaak toepassen

Elk element van een tabel kan met verschillende opmaak worden toegepast. Bijvoorbeeld, tabelopmaak zal worden toegepast op de hele tabel, rij opmaak op slechts bepaalde rijen, celopmaak op slechts bepaalde cellen.

Aspose.Words levert een rijk API ophalen en toepassen op een tabel. U kunt de Table, RowFormat, en CellFormat knooppunten om opmaak in te stellen.

In dit artikel, zullen we praten over hoe je formatteren toe te passen op verschillende tabel knooppunten en welke tabel formattering instellingen Aspose.Words steun.

Formatteren toepassen op verschillende knooppunten

In deze sectie zullen we kijken naar het toepassen van opmaak op verschillende tabelknooppunten.

Tabelniveauopmaak

Om opmaak toe te passen op een tabel kunt u de beschikbare eigenschappen op de overeenkomstige Table knooppunt met behulp van de Table, PreferredWidth, en TableCollection lessen.

De foto’s hieronder tonen een voorstelling van de Table opmaakfuncties in Microsoft Word en hun overeenkomstige eigenschappen in Aspose.Words.

apply-formatting-to-table-level-aspose-words-java

apply-formatting-to-table-level-aspose-words-java

Het volgende voorbeeld van een code laat zien hoe een omtrekrand op een tabel kan worden toegepast:

Het volgende voorbeeld van code laat zien hoe je een tabel kunt bouwen met alle randen ingeschakeld (raster):

Opmaak van rijniveau

Rij-niveau** formatteren kan worden gecontroleerd met behulp van de Row, RowFormat, en RowCollection lessen.

De foto’s hieronder tonen een voorstelling van de Row opmaakfuncties in Microsoft Word en hun overeenkomstige eigenschappen in Aspose.Words.

apply-formatting-to-row-level-aspose-words-java

Het volgende voorbeeld van code laat zien hoe u de tabelrij formattering kunt wijzigen:

Opmaak celniveau

Cell-level opmaak wordt gecontroleerd door de Cell, CellFormat, en CellCollection lessen.

De foto’s hieronder tonen een voorstelling van de Cell opmaakfuncties in Microsoft Word en hun overeenkomstige eigenschappen in Aspose.Words.

apply-formatting-to-cell-level-aspose-words-java

apply-auto-formatting-to-row-level-aspose-words-java

Het volgende voorbeeld van code laat zien hoe u de opmaak van een tabelcel kunt wijzigen:

Het volgende voorbeeld van code laat zien hoe u de hoeveelheid ruimte (in punten) kunt instellen die aan de linker/boven/rechts/onderkant van de cel moet worden toegevoegd:

Rijhoogten specificeren

De eenvoudigste manier om de rijhoogte in te stellen is de DocumentBuilder. Gebruik van de juiste RowFormat eigenschappen, kunt u de standaard hoogte instellen of toepassen een andere hoogte voor elke rij in de tabel.

In Aspose.Words, de hoogte van de tabelrij wordt bepaald door:

  • de rij hoogte eigenschap Height
  • de hoogte regel eigenschap voor de gegeven rij HeightRule

Tegelijkertijd kan voor elke rij een andere hoogte worden ingesteld. Dit stelt u in staat om de tabelinstellingen wijd te controleren.

Het volgende voorbeeld van code laat zien hoe je een tabel maakt die één cel bevat en rijopmaak toepast:

Tabel- en celbreedtes specificeren

Een tabel in een Microsoft Word document biedt verschillende manieren om de tabel en individuele cellen te wijzigen. Deze eigenschappen kunnen aanzienlijke controle over het uiterlijk en gedrag van de tafel, zodat Aspose.Words ondersteunt het gedrag van tabellen, zoals in Microsoft Word.

Het is belangrijk om te weten dat tabelelementen verschillende eigenschappen vertonen die van invloed kunnen zijn op de wijze waarop de breedtes van de totale tabel, evenals individuele cellen, worden berekend:

  • Voorkeursbreedte op de tafel
  • Voorkeursbreedte op individuele cellen
  • Automatisch op de tafel laten passen

Dit artikel geeft aan hoe de verschillende tabelbreedte berekening eigenschappen werken en hoe u volledige controle over de tabelbreedte berekening te krijgen. Dit is vooral nuttig om te weten wanneer de tabelindeling niet zoals verwacht lijkt.

Hoe wordt voorkeursbreedte gebruikt

De gewenste breedte van een tabel of individuele cellen wordt gedefinieerd door de voorkeursbreedte eigenschap, dat is de grootte die een element streeft te passen. Dat wil zeggen, de voorkeursbreedte kan worden gespecificeerd voor de gehele tabel of voor individuele cellen. In sommige situaties is het misschien niet mogelijk om deze breedte precies te passen, maar de werkelijke breedte zal in de meeste gevallen dicht bij deze waarde zijn.

De juiste voorkeursbreedte type en waarde worden ingesteld met behulp van de methoden van de PreferredWidth klasse:

  • de Auto veld om de auto of de gewenste breedte te specificeren
  • de FromPercent methode om een percentagebreedte op te geven
  • de FromPoints methode om de breedte in punten te specificeren

De afbeeldingen hieronder tonen een weergave van de * voorkeursbreedte instelling functies* in Microsoft Word en hun overeenkomstige eigenschappen in Aspose.Words.

formatting-table-properties-aspose-words-java

Een voorbeeld van hoe deze opties worden toegepast op een echte tabel in een document is te zien in onderstaande afbeelding.

table-applied-options-java

Geef de voorkeurstabel of celbreedte

In Aspose.Words, tafel en cel breedtes zijn ingesteld met behulp van de Table.PreferredWidth de CellFormat.PreferredWidth eigendom, met opties beschikbaar in de PreferredWidthType Lijst:

  • Auto, die gelijk is aan geen voorkeursbreedte ingesteld
  • Percent, die past bij het element ten opzichte van de beschikbare ruimte in het venster of containergrootte, en herberekent de waarde wanneer de beschikbare breedte verandert
  • Points, die overeenkomt met een element van de opgegeven breedte in punten

Gebruik van de Table.PreferredWidth eigenschap zal zijn voorkeursbreedte ten opzichte van de container aanpassen: pagina, tekst kolom, of buitenste tabel cel als het een geneste tabel.

Het volgende voorbeeld van code laat zien hoe u de tabel automatisch kunt aanpassen tot 50% van de paginabreedte:

Gebruik van de CellFormat.PreferredWidth eigenschap op een bepaalde cel zal zijn voorkeursbreedte aanpassen.

Het volgende voorbeeld van code laat zien hoe u de verschillende voorkeursbreedte instellingen kunt instellen:

Voorkeursbreedte type en waarde zoeken

U kunt de Type en Value eigenschappen om de gewenste breedte details van de gewenste tabel of cel te vinden.

Het volgende voorbeeld van code laat zien hoe u het gewenste breedtetype van een tabelcel kunt ophalen:

Automatisch instellen

De AllowAutoFit eigenschap laat cellen in een tabel groeien en krimpen volgens een geselecteerd criterium. U kunt bijvoorbeeld de Automatisch aanpassen aan venster optie om de tabel aan de breedte van de pagina, en de Automatisch aanpassen aan inhoud optie om elke cel te laten groeien of krimpen volgens de inhoud.

Standaard, Aspose.Words voegt een nieuwe tabel toe met Automatisch aanpassen aan venster. De tabel wordt aangepast aan de beschikbare paginabreedte. Om de grootte van een tafel te wijzigen, kunt u de AutoFit methode. Deze methode accepteert een AutoFitBehavior Lijst die aangeeft welk type autofit op de tabel wordt toegepast.

Het is belangrijk om te weten dat de autofit methode is eigenlijk een snelkoppeling die verschillende eigenschappen van toepassing is op de tabel op hetzelfde moment. Dit zijn eigenschappen die de tabel het waargenomen gedrag geven. We zullen deze eigenschappen bespreken voor elke autofit optie.

Het volgende code voorbeeld laat zien hoe je een tabel instelt om elke cel te krimpen of te laten groeien volgens de inhoud:

We zullen de volgende tabel gebruiken om de verschillende auto fit instellingen als demonstratie toe te passen.

apply-different-autofit-settings-to-a-table-aspose-words-java

Tabel automatisch aanpassen aan venster

Wanneer het automatisch aanpassen van een venster wordt toegepast op een tabel, worden de volgende bewerkingen uitgevoerd achter de schermen:

  1. De Table.AllowAutoFit eigenschap is ingeschakeld om de grootte van kolommen automatisch te wijzigen om aan de beschikbare inhoud te passen, met behulp van een Table.PreferredWidth waarde van 100%
  2. CellFormat.PreferredWidth wordt verwijderd uit alle tabelcellen
  3. Kolombreedten worden in mindering gebracht voor de huidige tabelinhoud Het eindresultaat is een tabel die de gehele beschikbare breedte beslaat
  4. De breedte van de kolommen in de tabel verandert automatisch als de gebruiker de tekst bewerkt

Het volgende voorbeeld van code laat zien hoe u een tabel automatisch aan de paginabreedte kunt aanpassen:

Een voorbeeld van hoe deze opties worden toegepast op de bovenstaande tabel is te zien in de afbeelding hieronder.

autofit-table-aspose-words-java

Tabel automatisch aanpassen aan inhoud

Wanneer de tabel automatisch is aangepast, worden de volgende stappen achter de schermen uitgevoerd:

  1. De Table.AllowAutoFit eigenschap is ingeschakeld om elke cel automatisch te wijzigen volgens de inhoud

  2. De voorkeurstabelbreedte wordt verwijderd uit Table.PreferredWidth, CellFormat.PreferredWidth wordt verwijderd voor elke tabelcel

  3. Kolombreedten worden in mindering gebracht voor de huidige tabelinhoud: het eindresultaat is een tabel waarin de kolombreedtes en de breedte van de gehele tabel automatisch worden aangepast zodat de inhoud het beste past als de gebruiker de tekst bewerkt

Het volgende voorbeeld van code laat zien hoe u een tabel automatisch op de inhoud kunt monteren:

Een voorbeeld van hoe deze opties worden toegepast op de bovenstaande tabel is te zien in de afbeelding hieronder.

resize-column-autofit-settings-aspose-words-java

Automatisch aanpassen in tabel uitschakelen en vaste kolombreedtes gebruiken

Als een tabel autofit is uitgeschakeld en vaste kolombreedtes worden gebruikt, worden de volgende stappen uitgevoerd:

  1. Table.AllowAutoFit eigenschap is uitgeschakeld zodat kolommen niet groeien of krimpen naar hun inhoud
  2. De voorkeursbreedte van de gehele tabel wordt verwijderd uit Table.PreferredWidth, CellFormat.PreferredWidth wordt verwijderd uit alle tabelcellen
  3. Het eindresultaat is een tabel waarvan de kolombreedte wordt bepaald door de CellFormat.Width eigenschap, en waarvan de kolommen niet automatisch worden verkleind wanneer de gebruiker tekst invoert of wanneer de pagina wordt aangepast

Het volgende voorbeeld van code laat zien hoe u autofit kunt uitschakelen en vaste breedte voor de opgegeven tabel kunt inschakelen:

Een voorbeeld van hoe deze opties worden toegepast op de bovenstaande tabel is te zien in de afbeelding hieronder.

disable-autofit-settings-to-a-table-aspose-words-java

Volgorde van precedence bij het berekenen van celbreedte

Aspose.Words stelt gebruikers in staat om de breedte van een tabel of cel te definiëren via meerdere objecten, waaronder CellFormat De Width eigenschap is meestal overgebleven van eerdere versies, maar het is nog steeds handig voor het vereenvoudigen van het instellen van de celbreedte.

Het is belangrijk te weten dat de CellFormat.Width eigenschap werkt anders afhankelijk van welke van de andere breedte eigenschappen al bestaan in de tabel.

Aspose.Words gebruikt de volgende volgorde voor het berekenen van celbreedtes:

Beschikking Eigenschap Omschrijving
1 AllowAutoFit wordt bepaald Als AutoFit is ingeschakeld:
- de tabel kan verder groeien dan de gewenste breedte om de inhoud te kunnen verwerken.
- elke wijziging in de CellFormat.Width waarde wordt genegeerd en de cel past op de inhoud in plaats daarvan
2 PreferredWidthType met een waarde van Points of Percent CellFormat.Width wordt genegeerd
3 PreferredWidthType met een waarde van Auto De waarde van CellFormat.Width wordt gekopieerd en wordt de voorkeursbreedte van de cel (in punten)

Spatiëring tussen cellen toestaan

U kunt extra ruimte tussen tafelcellen krijgen of instellen, vergelijkbaar met de optie “Сell space” in Microsoft Word. Dit kan met behulp van de AllowCellSpacing eigendom.

Een voorbeeld van hoe deze opties worden toegepast op een echte tabel in een document is te zien in onderstaande afbeelding.

formatting-spacing-between-cells-aspose-words-java

Het volgende voorbeeld van code laat zien hoe je de afstand tussen cellen kunt instellen:

Randen en schaduwen toepassen

Grenzen en schaduwen kunnen worden aangebracht op de gehele tabel met behulp van Table.SetBorder, Table.SetBorders en Table.SetShading, of alleen naar specifieke cellen met behulp van CellFormat.Borders en CellFormat.Shading. Bovendien kunnen rijranden worden ingesteld met behulp van RowFormat.Borders, maar schaduw kan niet op deze manier worden toegepast.

De afbeeldingen hieronder tonen de rand en schaduw instellingen in Microsoft Word en hun overeenkomstige eigenschappen in Aspose.Words.

apply-borders-shading-aspose-words-java-1

apply-borders-shading-aspose-words-java-2

Het volgende voorbeeld van code laat zien hoe een tabel en cel met verschillende randen en schaduwen te formatteren: