factbot / pdf_viewer_component.py
JUNGU's picture
Upload 18 files
aa8e01a verified
raw
history blame
771 Bytes
import streamlit.components.v1 as components
import os
import base64
_RELEASE = False
if not _RELEASE:
_component_func = components.declare_component(
"pdf_viewer",
url="http://localhost:3000",
)
else:
parent_dir = os.path.dirname(os.path.abspath(__file__))
build_dir = os.path.join(parent_dir, "frontend/build")
_component_func = components.declare_component("pdf_viewer", path=build_dir)
def pdf_viewer(pdf_base64, initial_page=1, key=None):
component_value = _component_func(pdfBase64=pdf_base64, initialPage=initial_page, key=key, default=initial_page)
return component_value
def load_pdf_as_base64(file_path):
with open(file_path, "rb") as pdf_file:
return base64.b64encode(pdf_file.read()).decode("utf-8")