# Graphics 2D Library (G2D) API Function List

### Data Structures

NNS_G2dGetCellDataByIdx | Gets the cell data at the specified index from the cell bank.
NNS_G2dCellDataBankHasVramTransferData | Examines whether or not the Cell bank has the VRAM transfer information.
NNS_G2dGetSizeRequiredVramTransferCellDataBank | Gets the VRAM byte size required for the VRAM transfer of Cell bank.
NNS_G2dGetAnimSequenceByIdx | Gets the animation sequence of the specified index from the animation bank.
NNS_G2dCalcAnimSequenceTotalVideoFrames | Calculates the total video frame length of the animation sequence data (note that this is different from animation frame).
NNS_G2dCellHasBR | Gets whether the cell has the bounding rectangle.
NNS_G2dGetCellBoundingRect | Gets the bounding rectangle of the cell.
NNS_G2dGetCellBoundingSphereR | Gets the radius of the bounding sphere of the cell.
NNS_G2dGetOAMSize* | Gets the size of the OBJ.
NNS_G2dRepeatXinCellSpace / NNS_G2dRepeatYinCellSpace | Returns the s16 value to which the repeat process has been applied within the value range that can be taken by OBJ in the cell.
NNS_G2dGetAnimSequenceIndex | Gets the animation sequence number in the animation information bank.
NNS_G2dGetUserExAnimAttrBank | Gets the extended attribute bank of the animation user from the animation information bank.
NNS_G2dGetUserExAnimSequenceAttr | Gets the extended attribute of the sequence user from the user extended attribute bank.
NNS_G2dGetUserExAnimFrameAttr | Gets the user extended attribute of the animation frame from the user extended attribute of the animation sequence.
NNS_G2dGetUserExAnimSeqAttrValue | Gets the user extended attribute value of the type u32 user from the user extended attribute of the animation sequence.
NNS_G2dGetUserExAnimFrmAttrValue | Gets the user extended attribute value of the type u32 user from the user extended attribute of the animation frame.
NNS_G2dGetUserExCellAttr | Gets the cell user extended attribute in the cell extended attribute bank by specifying the cell number.
NNS_G2dGetUserExCellAttrBankFromCellBank | Gets the cell extended attribute bank from the cell bank.
NNS_G2dGetUserExCellAttrValue | Gets the actual attribute value from the cell user extended attribute.
NNS_G2dGetUserExCellAttrBankFromMCBank | Gets the cell user extended attribute bank from the multicell bank.

### Load Files (Overview)

NNS_G2dIsBinFileValid | Examines whether or not the binary file format corresponds to the specified format.
NNS_G2dFindBinaryBlock | Searches for and obtains the specified binary block from the binary file.
NNS_G2dPrint* | Outputs the binary data contents to the debug output.
NNS_G2dUnPack* | Unpacks the binary data loaded from the file in a usable state.
NNS_G2dGetUnpacked* | Gets each type of data in an unpacked state from the binary file.

### Animation Controller (Overview)

NNS_G2dBindAnimCtrl | Links the animation controller with the animation data of the control object.
NNS_G2dGetAnimCtrlType | Returns the animation type.
NNS_G2dGetAnimCtrlCurrentElement | Gets a void pointer that points to the header of the current animation result.
NNS_G2dGetAnimCtrlNextElement | Gets a void pointer that points to the animation header of the frame next to the current playback frame.
NNS_G2dGetAnimCtrlNormalizedTime | Gets the normalized time of the display interval of the current playback frame.
NNS_G2dInitAnimCtrl | Initializes the NNSG2dAnimController entity.
NNS_G2dInitAnimCtrlCallBackFunctor | Initializes the controller callback.
NNS_G2dInitAnimCallBackFunctor | Initializes the callback function.
NNS_G2dIsAnimCtrlActive | Gets whether or not an animation controller is being played.
NNS_G2dSetAnimCtrlPlayModeOverridden | Overrides the animation play mode.
NNS_G2dResetAnimCtrlPlayModeOverridden | Resets the overridden animation play mode.
NNS_G2dStartAnimCtrl | Starts playing the animation.
NNS_G2dStopAnimCtrl | Stops playing the animation.
NNS_G2dSetAnimCtrlSpeed | Sets the animation playback speed.
NNS_G2dGetAnimCtrlSpeed | Gets the animation playback speed.
NNS_G2dResetAnimCtrlState | Resets the animation state.
NNS_G2dSetAnimCtrlCurrentFrame | Sets the current playback frame.
NNS_G2dGetAnimCtrlCurrentFrame | Gets the current playback frame.
NNS_G2dSetAnimCtrlCurrentTime | Sets the current animation frame display time of the animation controller.
NNS_G2dGetAnimCtrlCurrentTime | Gets the current animation frame display time of the animation controller.
NNS_G2dSetAnimCtrlCurrentFrameNoResetCurrentTime | Sets the current playback frame. It does not reset the current frame display time counter inside the controller.
NNS_G2dSetAnimCtrlCallBackFunctor | Sets the callback on the animation controller.
NNS_G2dSetAnimCtrlCallBackFunctorAtAnimFrame | Sets the callback specifying frame to the animation controller.
NNS_G2dTickAnimCtrl | Advances the animation time.
NNS_G2dGetAnimCtrlCurrentAnimSequence | Gets the animation sequence associated with the animation controller.
NNS_G2dGetAnimCtrlCurrentElemIdxVal | Gets the index value (cell number or multicell number) from the current animation result of the animation controller.

