HTML / CSS UI로 네이티브 C ++ 앱을 빌드하는 방법은 무엇입니까?
사용자 인터페이스에 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의 저자입니다.
Chromium Embedded Framework 를 사용 하여 앱에 HTML5 콘텐츠를 포함 할 수 있습니다. Chromium의 힘과 속도, 웹 응용 프로그램을 개발하는 것과 같은 방식으로 GUI 응용 프로그램을 빌드 할 수있는 능력을 얻게됩니다.
Electron 이 다른 답변에 좋은 추가가 될 것이라고 생각 합니다.
NodeJS를 사용하여 Webkit 창을 실행합니다. Electron 자체는 html / css / js 일 뿐이지 만 Electron 앱 내에서 고유하게 컴파일 된 사용자 지정 C ++ 코드를 포함하여 모든 노드 모듈을 사용할 수 있습니다. C ++ 코드를 포함 할 수있는 모듈은 node-gyp입니다.
그러나이 워크 플로에는 다른 답변보다 약간 더 많은 JS가 포함될 수 있습니다.
내가 가장 좋아하는 텍스트 편집기 인 Atom 은 Electron으로 제작되었습니다.
2019 년 부터는
C ++에서 사용할 수있는 오픈 소스가 아닌 Ultralight HTML UI 엔진을 확인하는 것이 좋습니다 . OpenGL 및 DirectX 렌더링이 지원됩니다.
Ultralight는 C ++ 앱에 HTML UI를 통합하는 더 가볍고 빠른 옵션입니다.
불행히도 Awesomium을 삭제하기로 결정한 Awesomium의 제작자가 만들었습니다. 이것이 우리가 지금 얻은 것입니다.
가볍기보다 더 무거운 것을 필요로한다면 CEF를 살펴 보는 것이 좋습니다 . 매우 강력한 (그리고 오픈 소스) 도구입니다.
WT 또는 CppCMS 를 사용 하여 C ++를 HTML 및 CSS로 파싱 한 다음 Chromium 을 사용 하여 프로젝트를 네이티브 앱으로 변환 할 수 있습니다. 그러나 내가 당신이라면 클라우드 기반 앱이 점점 인기를 얻고 있기 때문에 웹 앱으로 유지하겠습니다.
참고 URL : https://stackoverflow.com/questions/17517249/how-to-build-native-c-apps-with-html-css-ui
'Program Tip' 카테고리의 다른 글
JavaFX 2.0에서 공통 대화 상자 (오류, 경고, 확인)를 만들고 표시하는 방법은 무엇입니까? (0) | 2020.11.06 |
---|---|
C ++ : 레지스터에 피연산자 하나를 유지하여 놀라운 속도 향상 (0) | 2020.11.05 |
표면과 질감의 차이 (SDL / 일반) (0) | 2020.11.05 |
Docker Compose 버전 3에서 메모리 및 CPU 제한을 지정하는 방법 (0) | 2020.11.05 |
Application.Run ()과 Form.ShowDialog ()의 차이점은 무엇입니까? (0) | 2020.11.05 |