백문보(白文寶)는 자(字)가 화부(和父)이고 직산현(稷山縣) 사람이다. 충숙왕(忠肅王) 때 과거에 급제하여 춘추검열(春秋檢閱)에 보임되었고 여러 번 옮겨 우상시(右常侍)가 되었다. 공민왕(恭愍王) 초에 전리판서(典理判書)로 옮기게 되자 글을 올려 10과(科)를 설치하여 선비를 선발할 것을 요청하였으며, 밀직제학(密直提學)에 임명되었다.
전란의 여파로 사국(史局)에 소장된 사고(史藁)와 실록(實錄)이 겨우 몇 상자만 남게 되니 왕이 청주(淸州)에 있을 때 공봉(供奉) 곽추(郭樞)를 보내어 해인사(海印寺)로 옮겨 두도록 하였다. 그때 백문보가 개경에 머물고 있었는데 김희조(金希祖)와 함께 의논하여 말하기를, “지금 도적의 난리가 겨우 평정되었으니 갑자기 국사(國史)를 옮겨 사람들의 눈과 귀를 놀라게 할 수 없다.”라 하고 곽추를 머물게 하여 다음 명령을 기다리게 하였다.
후에 상소하여 일을 말하기를, “국가에서 대대로 동방의 사직(社稷)을 지켜 문물예악(文物禮樂)에 옛 유풍(遺風)이 남아있게 되었습니다. 뜻밖에 도적의 환란이 여러 번 일어나 홍건적(紅巾賊)이 개경을 함락시키고 임금의 수레가 남쪽으로 순행하였으니, 이를 말하면 마음이 아프다고 하겠습니다. 지금은 난리를 당한 뒤라서 민(民)이 의지하여 살지를 못하니 마땅히 관대한 은혜를 내려 살아남은 사람들에게 베풀어야 합니다. 또 하늘의 운수는 순환하여 한번 돌면 다시 시작하니 700년이 1소원(小元)이 되고 3,600년이 쌓여 1대주원(大周元)이 됩니다. 이는 삼황(三皇)과 오제(五帝), 왕업(王業)과 패업(覇業), 치란(治亂)과 흥망성쇠(興亡盛衰)의 주기입니다.
우리 동방은 단군(檀君)으로부터 지금까지 이미 3,600년이 경과하여 주원(周元)을 맞이하게 되었으니, 마땅히 요(堯)·순(舜)과 육경(六經)의 도(道)를 따르고 공리(功利)와 화복(禍福)의 설(說)을 행하지 말아야 합니다. 이와 같이 한다면 하늘이 크게 도와 음양(陰陽)이 시기에 따라 순조롭게 되고 나라의 복이 연장될 것입니다. 바라건대 예종(睿宗)께서 청연각(淸閣閣)과 보문각(寶文閣)을 설치한 옛 일을 생각하시어 천인(天人)과 도덕(道德)의 설(說)을 강구하여 성학(聖學)을 밝히십시오. 또 시골구석이 모두 올바르게 되어야 국가가 다스려질 수 있으므로 당(唐)은 향촌에 대중정관(大中正官)을 두었고 우리나라도 초기에 역시 사심관(事審官)을 두었습니다. 이제 마땅히 크고 작은 주군(州郡)에 다시 사심관을 두어서 비위(非違)를 규찰하게 하십시오. 신라(新羅)에서 처음 불법(佛法)을 숭상한 이래로 민이 출가하기를 좋아하여 향리(鄕吏)와 역리(驛吏)들이 모두 요역(徭役)과 부세(賦稅)를 피하게 되었으며, 사대부(士大夫)들은 아들 1명만 있어도 역시 모두 머리를 깎게 하였습니다. 지금부터는 관청에서 도첩(度牒)을 발급받아야만 비로소 출가할 수 있게 하고, 3정(丁)이 되지 않은 집은 모두 허락하지 마십시오.”라고 하였다.
처음에 왕이 개경으로 돌아오자 임시로 종묘(宗廟)의 신주(神主)를 미타사(彌寺)에 안치하고 환안도감(還安都監)을 설치하였는데, 백문보와 평양백(平陽伯) 김경직(金敬直)이 그 일을 주관하였다. 〈그러나〉 한 달이 지나도록 일이 지체되어 왕이 노하여 독촉하니 참고할만한 전적(典籍)이 없다고 대답하였다. 사관(史官) 남영신(南永伸)을 보내어 해인사의 사고(史庫)에 가서 「삼례도(三禮圖)」와 두우(杜祐)의 『통전(通典)』을 가지고 오게 하였다. 백문보가 『통전』을 모방하고 또 침원서(寢園署)의 늙은 급사(給事)인 박충(朴忠)의 말을 참작하여 의례(儀禮)의 제도로 삼았는데, 박충은 글자를 알지 못하여 억측에서 나온 것이 많았다.
신우(辛禑)가 대군(大君)이 되어 공부하게 되자 왕이 명령하여 백문보 및 전녹생(田祿生)과 정추(鄭樞)를 스승으로 삼았다. 벼슬이 정당문학(政堂文學)에 이르렀으며 직산군(稷山君)으로 봉해졌다. 〈공민왕〉 23년(1374)에 죽으니 시호를 충간(忠簡)이라 하였다. 〈백문보는〉 성품이 청렴하고 정직하였으며 이단(異端)에 현혹되지 않고 글을 잘 지었다. 아들은 없다.