### Cell (Overview)

NNS_G2dCopyCellAsOamAttr | Copies the OAM attribute information inside the cell data to `GXOamAttr`.
NNS_G2dInitCellAnimation | Initializes the cell animation.
NNS_G2dInitCellAnimationVramTransfered | Initializes the VRAM transfer cell animation.
NNS_G2dMakeCellToOams | Writes out a string of OBJ that draws the cell.
NNS_G2dSetCellAnimationCurrentFrame | Sets the current playback frame.
NNS_G2dSetCellAnimationSequenceNoReset | Sets the animation sequence in the cell animation. It does not reset the internal playback animation frame number or the current frame display time.
NNS_G2dSetCellAnimationSequence | Sets the animation sequence in the cell animation.
NNS_G2dSetCellAnimationSpeed | Sets the playback speed of the cell animation.
NNS_G2dGetCellAnimationAnimCtrl | Gets the animation controller that controls the cell animation.
NNS_G2dGetCellAnimationCurrentCell | Gets the cell that is being displayed in the cell animation.
NNS_G2dTickCellAnimation | Advances the cell animation time.
NNS_G2dRestartCellAnimation | Restarts the cell animation from the beginning of the animation.

### MultiCell (Overview)

NNS_G2dGetMCWorkAreaSize | Gets the work region memory size required to initialize a multicell in the multicell data bank as an entity.
NNS_G2dInitMCAnimationInstance | Initializes the multicell animation.
NNS_G2dMakeSimpleMultiCellToOams | Writes out the OBJ array that draws the multicell.
NNS_G2dSetAnimSequenceToMCAnimation | Sets the playback animation sequence in the multicell animation.
NNS_G2dGetMCAnimAnimCtrl | Gets the animation controller in the multicell animation.
NNS_G2dSetMCAnimationCurrentFrame | Sets the current playback frame.
NNS_G2dSetMCAnimationCellAnimFrame | Sets the playback frames of the cell animations that make up the multicell.
NNS_G2dResetMCCellAnimationAll | Resets the animation frames for the cell animation that composes the multicell entity.
NNS_G2dStartMCCellAnimationAll | Sets the state of the cell animation that makes up the multicell entity to the "start playback" state.
NNS_G2dSetMCAnimationSpeed | Sets the playback speed of the multicell animation.
NNS_G2dTickMCAnimation | Updates the animation of the multicell animation.
NNS_G2dTickMCInstance | Updates the animation of the cell animation that makes up the multicell entity.
NNS_G2dRestartMCAnimation | Restarts multicell animation playback from the beginning of the animation.
NNS_G2dTraverseMCCellAnims | For cell animations composed of multicells, calls a callback function that takes every cell animation and cell animation number as arguments while going through the cell animations.
NNS_G2dTraverseMCNodes | For nodes composed of multicells, calls a callback function that takes all sets of node information, cell animation, and node number as arguments while going through the nodes.

### OAM Manager (Overview)

