blog

# ClipboardToBase64 - 3. 마크다운에 맞게 태그 변환 본문

Python/ClipboardToBase64

# ClipboardToBase64 - 3. 마크다운에 맞게 태그 변환

ismyresume 2022. 1. 11. 04:28

마크다운에 맞게 태그 변환

  1. 클립보드에 있는 걸 가져온다.
  2. 가져온 자료를 Base64 형식으로 인코딩한다.
  3. 마크다운에 맞게 태그를 변환한다.
  4. 클립보드로 넣어준다.

마크다운 이미지 태그는 아래와 같은 형식으로 이루어져 있다.

![Hello World](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAAAUCAAAAAAVAxSkAAABrUlEQVQ4y+3TPUvDQBgH8OdDOGa+oUMgk2MpdHIIgpSUiqC0OKirgxYX8QVFRQRpBRF8KShqLbgIYkUEteCgFVuqUEVxEIkvJFhae3m8S2KbSkcFBw9yHP88+eXucgH8kQZ/jSm4VDaIy9RKCpKac9NKgU4uEJNwhHhK3qvPBVO8rxRWmFXPF+NSM1KVMbwriAMwhDgVcrxeMZm85GR0PhvGJAAmyozJsbsxgNEir4iEjIK0SYqGd8sOR3rJAGN2BCEkOxhxMhpd8Mk0CXtZacxi1hr20mI/rzgnxayoidevcGuHXTC/q6QuYSMt1jC+gBIiMg12v2vb5NlklChiWnhmFZpwvxDGzuUzV8kOg+N8UUvNBp64vy9q3UN7gDXhwWLY2nMC3zRDibfsY7wjEkY79CdMZhrxSqqzxf4ZRPXwzWJirMicDa5KwiPeARygHXKNMQHEy3rMopDR20XNZGbJzUtrwDC/KshlLDWyqdmhxZzCsdYmf2fWZPoxCEDyfIvdtNQH0PRkH6Q51g8rFO3Qzxh2LbItcDCOpmuOsV7ntNaERe3v/lP/zO8yn4N+yNPrekmPAAAAAElFTkSuQmCC)

그러니 아래와 같은 문자열을 만들어 주기 위한 함수를 작성한다.

![이미지파일이름](data:image/png;base64,인코딩한 내용)

우선 테스트용 이미지 파일을 base64로 인코딩 한 것을 마크다운 태그로 만들어서 텍스트 파일에 저장하고, 테스트 함수를 하나 만든다.

![animal.png]](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/... 생략)
class TestConvertImageTag(TestCase):
    def setUp(self) -> None:
        self.base64_image = pngimagefile_to_base64(test_image_file)
        with open(test_markdown_tag_file, 'rb') as text:
            self.base64_text = text.read()

    def test_convert_image_tag(self):
        image_tag = convert_markdown_image_tag(test_image_file, self.base64_image)
        self.assertEqual(len(image_tag), len(self.base64_text))
def convert_markdown_image_tag(filepath, base64_encoded):
    filepath = filepath.replace('image/', '')
    image_tag = '![' + filepath + '](' + 'data:image/png;base64,' + base64_encoded + ')'
    return image_tag

이제 마크다운 이미지 태그도 생성이 된다.

Comments