⚙️ Markdown to HTML 변환 라이브러리 요약 (3가지 언어)

1. PHP: Parsedown (가장 안정적인 표준)

1.1 설치 (Composer 사용)

composer require erusev/parsedown

1.2 사용 코드

<?php
// Composer를 사용한 경우, 이 파일을 포함해야 합니다.
require 'vendor/autoload.php'; 

/**
 * Parsedown을 사용하여 Markdown을 HTML로 변환합니다.
 * @param string $md_text 변환할 마크다운 텍스트
 * @return string 변환된 HTML 문자열
 */
function convert_markdown_to_html(string $md_text): string
{
    // Parsedown 인스턴스 생성
    $Parsedown = new Parsedown();

    // Parsedown::text() 함수로 변환 실행
    return $Parsedown->text($md_text); 
}
?>

2. Python: python-markdown (표준 라이브러리)

2.1 설치 (pip)

pip install markdown

2.2 사용 코드

import markdown

def convert_python_markdown(md_text):
    # 'extra' 확장을 사용하여 GFM 문법(표, 취소선, 목록 등)을 지원합니다.
    # 필요한 경우, 'codehilite' 등을 추가하여 코드 블록 문법 강조 기능을 사용할 수 있습니다.
    html_output = markdown.markdown(
        md_text, 
        extensions=['extra'] 
    )
    return html_output

3. JavaScript/Next.js: remark-html (Node.js/SSR 표준)

3.1 설치 (npm)

npm install remark remark-html

3.2 사용 코드 (JavaScript/Node.js)

import { remark } from 'remark';
import html from 'remark-html';

/**
 * remark 라이브러리를 사용하여 Markdown을 HTML 문자열로 변환합니다.
 * @param {string} md_text 변환할 마크다운 텍스트
 * @returns {Promise<string>} 변환된 HTML 문자열
 */
async function markdownToHtml(md_text) {
  const result = await remark()
    // remark-html 플러그인을 사용하여 HTML로 렌더링하도록 지정
    .use(html, { sanitize: false }) 
    .process(md_text);

  return result.toString();
}

// Next.js 환경에서는 이 함수를 getStaticProps 등의 서버 컴포넌트에서 호출해야 SEO에 유리합니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