NNS_G2dApplyOamManagerToHW | Reflects the internal state of the OAM manager in the actual hardware.
NNS_G2dApplyOamManagerToHWSprite | Draws the contents of the internal buffer using the 3D graphics engine.
NNS_G2dEntryOamManagerOam | Registers OBJ in the OAM manager.
NNS_G2dEntryOamManagerAffine | Sets the affine parameters in the OAM manager.
NNS_G2dEntryOamManagerOamWithAffineIdx | Registers OBJs in the OAM manager.
NNS_G2dSetOamManagerAffine | Sets the affine parameter with the designated index in the OAM manager.
`NNS_G2dGetNewOamManagerInstance` (`NNS_G2dGetNewManagerInstance`) (`NNS_G2dInitManagerInstanceAffine`) | Initializes the OAM manager entity.
NNS_G2dGetNewOamManagerInstanceAsFastTransferMode | Initializes the OAM manager entity in a way that it can perform fast transfer of the buffer contents.
NNS_G2dGetOamManagerAffineCapacity | Gets the number of usable affine parameters of the OAM manager.
NNS_G2dGetOamManagerOamCapacity | Gets the number of usable OBJs of the OAM manager.
NNS_G2dInitOamManagerModule | Initializes the OAM manager module.
NNS_G2dResetOamManagerBuffer | Resets the internal OAM buffer of the managing region of the OAM manager.
NNS_G2dSetOamManagerSpriteZoffsetStep | Sets the z value added every time the software sprite is drawn.
NNS_G2dGetOamBuffer | Gets a pointer to the internal buffer used by the OAM manager module.

### Extended OAM Manager (Overview)

NNS_G2dApplyOamManExToBaseModule | Applies the contents of the extended OAM manager to the actual hardware.
NNS_G2dEntryOamManExAffine | Registers an affine matrix in the extended OAM manager.
NNS_G2dEntryOamManExOam | Registers OBJs in the extended OAM Manager and specifies the order of the entry when it is drawn.
NNS_G2dEntryOamManExOamWithAffineIdx | Registers OBJs in the extended OAM Manager and specifies the order of the entry when it is drawn.
NNS_G2dGetOamManExInstance | Gets the extended OAM manager entity.
NNS_G2dResetOamManExBuffer | Resets the internal buffer which the extended OAM manager entity manages.
NNS_G2dSetOamManExEntryFunctions | Sets the entry functions in the extended OAM manager.
NNSG2d_SetOamManExDrawOrderType | Sets the OAM drawing order type in the extended OAM manager.

### Software Sprite (Overview)

NNS_G2dSetupSoftwareSpriteCamera | Sets up the camera to be used when drawing the software sprite.
NNS_G2dSetupSoftwareSpriteMaterial | Sets up the material to be used when the software sprite is rendered.
NNS_G2dDrawSprite | Assigns each type of parameter and draws the software sprite.
NNS_G2dDrawSprite* | Draws various types of sprite.
NNS_G2dDrawSprite*Fast | Draws various types of sprite. This is a fast speed version that does not save the contents of the current matrix.
NNS_G2dGetSpriteDefaultAttr | Gets the pointer to the default value to be stored inside the module.
NNS_G2dIsSpriteAttrEnable | Gets whether or not each type of draw attribute is valid when drawing the software sprite.
NNS_G2dSetSpriteCurrentPolygonID | Sets the polygon ID used for software sprite drawing.
NNS_G2dSetSpriteDefaultAttr | Sets the default value to store inside the module.
NNS_G2dSetSpriteAttrEnable | Sets each kind of attribute that will be enabled when the software sprite is drawn.

### Drawing OAM Software Sprites (Overview)

NNS_G2dDrawOneOam3DDirect | Directly draws a single OBJ using the 3D graphics engine without using the internal buffer.
NNS_G2dDrawOneOam3DDirectWithPos | Draws a single OBJ by using the 3D graphics engine. The position of the OBJ can be specified.
NNS_G2dDrawOneOam3DDirectWithPosAffine | Draws a single OBJ by using the 3D graphics engine. The position of the OBJ and affine transformation matrix can be specified.
NNS_G2dDrawOneOam3DDirect*Fast | Draws a single OBJ by using the 3D graphics engine. The contents of the current matrix in the geometry engine are not saved before or after calling the function.
NNS_G2dSetOamSoftEmuSpriteParamCache | Sets the parameter cache used for software sprite drawing.
NNS_G2dDrawOneOam3DDirectUsingParamCacheFast | Sprite draws the OAM by using the parameter cache.
NNS_G2dSetOamSoftEmuUVFlipCorrectFunc | Sets the UV value-correction function pointer that is used for the OAM software sprite emulation.
NNS_G2dResetOamSoftEmuUVFlipCorrectFunc | Invalidates the UV value-correction function pointer used in the OAM software sprite emulation.

