2014-07-26 6 views
0

웹 페이지 (HTML)를 다운로드하고 구문 분석 한 다음 자체 HTML을 생성 한 다음 QWebPage과 함께 표시되는 Qt 프로그램이 있습니다. 때로는 다운로드 한 HTML에 태그가 포함되어 있으며 src 속성에 전체 URL이 포함되어 있으면 제대로 작동합니다. 그러나 일부 시간은 IMG 태그는 같은 상대 경로를 사용할 수 있습니다 :특정 URL을 사용하여 HTML 리소스를 다운로드하도록 WebPage 가져 오기

<IMG SRC="images/foo.png" /> 

내가 구문 분석있을 때 내 첫번째 생각은 그냥 내 결과 HTML에 그것을 압정하는 것이었다 SRC 앞에 추가해야 URL을 알고 있기 때문에 . 그러나 이것은 내가 예상했던 것보다 어렵다는 것을 증명하고 있으며 더 나은 방법이 있는지 궁금합니다.

"상대 경로에이 URL 사용"이라고 말할 수있는 QWebPage와 관련된 메커니즘이나 속성이 있다면? 아니면 누군가 내가 원하는 것을 성취 할 수있는 더 좋은 방법을 제안 할 수 있습니까?

감사합니다.

+0

질문에서 상대 경로가 해결되지 않는 이유는 분명하지 않습니다. 문제를 설명하는 샘플 코드를 제공하십시오. – MrEricSir

+0

QDir :: setCurrent()를 .html 파일의 폴더로 호출해볼 수 있습니까? 어쩌면 상대 경로를 해결하는 데 도움이 될 수 있습니다. 나는 확실하지 않다. – ch0kee

+0

@MrEricSir QNetworkManager (et al)를 사용하여 원하는 페이지의 HTML을 가져 오지만 실제로 표시되는 HTML은 아닙니다. 일부 구문 분석/처리/조작 및 내 자신의 HTML 생성. 그런 다음 간단히 QWebView :: setHtml을 호출합니다. – Addy

답변

0

의견에서 귀하는 QWebView::setHtml()을 사용하고 있다고 말씀하셨습니다. 이 메서드의 두 번째 선택적 매개 변수는 상대 경로를 확인하는 데 사용할 URL을 설정합니다. 문서에 따라 :

문서에서 참조되는 스타일 시트 나 이미지와 같은 외부 개체는 baseUrl에 상대적으로 배치됩니다.

이 매개 변수를 여기에 모두 설정해야합니다.