Sample code for 30+ languages & platforms
SQL Server

Markdown to HTML - Full Document, ChatGPT Theme

See more Markdown Examples

Demonstrates how to convert a complete Markdown document to HTML using the pre-defined "ChatGPT" theme. The "ChatGPT" theme produces a full HTML document including:

  • Document Type Declaration (e.g. <!DOCTYPE html>)
  • Root Element (e.g., <html> )
  • Head Section
  • Enclosing <body> and </body> elements
  • Closing </html> element

The Head Section includes style definitions that display the HTML in a style similar to the ChatGPT app. (How did Chilkat do it? We simply asked ChatGPT to generate CSS that is similar in style to the HTML displayed in the ChatGPT app.)

Chilkat SQL Server Downloads

SQL Server
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    -- Important: Do not use nvarchar(max).  See the warning about using nvarchar(max).
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @success int
    SELECT @success = 0

    -- Select the pre-defined "ChatGPT" style.
    DECLARE @options int
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @options OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    EXEC sp_OAMethod @options, 'UpdateString', @success OUT, 'theme', 'ChatGPT'

    -- We can also set an option for the max-width, which by default is "72ch".
    EXEC sp_OAMethod @options, 'UpdateString', @success OUT, 'ChatGPT.max-width', '120ch'

    DECLARE @sbMarkdown int
    EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbMarkdown OUT

    DECLARE @sbHtml int
    EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbHtml OUT

    EXEC sp_OAMethod @sbMarkdown, 'LoadFile', @success OUT, 'qa_data/markdown/test1.md', 'utf-8'
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @sbMarkdown, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @options
        EXEC @hr = sp_OADestroy @sbMarkdown
        EXEC @hr = sp_OADestroy @sbHtml
        RETURN
      END

    EXEC sp_OAMethod @sbMarkdown, 'MarkdownToHtml', @success OUT, @options, @sbHtml
    EXEC sp_OAMethod @sbHtml, 'ToCRLF', @success OUT

    EXEC sp_OAMethod @sbHtml, 'GetAsString', @sTmp0 OUT
    PRINT @sTmp0

    -- The sample markdown input for this example is identical to the one at Markdown to HTML - Full Document, Raw, where you can view it.

    -- Sample HTML output as viewed in a browser:
    -- 
    -- To add code syntax highlighting, see the example at Markdown to HTML - Full Document, ChatGPT Theme with Code Syntax Highlighting

    -- image

    EXEC @hr = sp_OADestroy @options
    EXEC @hr = sp_OADestroy @sbMarkdown
    EXEC @hr = sp_OADestroy @sbHtml


END
GO