### Entity (Overview)

NNS_G2dInitEntity | Initializes the entity.
NNS_G2dIsEntityValid | Checks the validity of the entity.
NNS_G2dIsEntityPaletteTblEnable | Determines whether or not the palette conversion table of the entity is valid.
NNS_G2dResetEntityPaletteTable | Sets it so that the palette conversion table of the entity is not used.
NNS_G2dGetEntityAnimCtrl | Gets the animation controller held in the entity.
NNS_G2dSetEntityCurrentAnimation | Sets the playback animation of the entity.
NNS_G2dSetEntityCurrentFrame | Sets the current playback frame of the entity.
NNS_G2dSetEntityPaletteTable | Sets the palette conversion table in the entity.
NNS_G2dSetEntitySpeed | Sets the entity animation speed.
NNS_G2dTickEntity | Updates the animation of the entity.

### Image Load-Related (Overview)

NNS_G2dInitImageProxy | Initializes the image proxy.
NNS_G2dInitImagePaletteProxy | Initializes the image palette proxy.
NNS_G2dLoadImage1DMapping | Loads the image data to the hardware, then sets the load result and the image format to the image proxy (exclusively for 1D mapping).
NNS_G2dLoadImage2DMapping | Loads the image data to the hardware, then sets the load result and the image format to the image proxy (exclusively for 2D mapping).
NNS_G2dLoadImageVramTransfer | Loads the image data to the hardware, then sets the load result and the image format to the image proxy (exclusively for VRAM transfer data).
NNS_G2dLoadPalette | Loads the image palette data to the hardware, then sets the load results and the image format to the image palette proxy.
NNS_G2dLoadPaletteEx | Loads the compressed image palette data to the hardware, and sets the load results and the image format to the image palette proxy.
NNS_G2dIsImageReadyToUse | Determines whether or not the image proxy is in a usable state.
NNS_G2dIsImagePaletteReadyToUse | Determines whether or not the image palette proxy is in a usable state.
NNS_G2dSetImageExtPaletteFlag | Sets the usage conditions of the extended palette in the image proxy.
NNS_G2dSetImageLocation | Sets the VRAM address to the image proxy.
NNS_G2dGetImageLocation | Gets the VRAM address from an image proxy.
NNS_G2dSetImagePaletteLocation | Sets the VRAM address to the image palette proxy.
NNS_G2dGetImagePaletteLocation | Gets the VRAM address from an image palette proxy.

### Cell VRAM Transfer State Manager (Overview)

NNS_G2dInitCellTransferStateManager | Initializes the cell VRAM transfer state object manager.
NNS_G2dGetNewCellTransferStateHandle | Gets the handle for the cell VRAM transfer state object.
NNS_G2dFreeCellTransferStateHandle | Returns the handle for the cell VRAM transfer state object.
NNS_G2dSetCellTransferStateRequested | Sets the cell VRAM transfer state object to the VRAM transfer request state.
NNS_G2dUpdateCellTransferStateManager | Updates the cell VRAM transfer state object manager.

### Renderer (Overview)

