GTK 4.0에는 그래픽 인터페이스, 데이터 전송 등을 수행하는 기능이 개선되었습니다.

며칠 전 GTK 4.0의 새 버전 출시가 발표되었습니다. 몇 달 동안 개발 중이었고 프로젝트의 새로운 안정적인 분기가됩니다. 이 새 버전은 매우 흥미로운 기능을 제공하며, 그 중 미디어 재생의 개선 사항을 강조 할 수 있습니다.

GTK는 그래픽 인터페이스를 만들기위한 소프트웨어 라이브러리 세트입니다.GTK는 원래 김프 이미지 처리 소프트웨어의 요구를 위해 개발되었습니다. 현재 그 범위는 더 이상 김프에만 국한되지 않고 다른 프로젝트에서 사용됩니다. 예 : GTK GNU 네트워크 객체 모델 환경의 핵심입니다. (GNOME), Microsoft Windows 및 Apple macOS 용 애플리케이션뿐 아니라 다른 Linux 환경 용 애플리케이션을 작성하는데도 사용할 수 있습니다.

“GTK 4.0은 소규모 전담 개발자 팀의 노력의 결과입니다. 통계를 살펴볼 별도의 기사가 있지만, 요약 요약은 3.89.1 년 2016 월 버전 18,000 이후 20 개가 넘는 커밋을 추가하고 XNUMX 개 이상의 개발 릴리스를 만들었다는 것입니다.

“이 작업에 참여한 모든 사람, 특히 Benjamin, Emmanuele, Timm, Carlos, Jonas 및 Christian에게 축하와 큰 감사를 표합니다! «

GTK 4.0의 새 버전 정보

GTK 4.0은 새로운 위젯과 기존 요소의 변경 사항을 도입했습니다. 미디어 재생에 대한 내장 지원, GPU 가속 개선 (예 : 작업) 새로운 Vulkan 렌더링 엔진 및 macOS와의 더 나은 호환성. 또한 데이터 전송 개선, 재 설계된 셰이더, GPU 가속 스크롤, Vulkan 작업을 넘어선 OpenGL 렌더링 개선, HTMl5 Broadway에서 작업 복원, 더 나은 Windows 지원 등을 확인할 수 있습니다.

몇 가지 사항을 좀 더 자세히 살펴 보겠습니다.

GT4의 미디어 관리

  • GTK 4를 사용하면 GTK 애플리케이션에서 애니메이션을 더 쉽게 표시 할 수 있습니다. 프로그래밍 방식의 애니메이션, webm 아카이브 또는 라이브 방송입니다.
  • GTK 4는 CSS Houdini의 노력에서 영감을받은 GdkPaintable이라는 새로운 API를 제공합니다. 매우 유연합니다 (그리는 것은 GdkPaintable이 될 수 있습니다). 콘텐츠의 크기를 조정 (예 : svg)하거나 시간에 따라 변경 (예 : webm) 할 수 있습니다.
  • 좀 더 특별한 요구가 있다면, GtkSnapshot에서 캡처 할 수있는 모든 것은 gtk_snapshot_to_paintable ()을 사용하여 드로잉으로 변환 할 수 있습니다. 페인팅 할 개체를 그리는 사용자 지정 위젯을 만드는 경우 매우 간단합니다. gdk_paintable_snapshot ()을 호출하면됩니다.
  • GtkVideo 위젯을 사용하여 멀티미디어 제어를 할 수 있습니다.

GTK4에서 데이터 전송

기존의 데이터 전송 방법 데스크톱 응용 프로그램간에 사용자가 시작한 것은 클립 보드 또는 끌어서 놓기입니다. GTK +는 이러한 방법을 지원하지만 GTK3까지 이러한 유형의 데이터 전송을위한 툴킷의 API는 해당 X11 API의 정교하게 위장 된 사본이었습니다. 전체 GDK API가 X11에서 모델링 되었기 때문에 이것은 그리 놀라운 일이 아닙니다. 불행히도 구현에는 증분 전송 및 문자열 형식 변환과 같은 결과가 포함됩니다.

GTK4의 경우 팀은이 접근 방식을 포기하기로 결정했습니다., 현대화를 선택합니다. 다음은 새로운 접근 방식의 개념입니다.

“응용 프로그램에서 보내려는 데이터가 문자열이 아니라면 GFile, GdkTexture 또는 GdkRGBA와 같은 객체 일 수 있습니다. 수신자 측 애플리케이션은 GTK 또는 GLib를 사용하지 않을 수 있으므로 이러한 유형을 인식하지 못합니다. 그렇게하더라도 한 프로세스에서 다른 프로세스로 개체를 한 조각으로 이동할 수있는 방법은 없습니다.

내부에서 데이터 전송은 바이트 스트림을 읽어 소스 응용 프로그램과 대상 응용 프로그램에서 파일 설명자를 보내는 방식으로 작동합니다. 클립 보드 및 DND에 대한 프로토콜은 text / uri-list, image / png 또는 application / x-color와 같은 MIME 유형을 사용하여 바이트 스트림의 형식을 식별합니다.

객체 전송에는 양방향 호환 데이터 형식 협상, 소스 측의 객체를 해당 형식의 바이트 스트림으로 직렬화, 데이터 전송 및 대상 측의 객체 역 직렬화가 포함됩니다. «

또한, GTK4에는 새로운 API가 제공됩니다..

“이러한 유형을 처리하기 위해 도입 한 첫 번째 API는 GdkContentFormats 객체입니다. GTypes 또는 MIME 형식의 목록을 포함 할 수 있습니다. 우리는 GdkContentFormats 객체를 사용하여 애플리케이션이 데이터를 제공 할 수있는 형식과 애플리케이션이 데이터를받을 수있는 형식을 설명합니다.

출처 : https://blog.gtk.org/


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.