아니요

아니요

구성에 어려움을 겪고 있습니다 xrdp. 자주 권장되는 "scarygliders" 도구는 ls_background_image소스에 언급되지 않은 것 같습니다. xrdp.ini(5)이 옵션은 언급조차 되지 않으므로 (문자 그대로) 미지의 영역입니다.

아래에 회사 로고를 배치하고 싶습니다.왼쪽배경에. 기본 xrdp 동작이 낮습니다.옳은.

어떤 단서도 대단히 감사하겠습니다!

답변1

아니요

배경화면 이미지를 찾을 수 없습니다 ls_background.

나는 출처를 찾을 만큼 현명했습니다. xrdp/xrdp_login_wnd.c구성 키에 의해 트리거되는 이미지 로드를 위한 간단한 절이 있습니다 .

        /* Load the background image. */
        /* If no file is specified no default image will be loaded. */
        /* We only load the image if bpp > 8 */
        if (globals->ls_background_image[0] != 0 && self->screen->bpp > 8)
        {
            char fileName[256] ;
            but = xrdp_bitmap_create(4, 4, self->screen->bpp, WND_TYPE_IMAGE, self);
            if (globals->ls_background_image[0] == '/')
            {
                g_snprintf(fileName, 255, "%s", globals->ls_background_image);
            }
            else
            {
                g_snprintf(fileName, 255, "%s/%s",
                           XRDP_SHARE_PATH, globals->ls_background_image);
            }
            log_message(LOG_LEVEL_DEBUG, "We try to load the following background file: %s", fileName);
            xrdp_bitmap_load(but, fileName, self->palette);
            but->parent = self->screen;
            but->owner = self->screen;
            but->left = self->screen->width - but->width;
            but->top = self->screen->height - but->height;
            list_add_item(self->screen->child_list, (long)but);
        }

마지막으로 이미지를 오른쪽 하단에 배치하도록 매우 명확하게 하드코딩되었습니다. 수평 위치는 화면 너비에서 이미지 너비를 뺀 값이고, 수직 위치는 이미지 높이에서 화면 높이를 뺀 값입니다. 사용된 용어반대쪽 모퉁이를 뜻함기원, 그러면 일반적으로 이미지 범위는 항상 화면 범위 내에 있게 됩니다. 원점이 왼쪽 위 모서리에 있으므로 이미지는 항상 반대쪽 오른쪽 아래 모서리에 나타납니다.

이것은 내 질문에 대한 답변이었습니다(그리고 "중력" 패치를 제출하도록 권장했습니다).

관련 정보