NNS_G2dInitRenderer | Initializes the renderer entity.
NNS_G2dAddRendererTargetSurface | Registers a render surface to the renderer entity.
NNS_G2dOptimizeRenderer | Optimizes the renderer according to the current renderer state. (Eliminated.)
NNS_G2dBeginRendering | Performs settings for the renderer before drawing.
NNS_G2dBeginRenderingEx | Performs settings for the renderer before drawing. The hint flag information for optimization can be specified.
NNS_G2dEndRendering | Call after the renderer drawing.
NNS_G2dDrawCell | Draws the cell data.
NNS_G2dDrawCellAnimation | Draws the cell animation entity.
NNS_G2dDrawEntity | Draws the entity.
NNS_G2dDrawMultiCell | Draws the multicell entity.
NNS_G2dDrawMultiCellAnimation | Draws the multicell animation.
NNS_G2dGetRendererPaletteTbl | Gets the palette conversion table.
NNS_G2dInitRenderSurface | Initializes the render surface.
NNS_G2dPopMtx | Pops the renderer internal matrix stack.
NNS_G2dPushMtx | Pushes the renderer internal matrix stack.
NNS_G2dResetRendererPaletteTbl | Sets it so that the palette conversion table is not used.
NNS_G2dTranslate | Multiplies the current matrix of the renderer internal matrix stack by the translation matrix.
NNS_G2dSetTrans | Sets the translation matrix to the current matrix of the matrix stack inside the renderer.
NNS_G2dRotZ | Multiplies the Z-axis rotation matrix by the current matrix of the renderer's internal matrix stack.
NNS_G2dScale | Multiplies the scale matrix by the current matrix of the renderer's internal matrix stack.
NNS_G2dSetRendererFlipMode | Sets the renderer to execute a flip drawing.
NNS_G2dSetRendererSurfaceActiveFlag | Sets the active status of the render surface.
NNS_G2dGetRendererSurfaceActiveFlag | Gets the active status of the render surface.
NNS_G2dSetRendererAffineOverwriteMode | Sets the overwrite method for the OBJ's affine transformation mode that is executed by the renderer when using the 2D graphics engine.
NNS_G2dGetRendererAffineOverwriteMode | Gets the overwrite method for the OBJ's affine transformation mode that is executed by the renderer when using the 2D graphics engine.
NNS_G2dSetRendererImageProxy | Sets the image data that the renderer uses.
NNS_G2dSetRendererPaletteTbl | Sets the palette conversion table.
NNS_G2dSetRendererSpriteZoffset | Sets the Z-value added every time the software sprite is drawn.
NNS_G2dSetRendererOverwriteEnable/Disable | Sets the OAM parameter for the renderer to execute overwrite.
NNS_G2dSetRendererOverwrite* | Sets the parameter value used for overwriting the OAM that was drawn by the renderer.
NNS_G2dGetRendererOverwrite* | Gets the parameter value that is used for overwriting the OAM that was drawn by the renderer.

### Renderer Core (Overview)

NNS_G2dInitRndCore | Initializes the renderer core module.
NNS_G2dInitRndCoreSurface | Initializes the renderer core drawing target surface.
NNS_G2dInitRndCore2DMtxCache | Initializes the matrix cache.
NNS_G2dSetRndCore2DMtxCacheMtxParams | Sets matrix to the matrix cache.
NNS_G2dSetRndCoreCurrentMtx2D | Sets the transformation matrix and affine transformation parameter applied to OBJ when drawing with 2D graphics engine.
NNS_G2dSetRndCoreCurrentMtx3D | Sets the affine transformation matrix to the renderer core when drawing with 3D graphics engine.
NNS_G2dIsRndCoreFlip* | Gets the drawing flip state of the renderer core.
NNS_G2dSetRndCoreFlipMode | Sets the drawing flip state of the renderer core.
NNS_G2dSetRndCoreImageProxy | Sets the image proxy which the renderer core module references when drawing.
NNS_G2dSetRndCoreOamRegisterFunc | Sets the function pointer groups used when the renderer core module registers the OAM that represents the drawing OBJ to the external module.
NNS_G2dSetRndCoreSurface | Sets the drawing target surface to the renderer core.
NNS_G2dRndCoreBeginRendering | Starts drawing with renderer core.
NNS_G2dRndCoreEndRendering | Ends the drawing with renderer core.
NNS_G2dRndCoreDrawCell | Draws a cell.
NNS_G2dRndCoreDrawCellFast2D | Draws the cell quickly by using 2D graphics engine (OBJ functionality).
NNS_G2dRndCoreDrawCellVramTransfer | Renders a VRAM transfer format cell.
NNS_G2dSetRndCoreCellCloneSource3D | Precalculates the UV parameters that are references by `NNS_G2dRndCoreDrawCellClone3D` and saves as UV parameter cache.
NNS_G2dRndCoreDrawCellClone3D | Draws a cell that consists of OBJs with the same image data quickly by using software sprite.
NNS_G2dSetRndCore3DSoftSpriteZvalue | Sets the Z-value of the sprite used for software sprite drawing.
NNS_G2dSetRndCoreAffineOverwriteMode | Sets the overwrite operation of affine transformation mode.

