사용자 인터페이스에 HTML과 CSS를 사용하면서 C ++ 프로그램을 개발할 수 있습니까? Webkit 컨테이너를 사용하여 Javascript로 프로그래밍하는 것에 대해 알고 있지만 C ++ 개발에 정말 관심이 있습니다.
Windows에서 개발할 때 C # WPF가 마음에 들었지만 이제는 Linux로 옮겨 인터페이스에 대한 마크 업을 사용하는 데 좋은 도구를 찾지 못했습니다. 이를 위해 매우 가볍고 사용하기 쉬운 HTML과 CSS를 C ++ 코드와 WPF와 같은 코드와 함께 사용하고 싶습니다.
아, 한 가지 더 : 저는 웹이 아닌 데스크톱 개발을 찾고 있습니다.
답변
예, 가능합니다. 원하는 것은 C ++ 웹 프레임 워크입니다. 빠른 웹 애플리케이션 개발을 목표로하는 무료 고성능 웹 개발 프레임 워크 (CMS가 아님) 인 CppCMS 부터 살펴볼 수 있습니다.
편집 : 질문이 명확 해지면 Awesomium 이 귀하의 요구에 적합 하다고 생각 합니다.
WebKit (또는 Gecko)를 임베딩하여 동일한 기능을 얻을 수 있지만 내가 아는 한 Awesomium이이면에서하는 일입니다.
대안은 게임 애플리케이션 용으로 설계된 C ++ 인터페이스 미들웨어 패키지 인 librocket 입니다. 설명에서 짐작할 수 있듯이 게임이나 실시간 응용 프로그램에 적합합니다.
답변
Sciter 는 C / C ++ API가 포함 된 임베드 가능한 HTML / CSS 엔진입니다. 소형 및 다중 플랫폼.
Sciter는 WPF 와 동일한 기능 세트를 가지고 있지만 XAML 대신 HTML / CSS를 사용하고 네이티브 API를 사용합니다.
즉시 사용 가능한 기능 :
- HTML, CSS, SVG, aPNG (애니메이션 PNG), 이미지 스프라이트,
<plaintext>
-구문 강조 기능이있는 편집기,<htmlarea>
-WYSIWYG HTML 편집기,<frame type=pager>
-인쇄 미리보기 및 HTML / CSS 인쇄,- 애니메이션,
- HTTP 클라이언트, REST / JSON 클라이언트, WebSocket ‘s, DataSockets,
- 기타
동일한 소스의 Windows, MacOS 및 Linux에서 실행되는 Sciter UI가있는 동일한 애플리케이션 :
면책 조항 : 저는 Sciter Engine의 저자입니다.
답변
Electron 이 다른 답변에 좋은 추가가 될 것이라고 생각 합니다.
NodeJS를 사용하여 Webkit 창을 실행합니다. Electron 자체는 html / css / js 일 뿐이지 만 Electron 앱 내에서 고유하게 컴파일 된 사용자 지정 C ++ 코드를 포함하여 모든 노드 모듈을 사용할 수 있습니다. C ++ 코드를 포함 할 수있는 모듈은 node-gyp입니다.
그러나이 워크 플로에는 다른 답변보다 약간 더 많은 JS가 포함될 수 있습니다.
제가 가장 좋아하는 텍스트 편집기 인 Atom 은 Electron으로 제작되었습니다.
답변
Chromium Embedded Framework 를 사용 하여 앱에 HTML5 콘텐츠를 포함 할 수 있습니다. Chromium의 힘과 속도, 웹 애플리케이션을 개발하는 것과 동일한 방식으로 GUI 앱을 빌드 할 수있는 능력을 얻게됩니다.
답변
2019 년 부터는
C ++에서 사용할 수있는 오픈 소스가 아닌 Ultralight HTML UI 엔진을 확인하는 것이 좋습니다 . OpenGL 및 DirectX 렌더링이 지원됩니다.
Ultralight는 C ++ 앱에 HTML UI를 통합하는 더 가볍고 빠른 옵션입니다.
불행히도 Awesomium을 삭제하기로 결정한 Awesomium의 제작자가 만들었습니다. 이것이 우리가 지금 얻은 것입니다.
가볍기보다 더 무거운 것을 필요로한다면 CEF를 살펴 보는 것이 좋습니다 . 매우 강력한 (그리고 오픈 소스) 도구입니다.