테스트 사이트 - 개발 중인 베타 버전입니다

pdf 출력 관련 질문입니다.ㅠㅠ 채택완료

fefe3f3 6년 전 조회 2,072

fpdf를 쓰다가 html 출력이 어려워서 조언을 듣고 tcpdf로 바꿨는데요~

 

html은 잘 나오는데 table이 제대로 안나와가지고 ㅠㅠ

 

아래는 pdf출력시 나오는 이미지 입니다

 

 

 

입력될때 width 값이 들어가있어서 그 값 그대로 나오는 것 같더라구요.

 

 

아래는 스마트에디터로 표를 넣고 html텝으로 변환해서 복사한 표 소스입니다.

 

6. 특이사항 : 없음

 http://vdware.vdream.co.kr/data/editor/1907/2322dac06427506395649b65b22fc12b_1562049678_8252.png" title="2322dac06427506395649b65b22fc12b_1562049678_8252.png" alt="2322dac06427506395649b65b22fc12b_1562049678_8252.png"> 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

보시는것처럼 style로 width값이 박혀있는데..

그래서 php 로 style을 제거하는 정규식을 써서 style을 제거를 하니까 표 자체가 안나오더라구요 ㅋㅋㅋ ㅠㅠ

 

에디터를 다른걸쓰니까 제각각으로 나오긴하던데..

에디터를 바꿔달자니 일이 좀 많고..

 

요약

1. 네이버스마트에디터로 작성한 표가 tcpdf로 출력시 깨집니다.ㅜㅜ

2. 어떤 방향으로 접근해봐야 할지 조언좀 부탁드립니다 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
Rido
6년 전

https://codeday.me/ko/qa/20190322/125725.html">https://codeday.me/ko/qa/20190322/125725.html

 

jquery를 활용해서 해당 td를 반복시키고 반복된 값에서 해당 width값을 빼주시면 될거 같은데요

 

</p>

<pre>
<code>$('td').each(function() {
    $(this).attr("width",'');
});
</code>
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

f
fefe3f3
6년 전
감사합니다 ㅎㅎ말씀해주신 것에 영감을 얻어 해결했습니다~

$row['wr_content'] = preg_replace('%<table[^>]*?style\s*=\s*"[^"]*"[^>]*>(.*?)</table>%si', '<table>$1</table>', $row['wr_content']);
$row['wr_content'] = preg_replace('%<td[^>]*?style\s*=\s*"[^"]*"[^>]*>(.*?)</td>%si', '<td border="1">$1</td>', $row['wr_content']);
$row['wr_content'] = "<style>td{text-align:center;}</style>".$row['wr_content'];

정규식으로 table와 td의 style을 싹다 제거하고 다시 재선언해줬습니다 ㅎㅎ

댓글을 작성하려면 로그인이 필요합니다.

하틴
6년 전

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인