### BG (Overview)

NNS_G2dBGSetup | Configures BG and loads the BG data to VRAM.
NNS_G2dBGSetupEx | Configures BG and loads the BG data to VRAM. Compressed palettes and partial characters can be used.
NNS_G2dBGLoadElements | Loads the graphics data used for BG to the appropriate VRAM.
NNS_G2dBGLoadElementsEx | Loads the graphics data used for BG to the appropriate VRAM. Compressed palettes and partial characters can be used.
NNS_G2dBGLoadScreenRect | Loads the specified rectangular box from the screen data.
NNS_G2dSetBGAreaOver | Sets the out-of-area process specification used by `NNS_G2dBGSetup`.
NNS_G2dGetBGAreaOver | Gets the out-of-area process specification used by `NNS_G2dBGSetup`.

### Font (Overview)

NNS_G2dFontInitAuto | Creates the font, automatically determining the correct encoding.
NNS_G2dFontInitUTF8 | Creates a font using UTF8 encoding.
NNS_G2dFontInitUTF16 | Creates a font using UTF16 encoding.
NNS_G2dFontInitShiftJIS | Creates a font using ShiftJIS encoding.
NNS_G2dFontInitCP1252 | Creates a font using Windows code page 1252 encoding.
NNS_G2dFontGetType | Gets the font type.
NNS_G2dFontGetFlags | Gets font properties flag.
NNS_G2dFontGetHeight | Gets the font height.
NNS_G2dFontGetCellHeight | Gets the height of the glyph image storage area.
NNS_G2dFontGetCellWidth | Gets the width of the glyph image storage area.
NNS_G2dFontGetBpp | Gets the bit count per dot of the glyph image.
NNS_G2dFontGetBaselinePos | Gets the baseline position seen from the top of the glyph image.
NNS_G2dFontGetMaxCharWidth | Gets the maximum width of characters included in the font.
NNS_G2dFontGetLineFeed | Gets the line feed width of the font.
NNS_G2dFontSetLineFeed | Sets the line feed width of the font.
NNS_G2dFontGetDefaultCharWidths | Gets the font's default character width information.
NNS_G2dFontSetDefaultCharWidths | Sets the font's default character width information.
NNS_G2dFontGetAlternateGlyphIndex | Gets the alternative character glyph index used with the font.
NNS_G2dFontSetAlternateGlyphIndex | Sets the alternative character glyph index used with the font.
NNS_G2dFontSetAlternateChar | Uses a character code to set the alternative character glyph index used with the font.
NNS_G2dFontGetGlyph | Gets the glyph data from the character code.
NNS_G2dFontGetGlyphImage | Gets the glyph image from the character code.
NNS_G2dFontGetCharWidth | Gets the character width from the character code.
NNS_G2dFontGetCharWidths | Gets the character width information from the character code.
NNS_G2dFontFindGlyphIndex | Finds the glyph index from the character code.
NNS_G2dFontGetGlyphIndex | Gets the glyph index from the character code.
NNS_G2dFontGetGlyphImageFromIndex | Gets the glyph image from the glyph index.
NNS_G2dFontGetGlyphFromIndex | Gets the glyph data from the glyph index.
NNS_G2dFontGetCharWidthFromIndex | Gets the character width from the glyph index.
NNS_G2dFontGetCharWidthsFromIndex | Gets the character width information from the glyph index.
NNS_G2dFontGetStringWidth | Calculates the drawing width for one line of the text string.
NNS_G2dFontGetTextWidth | Calculates the width when the text string is drawn.
NNS_G2dFontGetTextHeight | Calculates the height when the text string is drawn.
NNS_G2dFontGetTextRect | Calculates the width and height when the text string is drawn.
NNSG2dCharWidths | Stores the glyph width information.
NNSG2dGlyph | Stores the data belonging to the glyph.
NNSG2dTextRect | Displays the rectangle size.

### Text Character Drawing (Overview)

NNS_G2dCharCanvasInitForBG | Creates a CharCanvas for BG use.
NNS_G2dCharCanvasInitForOBJ1D | Creates a CharCanvas for use with 1D mapping OBJ.
NNS_G2dCharCanvasInitForOBJ2DRect | Creates a CharCanvas for use as a rectangle area in OBJ character memory.
NNS_G2dCharCanvasCalcCellDataSize1D | Calculates the buffer size passed as the first argument of the `NNS_G2dCharCanvasMakeCell1D` function.
NNS_G2dCharCanvasCalcCellDataSize2DRect | Calculates the buffer size passed as the first argument of the `NNS_G2dCharCanvasMakeCell2DRect` function.
NNS_G2dCharCanvasMakeCell1D | Constructs the cell that displays the CharCanvas that the `NNS_G2dCharCanvasInitForOBJ1D` function initializes.
NNS_G2dCharCanvasMakeCell2DRect | Constructs the cell that displays the CharCanvas that the `NNS_G2dCharCanvasInitForOBJ2DRect` function initializes.
NNS_G2dCharCanvasDrawChar | Draws the character specified by the character code.
NNS_G2dCharCanvasDrawGlyph | Draws the character specified by the glyph.
NNS_G2dCharCanvasClear | Paints the character on the CharCanvas with the specified color.
NNS_G2dCharCanvasClearArea | Paints the specified area on the CharCanvas with the specified color.
NNS_G2dMapScrToCharText | Maps the specified area of the screen to the characters. For text BG use.
NNS_G2dMapScrToCharAffine | Maps the specified area of the screen to the characters. For affine BG use.
NNS_G2dMapScrToChar256x16Pltt | Maps the specified area of the screen to the characters. For use with Affine Extended BG 256x16 palette types.
NNS_G2dCalcRequireOBJ1D | Determines the number of OBJs needed for `NNS_G2dArrangeOBJ1D`.
NNS_G2dCalcRequireOBJ2DRect | Determines the number of OBJs needed for `NNS_G2dArrangeOBJ2DRect`.
NNS_G2dArrangeOBJ1D | Arranges OBJs so that the characters written by the CharCanvas that was initialized with `NNS_G2dCharCanvasInitForOBJ1D` are displayed correctly.
NNS_G2dArrangeOBJ2DRect | Arranges OBJs so that the characters written by the CharCanvas that was initialized with `NNS_G2dCharCanvasInitForOBJ2DRect` are displayed correctly.
`NNS_G2dCalcRequireOBJ*` Calculation Results Table | Displays the number of OBJs required by `NNS_G2dArrangeOBJ*` in a table.

### Text String Drawing (Overview)

NNS_G2dTextCanvasInit | Creates TextCanvas.
NNS_G2dTextCanvasGetCharCanvas | Gets the CharCanvas used for drawing by TextCanvas.
NNS_G2dTextCanvasSetCharCanvas | Sets the CharCanvas used for drawing by TextCanvas.
NNS_G2dTextCanvasGetFont | Gets the font that TextCanvas will use for text-character drawing.
NNS_G2dTextCanvasSetFont | Sets the font used by TextCanvas for text drawing.
NNS_G2dTextCanvasGetHSpace | Gets the character space used by TextCanvas during text string drawing.
NNS_G2dTextCanvasSetHSpace | Sets the character space used by TextCanvas during text string drawing.
NNS_G2dTextCanvasGetVSpace | Gets the line space used by TextCanvas during text string drawing.
NNS_G2dTextCanvasSetVSpace | Sets the line space used by TextCanvas during text string drawing.
NNS_G2dTextCanvasGetStringWidth | Calculates the drawing width for one line of the text string.
NNS_G2dTextCanvasGetTextWidth | Calculates the width when the text string is drawn.
NNS_G2dTextCanvasGetTextHeight | Calculates the height when the text string is drawn.
NNS_G2dTextCanvasGetTextRect | Calculates the width and height when the text string is drawn.
NNS_G2dTextCanvasDrawString | Draws one line of the text string.
NNS_G2dTextCanvasDrawText | Draws the text string.
NNS_G2dTextCanvasDrawTextRect | Draws the text string aligned with the rectangle.
NNS_G2dTextCanvasDrawTaggedText | Draws the text string including text format commands.
NNSG2dTagCallback | Defines the callback function that performs tag processing.
NNSG2dTagCallbackInfo | Structure holding drawing information passed to `NNSG2dTagCallback`.
NNS_G2D_UNICODE | Switches the text type for text string drawing routines.

CONFIDENTIAL